Programcının Yardımcı Araçları

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ertug
Üye
Mesajlar: 82
Kayıt: 10 Ara 2004 05:41

Programcının Yardımcı Araçları

Mesaj gönderen ertug »

Merhaba,

Efkan arkadaşımızın ricası üzerine aklıma gelen yardımcı araçlardan kısaca bahsetmek istiyorum. Saat gecenin 1i ve doğaçlama yazıyorum, hatalarım olursa bağışlayın. Araçların İngilizce karşılıklarını da yazıyorum, belki google'dan arama yapmak isteyebilirsiniz. Unuttuğum araçları lütfen ekleyin.

Bakalım "Program Files" dizinimde neler var :D

Sürüm Kontrol yazılımları (Version Controlling)

Birden çok kişinin çalıştığı projelerde, değiştirilen ünitelerin sürüm kontrollerini yapmak hayati önem taşır. Kodlar aynı anda bir çok kişi tarafından etkili şekilde değiştirilebilmeli ve bir merkezde toplanarak birleştirilebilmelidir. Sürüm kontrol yazılımları sayesinde sunucu (server) üzerinde barınan üniteyi değiştirmeden önce kilitlersiniz ve işiniz bitince kilidini bırakırsınız. Değişiklikleriniz sunucuya geri aktarılır ve üniteniz bir sürüm ilerler. Bir başka arkadaşınız aynı üniteyi açtığında yaptığınız değişiklikleri de alacağından karışıklık oluşması engellenecektir. "Üniteyi bana gönder", "sen de mi o üniteyi değiştiriyordun, ben de değiştiriyorum" vs. gibi can sıkıcı dialoglar yaşanmayacaktır.

Sürüm kontrolü yapmanın diğer bir faydası da, zaman içerisinde yaptığınız değişiklikleri görebiliyor olmanızdır. Yani bir önceki sürüm ile şu anki arasında neler değişmiş görebilir, gerekiyorsa geriye dönebilirsiniz.

Bu araçlar sadece üniteler için değil, formlar, dokümanlar veya herhangi bir dosya için kullanılabilir.

Tavsiye: Team Cohorence (shareware)

İzleme / Hata Ayıklama yazılımları (Debugging Tools)
Yazdığınız koddaki hataları Delphi'nin standart "debugger"ı ile yakalayabileceğiniz gibi daha profesyonel araçları da kullanabilirsiniz. Bu araçlar görünen ve görünmeyen hataların ortaya çıkarılmasında, alınan ama hatalı olarak bırakılmayan bellek alanlarının tespitinde (memory leaking) veya benzeri hataların ayıklanmasında kullanılırlar.

MadExcept gibi yazılımlar kullanıcıda meydana gelen hataları gidermenize yardımcı olur. Bir hata oluştuğunda, hangi ünitenin hangi satırında hangi hatanın oluştuğunu, e-posta üzerinden bir rapor olarak alabilirsiniz.

Tavsiye: AQTime (SW), MadExcept (SW, kişisel kullanım için ücretsiz)

Performans Ölçüm Araçları (Profilers)
Yazılımınızın hızını ölçmek için performans ölçüm araçlarını kullanabilirsiniz. Böylece yazılımınızdaki performans sorunlarının hangi prosedür veya fonksiyondan kaynaklandığını bulabilir (darboğaz) ve o kısmı optimize edebilirsiniz. Özellikle döngülerde optimizasyon çok önemlidir.

Tavsiye: GpProfiler (açık kod), Kendi ölçüm aracınızı kendiniz yazabilirsiniz.

Delphi Eklentileri (Delphi add-ons)
Delphi'nin içerisine kendilerini ekleyerek hayatınızı kolaylaştırırlar. Bazıları kodda yazdığınız hataları MS Word'deki gibi altı kırmızı çizgili gösterirken, bazıları form üzerinde seçilen komponentleri, bir başka tür ile değiştirmenizi sağlarlar. Ancak bu eklentiler bazı durumlarda Delphi'nin hata vermesine ve stabilitesinin bozulmasına da neden olabilirler.

Tavsiye: GExperts (açık kod), Castalia (SW)

Yardım Hazırlama ve Dokümantasyon Araçları (Help Authoring / Documentation Tools)
Geldik baş belasına :). Bazen bir yazılımın yardım dosyalarını hazırlamak yazılımın geliştirilmesinden daha uzun sürebilir. Yazılımcılarla metin yazarlarının birlikte çalışması gerekir. Bazen bir şeyi anlatmak çok zor olabilir. Ne demiş atalarımız "bir örnek bin nasihattan iyidir" diye.

Tüm bu güçlükleri bir nebze olsun azaltmak için yardım hazırlama araçları kullanabilirsiniz.

Tavsiye: Help & Manual (SW), Doc-O-Matic (SW)

Yerelleştirme Araçları (Localization / Globalization Tools)
Bazı durumlarda yazdığınız yazılımın çoklu dil desteğinin olması gerekir. Özellikle yurt dışına satış yapmayı planlıyorsanız kesinlikle yazılımınız yerelleştirilebilmelidir. Bunun için "resourcestring" kavramına alışmanız ve ona göre kod yazmanız şarttır.

