24 Aralık 2010 Cuma

Compile, Build ve Rebuild arasındaki farklar

Merhaba arkadaşlar, bazen yaptığımız iş içinde en ufak şeyler bile o kocaman iş yükünün altından kolayca kalkmamızı sağlar ama farkında olmayız, neden mi? Bence ufak şeyleri farkında olmadan devamlı kullanmaktan, örneğin sabah otomatikmen lavaboya gidip elimizi yüzümüzü yıkamak gibi olağan olduğundan kaynaklanabilir. İyi giriş yapabilirim ama şimdi okuyacağınız şey bu içerikle ne alaka diyebilirsiniz de :) "Ne yapayım yahu işten başımı yeni kaldırmışım insanlık hali" deyip geçiyorum, sizde tamam diyorsunuz ;)
Çalıştığım iş yerinde projelerimizi Delphi 7 ile geliştiriyoruz. Delphi'ye çok yabancı değilim ama yuttum bu işi de diyemiyorum henüz. Bildiğiniz gibi, biliyor musunuz bilmem :) Delphi'de projenize her ne eklediyseniz gerek .pas gerekse .dll tarafında sonucu görmek için çalıştırmadan önce mutlaka o dosyamızı derlememiz lazım. C# gibi değil yani. Delphi - Project tabının altında Compile ve Build seçeneği var arkadaşlar. Ha nedir bunlar, aralarında ki fark ne ?

Build: Değişip değişmediğine bakmaksızın tüm dosyaları build eder, bu nedenle projenin büyüklüğüne bağlı olarak uzun sürebilir. Yani tüm kodlarınızı build eder. Delphi'de kısayol tuşu shift + F9 dur.

Compile: Sadece son build işleminden sonra değişen dosyaları derleyip build eder. Yani tüm projeyi derlemez, bu yüzden fazla da uzun sürmez. Delphi'de kısayol tuşu ctrl + F9 dur.

***Birde Visual Studio da vardır bu işlemler. Orada hangisi ne yapar, birde ona bakalım dilerseniz.

Build: Delphi'de ki Compile ile aynı işi yapar, tüm dosyayı derlemez, sadece son build işleminden sonra değişen dosyaları derleyip build eder.

Compile: Editörde ki etkin dosyayı derler. Yani o an üzerinde çalıştığınız açık olan dosyayı derler.

Rebuild: Delphi'de ki build ile aynı işi yapar, değişip değişmediğine bakmaksızın, projedeki tüm dosyaları build eder, bu nedenle projenin büyüklüğüne göre uzun sürebilir.


Delphi'de olmayan ancak VS'da aynı konu ile ilgili olarak yer alan diğer bir komut ise Clean Solution (proje üzerinde sağ tık yapıldığında sadece Clean olarak görünmekte) komutudur.


Clean komutu, ilgili proje ya da solution için derleme sonucunda oluşmuş tüm dosyaları ve geçici dosyaları temizliyor. Böylece bir sonraki derleme işleminin temiz bir başlangıçla tüm dosyalar için yapılması sağlanıyor. Bu da zaman tasarrufu sağlıyor. Bu komut ile mesela, sadece kodları paketleyip birine iletmek istediğinizde, derleme sonuçlarının boşuna yer kaplamasını engellemiş oluyorsunuz.


Herkese iyi hafta sonları diliyorum :)