Debug ile Release arasındaki fark

Katılım
28 Ocak 2020
Mesajlar
19.476
Makaleler
52
Çözümler
461
Merhabalar bu rehberde Debug ile Release sürüm arasındaki farkı anlatmaya çalışacağım.

Öncelikle bunlar nedir?
Bunlar bir yazılım geliştirirken derleme algoritma sistemleridir.

Debug: Türkçesi hata ayıklama olarak geçiyor. Genelde bir yazılımda hata ararken veya düzenleme yaparken Debug kullanılır. Bu kodları optimize etmeden direkt hata ayıklanıp derlenmiş hali için kullanılır. Bu derlenme süresini kısaltmasını sağlar.

Release: Türkçesi paylaşmak veya bırakmak olarak geçiyor. Bu ise bir proje hataları giderildikten sonra derlenirken kaynak kodunu hem hata ayıklıyor, hem optimize ediyor, hem daha küçük boyutlu hale getiriyor. Tabii bunun bir de zararı var. O da derleme süresinin uzaması. Kaynak kodunu optimize etmek için farklı motorlar çalıştırıyor ve bu derleme süresini ve derleme sırasında CPU kullanımını arttırıyor.

Debug olarak derlenen projeler; bin\Debug klasörü içinde yer alır.


Release olarak derlenen projeler: bin\Release klasörü içinde yer alır.


Bir de mimari ile derleme var. Normal olarak derlerseniz bu klasörlerin içinde olur. Ancak x64 veya x86 olarak derlerseniz şu şekilde olur.

X64 mimari kullanılıp Debug olarak derlenen proje; bin\x64\Debug klasörü içinde yer alır.




X86 mimari kullanılıp Release olarak derlenen proje; bin\x86\Release klasörü içinde yer alır.




Peki bu ayarları nereden yapıyoruz?


Visual Studio içinde üst kısımda bu sekme var. Buradan ayarlıyoruz. Eğer gözükmüyor ise;


Yapılandırma yöneticisine girin.


Buradan gerekli mimariyi ve derleme algoritmalarını aktif edin.

Genel olarak bu amaçlar doğrultusunda kullanır. Tavsiyem projeyi geliştirirken Debug olarak derlemeniz. Ancak paylaşırken ise Release olarak derleyip paylaşmanız daha sağlıklı olur.
 
Son düzenleme:
Peki ya debug olarak yayınlarsak ne olur? Ben projelerimi bu şekilde yayınlıyorum.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…