Tavsiye: Multilizer (exe'yi doğrudan yerelleştirme, SW), TsiLang (form bazında yerelleştirme, SW)

Yığın İş Yapma(!) Araçları (Builder Tools)
Diyelim ki her yeni sürüm çıkardığınızda yaptığınız rutin ve sıkıcı işler var. Mesela uygulamayı ve yardım dosyalarını bir yere kopyalayarak paketlemek, CDye yazmak gibi. Bu tür araçlar, bu işleri sizin için ve hatasız olarak yaparlar. Gerektiğinde kodları derleyebildikleri için her bir kopyanın içerisine tekil bir numara ekleyip ayrı ayrı derleyebilirsiniz. Böylece kırılan yazılımınızın kimin tarafından dağıtıma sunulduğuna dair iyi bir fikriniz olabilir.

Tavsiye: FinalBuilder (SW)

Paketleyiciler (Installer Tools)
Yazılımınızı dağıtmanın en ideal yolu kurulum paketi içinde dağıtmaktır. Bu araçlar bir çok zahmetli işe katlanarak yazılımınızı işletim sistemine kurarlar. Gerektiğinde kullanıcılar yazılımınızı sistemlerinden de kaldırabilir.

Tavsiye: Inno Setup (açık kod), InstallAware (Türk yapımı :D, SW)

Sanal Makineler (Virtual Machines / Emulators)
Diyelim ki yazılımınızın diğer işletim sistemlerinde nasıl davrandığını görmek istiyorsunuz. Sanal makineler sayesinde işletim sisteminizin içerisinde bir başka işletim sistemi açabilir ve vakit kaybetmeden işinizi halledebilirsiniz. Bu araçlar, tek bilgisayar üzerinde sana yerel ağ (network) kurmanıza ve yerel ağ üzerinde çalışan yazılımlarınızı test etmenize de yarayabilirler.

Tavsiyeler: WMWare Virtual Machine (SW)

Modelleme Araçları (Modelling Tools)
Diagramlar kullanarak nesneler, veritabanları vs. tasarlayabilir ve ortak bir dil olan UML'ye çevirebilirsiniz. Bu sayede karmaşık işler basitçe anlatılabilir ve anlaşılması kolay olur. Özellikle kalabalık gruplarda işleri çok hızlandıracaktır.

Tavsiye: ModelMaker (SW)

Test Otomasyon Araçları (Testing Tools)
Bu araçlar çeşitli script veya makrolar sayesinde yapacağınız testleri otomasyona geçirmenizi ve zaman kazanmanızı sağlarlar. Bu araçların hazır test modülleri de bulunur.

Tavsiye: TestComplete (SW)

Faydalı olması dileklerimle

Ertuğ Kaya
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

gecenin bi vakti verdiğin bilgiler için teşekkür edip bir kaç tanede ben ekleyeyim.

hata takip sistemi

BUGS - The Bug Genie (open source)
http://bugs-bug-genie.sourceforge.net/

Build Tool

WANT - A Delphi Friendly Build Tool (open source)
http://sourceforge.net/projects/want/

Test Tool

DUnit: (open source)
http://dunit.sourceforge.net/

dökümantasyon

DelphiCodeToDoc
http://sourceforge.net/projects/dephicodetodoc/
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
Kullanıcı avatarı
efkan
Üye
Mesajlar: 155
Kayıt: 31 Oca 2004 07:47
Konum: Tekirdağ
İletişim:

Ertuğ HOCA ya saugılar...

Mesaj gönderen efkan »

Ertuğ Bey gecenin 1 inde zaman ayırıp böyle bir yazı yazdığınız için size ne kadar teşekkür etsem azdır.Doğaçlama yazıyorum hata olursa affola demişiniz ne haddimize Estağfirullah...
Satırların çokluğu gözümü korkutmadı aksine iştahımı kabarttı.Çünkü ben uzun süredir programcılığın her diline ilgi duyduğumdan ne bulursam okurum.Yazdıklarınızın her kelimesini okudum :) bence bu yazı bir programcıya yol gösterebilecek bir kaynak olmuş.
"Programın yavaş mı çalışıyor.. bak bakalım nasıl hızlandırabilirsin"
"Program garip bi hata veriyor.Bir de bununla derle bakalım hata neymiş" vb. ben bu tür araçların varlığından bile habersizdim.
Sadettin Bey bu konuda sizde oldukça yardımcı oldunuz. Ayrıca web sayfanızı gezdim size de teşekkürler,
herkese iyi çalışmalar , başarılar dilerim...
Bilgisayar Programcısı/Analyst ve Sistem Yöneticisi
Kullanıcı avatarı
karflake
Üye
Mesajlar: 222
Kayıt: 15 Haz 2003 03:57

Mesaj gönderen karflake »

gkimirti yazdı:Çok guzel bir eklenti projenizde ki yada acık olan dosyada ayarladıgınız olcutlerde kodu duzenleyen guzellestiren harika bir eklenti asagıdaki linkten indirip delphi ye ekleyebilirsiniz.Delphi5,6,7 destegi var
http://www.dow.wau.nl/aew/DelForExp.html
Cevapla