İlginizi Çekebilir
  1. Ana Sayfa
  2. Programlama

Release ile Debug Derleme Arasındaki Fark

Release ile Debug Derleme Arasındaki Fark
+ - 0

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.

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.

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…

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.

Bu yazıya tepkiniz ne oldu?

Yazar Hakkında

Lise Ağ Sistemleri ve Yönetimi bölümü, üniversite Bilgisayar Programcılığı bölümü Ön Lisans, Yönetim Bilişim Sistemleri Lisans öğrenimi aldım. Askerlik görevimi tamamladım. Uzmanlık alanım; C# ve SQL Programlama dilleri ile müşteri odaklı, kullanıcı dostu ERP ve CRM gibi sistemleri geliştirmektir. Ayrıca şuanda PHP ve MYSQL alanında projeler geliştirmekteyim. C++, Phyton, Xamarin, MVC gibi konuları öğrenmek ve kendimi geliştirme çabası içerisindeyim. Discord için: https://discord.gg/FBxZeHu9

Değerli yorumlarınızı bekliyorum. :)