Yazılım sektöründe adı çok geçen “Bug” kavramı nereden geliyor, “Bug Nasıl Bulunur?” ve “Nasıl Giderilir?” kısaca açıklayalım.

Bug Nedir?

Aslen İngilizce bir kelime olan “Bug”, Türkçe’ye ”Böcek” olarak çevrilmektedir. Bug teriminin ilk olarak Thomas Edison tarafından, geliştirdiği icatta çıkan sorunları ifade etmek için kullanıldığı düşünülüyor. Ancak günümüzde özellikle yazılımcıların kullandığı bir terim konumunda. Yazılımda veya sistemde istenmeyen sonuçlar çıkaran problemler “Bug” olarak adlandırılmaktadır.

Bug Nedir?

Zaman zaman video oyunlarında gördüğümüz hatalar aslında o oyuna ait yazılımdaki Bug’lardan kaynaklanıyor. Her biri, kendi kod sistemi içinde uzun metinler halinde geliştirilen yazılımlar bazen gözden kaçan yazım hataları veya kurgu hataları nedeniyle sorunlar çıkarabiliyor. 

Bir yazılımcı kurguladığı sistemi kodlar ve komutlar vasıtasıyla çalışır hale getiriyor. Her bir programlama dilinin de kendine ait kurgusu ve komut dizisi mevcut. Ortaya çıkarılmak istenen programın detayı ve kapsamına göre yazılımcının çalışma saatleri artıyor ve buna bağlı olarak kod dizileri gitgide büyüyor.

GitHub benzeri sistemlerde böylesine büyük programlar ile ilgili projeler birçok yazılımcıya paylaştırılıyor. Böylece birçok kişiye aynı anda çalışma olanağı tanınıyor ancak bu sistem de yazılımlarda Bug oluşmasına engel olamıyor.

Debug Nedir?

Debug (hata ayıklama) bir yazılım içinde kurguyu bozan ve sistemin çalışmasını engelleyici unsurların (bugların) tespit edilmesi ve çözümlenmesine denmektedir. Yazılımlar geliştirilirken kod yazmakta kullanılan programlar vardır ve bu programlara IDE (Integrated Development Enviroment) denir. 

Entegre Geliştirme Ortamı denilen IDE’ler yazılımcılara normal text editörlere nazaran daha fazla özellik ve imkanlar sunuyor. Bu programlar kod yazarken otomatik tamamlama, kodların karıştırılmasını önlemek için, kod kısımlarını ayrı ayrı renklendirme gibi özelliklerle de  hata yapılma ihtimalini düşürüyorlar.

Bug Nasıl Bulunur?

Her birinde olmasa da bu IDE’ler veya frameworklerde hata ayıklama modu mevcuttur. Bu Debug Toolları ile yazılımı geliştirirken aralıklı olarak simule ederek hataları tespit edebiliyorsunuz.

Yazılımı geliştirirken debug modu (hata ayıklama modu) açık çalışılırsa yaptığınız hatalar uyarı verir ve o an düzeltme şansınız olur. Bu şekilde daha işin başında hataları ayıklayabilir ve Bug oluşmasını önleyebilirsiniz.

Ancak bazı Bug’lar sistem kurgulanırken farkedilemez ve sonradan ortaya çıkabilir. Genel olarak büyük kod dizilerinden oluşan yazılımlarda Bug bulmak zaman ve emek isteyen bir iştir. 

Bug’ların en büyük etkisi programın çalışamaz hale gelmesini sağlamak veya güvenlik açığı nedeniyle hacklenme riski oluşturmaktır. Bu sebeple sistemler kullanılmadan önce Bug bulucu özel uygulamalarla taranmalıdır. Bug tespit etmek için yazılım ve kod bilgisine sahip olmak gerekir. Bug tespit eden ücretsiz yazılımlara örnek vermek gerekirse;

Aslında birçok programın hata oluştuğunda bir hata mesajı oluşturduğuna şahit olmuşsunuzdur bu mesajlar hatanın sebebi konusunda yazılımcıya fikirler verir. 

Bazen oyunlarda karşımıza çıkan bu durum oyunda olmaması gereken bir özelliğe kavuşmak veya karakterin grafiklerinde sorun çıkması veya girilmesi gereken yere girememesi şeklinde ortaya çıkabilir. Bu Buglar bildirilirse yazılımcı tarafından geliştirilen ve Bug Fix denilen patch (yama) yazılımlarıyla düzeltilir.

Benzer şekilde sosyal medyada çok rastlanan bir durum da Bug nedeniyle kullanıcılara ait bazı bilgilere ulaşılabilmesi şeklinde ortaya çıkıyor. Bu tarz Buglar bildirildiğinde ödül veren şirketler bile var örneğin Apple.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir