Release ile Debug Derleme Arasındaki Fark

Release ile Debug Derleme Arasındaki Fark

31 Aralık 2018 0 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 49
Yaklaşık okuma süresi : 2 DK
C# Dosya Adları Değiştirme Projesi
Release ile Debug Derleme Arasındaki Fark
5 (100%) 1 Oy

Release ile Debug Derleme Arasındaki Fark, yazım ile programlama derslerimize devam ediyoruz. Bu dersimiz Visual Studio ile ilgili bir derstir. C# ile ilgili değil genel anlamda programlama ile ilgili bir konudur. İşin biraz daha profesyonellik tarafı ile ilgilidir desek yanlış olmaz sanırım.

Release ile Debug Derleme Arasındaki Fark

VS ile yaptığımız projelerimizi build ederken yani derlerken karşımıza iki farklı derleme türlü çıkmaktadır. Bunlardan bir tanesi RELEASE diğeri ise DEBUG tur.

Şimdi bu iki derleme türünün farklarına göz atalım.

Debug Mod

Debug Modda, derleme yapıldığında oluşan hata ayıklama bilgileri yer alır ve optimizasyonlar kapalıdır.

Debug Modda, şifre girilmesi gereken bazı durumların atlanmasını isteyebiliriz. Böyle durumlar için,

#if DEBUG
// Şifre dorulan ekranları açma direk olarak devam et
#else
// Şifre doldurulan ekranları aç. Şifreler girilsin
#endif

gibi bir kod bloğu ile debug modda farklı release modda farklı işlemler yaptırabiliriz. Hepimizi biliriz ki bazı durumlarda F5 yaptığımızda sürekli olarak şifre girmek test aşamasında can sıkıcı olabiliyor.

Yukarıdaki kod bloğunda ilk kısımda proje Debug Modda derlendiyse yapılacak işlemler, ikinci kısımda ise Release Modda derlendiyse yapılacak işlemler yazılır.

Bu sadece masaüstü uygulamalarda değil Web uygulamalarında da geçerlidir. Web projelerimizde WebConfig dosyamızı,

<configuration>
 <system.web>
 <compilation debug="true" targetFramework="4.0"/>
 </system.web>
</configuration>

yukarıdaki gibi düzenledikten sonra,

if (HttpContext.Current.IsDebuggingEnabled)
// Şifre dorulan ekranları açma direk olarak devam et
else
// Şifre doldurulan ekranları aç. Şifreler girilsin

gibi bir if else bloğu ile çözüme gidebiliriz.

 

Yukarıdaki mantık ile debug mod ve release mod için farklı metodlar hazırlayıp kullanabiliriz. aşağıda bunun bir örneğini görebilirsiniz.

protected void Page_Load(object sender, EventArgs e)
{
DebugMetodum();
}
[System.Diagnostics.Conditional("DEBUG")]
protected void DebugMetodum()
{
// Debug mod derlendiğinde çalışmasını istediğim metod
}

Buradaki kodlara göre DebugMetodum, projemiz sadece Debug Modda derlendiğinde çalışacaktır. Release modda çalışmayacaktır.

İlgili İçerik  SQL Where Komutu Wildcard

Release Mod

Release Mod, Proje tamamlandıktan sonra yayınlanacağı zaman kullanılması gereken bir derleme türüdür. Performans açısından gözle görülür bir fark olmamasına rağmen profesyonellik açısından yapılması gereken bir işlemdir. Tek farklı kodlar biraz daha optimize edilerek derleme yapılır.


Release ile Debug Derleme Arasındaki Fark, dersimizde bu kadar arkadaşlar. Diğer derslerimizde görüşmek üzere.

Diğer programlama hakkındaki derslerim için tıklayabilirsiniz.

Bu derste programlama ile ilgili olsa da C# eğitim seti ile alakalı olmadığından C# eğitim setime dahil etmeyeceğim.

Takipte Kalın.

C# Dosya Adları Değiştirme Projesi