Bug Nedir? Bug Nasıl Düzeltilir? Bug Nasıl Temizlenir?
Bilgisayar yazılımlarındaki hatalara “bug” diyoruz.
Türkçesi “böcek” olan bug teriminin ortaya çıkış hikayesi çok ilginç .
1947 yılında, IBM’in ürettiği ikinci bilgisayar olan Mark 2, Harvard Üniversitesi bilgisayar laboratuvarında çalıştırılıyordu. Bir sabah araştırma ekibi laboratuvara geldiğinde bilgisayarın çalışmadığını görmüş ve sebebi tespit etmeye koyulmuş. O zamanki bilgisayarlar, kocaman bir salon büyüklüğündeymiş (fotoğrafta görüldüğü gibi) ve mekanik parçaları varmış. Yani kollar, çarklar, delikli parçalar gibi. Bu parçalardan birinin arasına bir böcek sıkıştığını görmüşler ve böceği oradan çıkardıklarında bilgisayar çalışmaya başlamış.
Ekibin başında dünyanın ilk yazılımcılarından; bilim insanı, tümamiral Grace Hopper (fotoğraftaki kadın) varmış ve dünyanın ilk “bug”ını bulan ve kayıtlara geçiren kişi olarak tarihe geçmiş. Yazılımlardaki düzeltmelere de bundan dolayı “debugging” yani böcek temizleme deniyor. Bu arada Edison’un 1800’lü yıllarda bazı tasarımlarındaki hataları “bug” olarak tanımladığı da kayıtlara geçmiş ama bilgisayar özelinde bu ilk kez 1947 yılında tanımlanmış. 200 sene önce yaşamış olan; dünyanın ilk programcısı Ada Lovelace gibi Grace Hopper da (Queen of Codes lakaplı) bilim ve teknoloji tarihinde iz bırakan kadınlardan biri olmuş.
Bug Nedir?
Bug nedir peki? (“Bag” diye okunur!)
Bug bilgisayar yazılımlarında yapılan/yer alankodlama hatalarının oluşturduğu sorunlara denir. Yani Bug’lar hatalardır. Örneğin aşağıda FIFA 08’deki bir Bug’dan yani hatadan bahsedilmektedir fakat bu bug’ınhile amaçlı kullanılmasına exploiting yani kötüye kullanma denir. Dahagenel anlamda ise “cheat” yani hile yapmakta denilebilir.
Bug’dan nasıl kurtulabilirsiniz:
Bug’lardan kurtulmanın yolu oyunu güncellemekten geçer. Güncellenen oyun ana executable dosyasını değiştirdiği için eski EXE içindebulunan sorunlu kod yenisi ile değiştirilir. Tabii ki çoğunluk korsan kullandığı için oyunları güncellemek yerine (Oyun güncellerken ana EXE’yi kontrol eder ve değiştirilmiş yani Crack’lenmiş ise güncellemez). EA’a ya da diğer geliştiriclere küfüretmeyi daha çok tercih eder. Ya da suçu işletim sistemine atarlar.
Halbuki orjinal oyuna sahip kişiler hatayla ilgili EAforumlarında konu açarak EA’nin patch çıkarmasını sağlarlar. Tabii kikorsan kullananlarda bunu yapabilir ama işte bu kullanıcınınhaklarından haberdar olması ve orjinal oyun almanın insana verdiğidestek alma bilinci ile ilgili bir şey.
Örneğin dün,Battlefiled için 1.92 GB boyutlarında bir yama çıktı. Peki bu yamanasıl çıktı? Orjinal BF2 oyuncularının forumlarda birktirdikleri Bugraporları dahilinde.
Onun için oyunlardaki hatalarıorda burda tartışmanın tamamen BOŞ bir uğraş olduğunu söyleyebilirim.Gidersiniz geliştirici forumuna yazarsınız, oyunu kodlayanlar inceler ve yamayıhazırlarlar.
Orjinal oyun satın alanların bu yasal hakkıdır!
FIFA 08’deki örnek bug (Osman Bağçevan’a teşekkürler):
Fifa 08 de kornerlerde , oyuncunun bakışaçısını tam sağa dğru yaslıyoruz ve orta tuşunun yarısına kadar basıyoruz. Sonra da şut’abasıyoruz. Bunu yapınca şu oluyor: Top üst direğe çarpıyor , sonra dabunu yapan kişinin oyuncusunun tam kafasına denk geliyor ve sonucunda da şut’abastığımızda gol oluyor.
Bir başka örnek de işletim sistemleri konusunda verilebilir. 5 milyon satır koddan oluşan Windows XP içerisnde bug olması çok doğal bir durumdur. Bu bug’lar da aynen oyunlardaki gibi Microsoft’un yayınladığı yamalarla düzeltilir. Yamalar MS’ten önce Hacker’lar tarafından tespit edilirlerse tabii ki kötüye kullanılırlar. Buna da exploit yani açık denilebilir.
Software Bug tanımı: Bir bilgisayar programı veya sistemde oluşan, istenmeyen/hatalı sonuçlara yol açan hata, kusur, başarısızlık veya arızanın genel adına software bug denir.
Bu hatanın ayıklanma ve düzeltilme işlemine ise “debugging” denmektedir. Çoğu hata bir programın kaynak kodunda veya dizaynında oluşmaktadır. Eğer sistem üzerindeki hata miktarı öngörülenden çok daha fazlaysa ve sistemin çalışmasını ciddi bir şekilde etkiliyorsa buggy terimi kullanılır.
Anlayacağınız bir programın/sistemin doğru bir şekilde çalışabilmesi için bugsız olması şarttır.
kaynak:Dr. Sertaç Doğanay,https://www.chip.com.tr/blog/recepbaltas/nedir-bu-bug-denilen-sey_3628.html, https://shiftdelete.net/bug-ne-demek