Author Archive for editor

makaleler

bilesen yazma , indy ve eco hakkinda yazilmis guzel makaleler icin buraya, intraweb bilesenleri hakkinda ise buraya, son zamanlarda yazilim aleminde oldukca dikkat ceken agile methodlara delphi cephesinden bakmak isterseniz de buraya bakabilirsiniz.

Subversion nasil kurulur?

svn.jpg

Birkac ay once CodeGear Delphi 2006 Survey adinda bir anket duzenlemis ve programcilara bazi sorular yoneltmisti. Bu sorulardan bir tanesi de “Versiyon kontrol araci olarak hangi programi kullaniyorsunuz?” olmustu. Yine gectigimiz gunlerde CodeRage adinda CodeGear in online konferanslari oldu ve Delphi Urun Yoneticisi Nick Hodges kendi sunumunda bu ankete dair sasirtici buldugu bazi sonuclari bizlerle paylasmisti. Sonucuna sasirdigi sorulardan bir tanesi de Versiyon kontrol araclariyla ilglili olan bu soruydu. Soruyu cevaplayan buyuk bir cogunluk boyle bir arac kullanmadigini belirtmis. Bircok yararlari olmasina ragmen ve ustelik bedava bir cok cozum olmasina ragmen bu tur araclarin kullanilmamasi gerecekten cok sasirtici. Bu nedenle halihazirda kullandigim Subversiyon aracinin kurulumuyla ilgili ufak bir video hazirlamak istedim. Video iceregi kisaca soyle.
Continue reading ‘Subversion nasil kurulur?’

Delphi For PHP - İlk denemeler

Önyargılı olmamak lazım, basitçe birşeyler tasarlayabilirsiniz :

delphi_for_php_screenshot_1.jpg

Klasik Delphi familyasından F9′a basarak yaptığınızı (garip hatalarla da olsa) anında browserinizde goredebilirsiniz:

delphi_for_php_screenshot_2.jpg

Ama ortaya çıkan kodu galiba beş kişi çözemez :

delphi_for_php_code_bits.txt

Tabii php dosyalarında içerik ile program ayrılmış, herşey bir XML dosyasında tutuluyor, örneğin :

delphi_for_php_codebtisxml.txt

dosyası yukarıda yazdığımız unit’in dosyası.

Ama o kodu nasıl ayıklayacağız, ayıklamamız gerekirse? Çıktı çok kötü geldi bana. Doğru düzgün standart yapılan bir tablo çıktı bile yapılmamış.

Belki çok farklı birşeyler bel ki de “çok birşeyler” beklediğim için ilk etapta hüsrana uğradım diyebilirim. Ama belki biraz daha zaman sarfetmem gerekiyordur. Evet, önyargılı olmamalıyım.

Delphi 4 PHP 14 gün Trial

Codegear Blogs‘da yazdığına göre Delphi for PHP için 14 günlük deneme sürümü indirilebilir bir durumda bizleri bekliyormuş. İndirip denemek isteyenler buradan devam edebilirler.

Ceviz.net Ödüllü Programlama Yarışması

Ceviz.net şu an için toplamda 2.250 $ ödüllü programlama yarışması düzenliyor. Kısa bir alıntı yapmak gerekirse :

  1. Masaüstü programı Delphi kullanılarak yapılacaktır.
  2. Masaüstü programı sunucuda çalışan veritabanı sunucusuna doğrudan bağlanmayacak, XML-RPC ya da diğer HTTP bağlantı yollarıyla bağlanacaktır.
  3. Masaüstü programında ücretli bileşenler kullanılmayacaktır. Ücretsiz olan ve kullanılmış olan bileşenler sürümleriyle, indirme adresiyle ve ilgili açıklamarıyla beraber tek tek not edilmelidir.
  4. Tüm yönetim faaliyetleri masaüstü programı tarafından gerçekleştirilmelidir. Sunucu tarafında çalışacak olan betiklerden yönetim özellikleri göstermeleri istenmemektedir.
  5. Masaüstü programında caching için düzenli erişim dosyaları, access dosyaları, advantage veritabanı, ini dosyaları haricinde bir veritabanı dosya türü kullanılmayacak, işlemler eğer ki bir sunucu kullanılıyorsa ODBC kullanmadan ve ek driver gerektirmeyecek şekilde gerçekleştirilecektir.

Yarisma ile ilgili ayrıntıları yarışmanın sitesinden öğrenebilirsiniz : yarisma.ceviz.net/2007/

24 Saat Delphi 2007 for Win32

CodeGear 29 Martta 24 saat boyunca araliksiz surecek yeni bir online konferans duzenliyor. Bu kez daha once yaptigindan farkli olarak sadece kayitli Delphi 2007 kullanicilarinin katilabilecegi bu konferanslara bu adresten ulasabilirsiniz.

Time (PDT) Theme Participants
0:00-2:00 Performance Applications Doug Chapman and Mark Edington
2:00-4:00 Compiler and features Holger Flick and Barry Kelly
4:00-6:00 3rd party Chris Pattinson, Sinan Karajac and Markus
6:00-8:00 Help and Doc Mina Matsuchika and Chris Bensen
8:00-10:00 Database DBX4 Justin Swett and Steve Shaughnessy
10:00-12:00 IDE/MSBuild Sheree Ervin, Dave Wilhelm, and Jeanne Hansen
12:00-14:00 IDE Spencer Kimball, and Chris White, and David Lock
14:00-16:00 VCL for Win32 Joseph Tian and Seppy Bloom
16:00-18:00 Debugger Stephen Blas and Chris Hesik
18:00-20:00 Web Services Craig Farrell and Bruneau Babet
20:00-22:00 Web applications Jason Sprenger and Jim Tierny
22:00-24:00 Delphi (Japanese) Takeshi Arisawa

Delphi 2007 İzlenimleri

Delphi 2007 for win32 daha once bir kac beta blogger tarafindan incelendi ve izlenimlerini kendi bloglarinda yazdilar. Delphi 2007 Release olduktan sonra urunu inceleme altina alan bloggerlar da cogalmaya basladi. incelemelerden birisini bu adreste bulabilirsiniz.

18 e yakin hatayi QC ye kaydettigini belirten Fernando Madruga bu hatalarin bircogunun onemsiz hatalar oldugunu belirtesede piyasaya surulmeden once “RockSolid (Tas gibi)” olarak nitelendirilen Delphi for win32 icin RockSolid:=False; tanimlamasi yapmis ve son olarakta “Codegear henuz mukemmeli yapamadi ama yapmaya calisiyolar” diye fikrini belirtmis.

QC Client ile Delphi 2007 icin bildirilen hata listesine ulasip son karari siz verebilirsiniz :)

mesela rapor edilen garip hatalardan bir tanesi

Tool palette siralama yapildiginda ide nin kilitlendigini ve gorev yoneticisinde ide nin cevap vermedigi gibi bir hata var. yazilan aciklamaya gore bu hata 25 gun den daha fazla sure acik kalan pc lerde (hibernate olayi da buna dahil) Sleep(Delay - ElapsedTime); kodunun bu kilitlenmeye neden olduguymus. 25 gun den sonra ElapsedTime negatif bir deger donderdiginden sleep komutu uzunca bir sure sleepleyip duruyormus.

CodeRage-2007 konferanslarini download etmek isteyenler

Resize of Resize of 03000001[1].png


http://torrent.codegear.com/coderage/
adresinden tum konferanslari indirebilirler.

Yukaridan at beni, asagidan tut beni !

Delphi her ne kadar nesneye yonelik bir dil olsada icerdigi vcl teknolojisi nedeniyle gelistirilen uygulamalar genelde yapisal programlama seklindedir. Yani bir problemi cozmek uzere delphi ide sini actigimizda problemi yukairdan asagiya dogru bir yaklasim izlerek cozmeye calisiriz. Nesneye yonelik cozumlerde ise bu tasarim sureci yukaridan asagiya degil asagidan yukariya dogru olacak sekilde cereyan eder.

Ayni ornek uzerinden giderek olayi her iki tasarim acisindan da orneklemeye calisalim. Cozmemiz gereken problem ise “X tabaninda ki bir sayiyi Y tabanina cevirmek” olsun. Bu problemi ilk once yapisal programlama mantigiyla cozup hemen arkasindan da nesneye yonelik olarak cozum gelistirecegiz ama bunun icin yazinin geriye kalan bolumlerini okumadan 10 dakika bir ara verin ve kendi cozumunuzu uretin. ardindan burdaki cozumlere bakin ve yapisal olarak mi yoksa nesnesel olarak mi dusundugunuzu kesfetmeye calisin. belki cok ogretici bir deneyim olmayacak ama eminim eglenceli olacaktir :)
Continue reading ‘Yukaridan at beni, asagidan tut beni !’

Bir varmis bir yokmus!

Evvel zaman icinde kalbur zaman icinde develer tellal iken pireler berber iken ben ninemin besiginde tingir mingir sallanirken keloglan bilgisayarin basinda kafayi cizmek uzereymis. Hemde bu cizme olayi o kadar ilerlemiski keloglanin kafasinda sac kalmamis, karakacan acliktan zayiflamis, aykiz bekleye bekleye otobus duragi olmus. Tum bu olanlarin nedeni ise keloglanin yazilim gelistirirken uygulamis oldugu birim testlerinin cok cok zaman almasiymis.

Keloglan ‘in bazi nesneleri kafdaginin arkasina internet uzerinden baglanip anka kusunun haftanin hangi gunleri bos oldugunu soruyor bazi nesneleri sihirli guvercinin nerede oldugunu ogreniyor bazi nesneleri de uzaktaki web servislerine baglanip kendi hesabindan anasinin hesabina havale yapiyormus.

Bu islemlerde kendi ic ortamindan bagimsi,z dis ortamlarla alakali oldugu icin dogal olarak birim testlerinin calismasi uzun suruyormus.

Madem durum bu gelin hep birlikte el atalim ve keloglani, karakacani ve aykizi bu iskenceden kurtaralim :)
Teste dayali yazilim gelistirirken onumuze cikan problemlerden bir tanesi de disa bagimli olan nesnelerdir. Bu nesneler dis dunyayla iletisim kurarak gerekli parametreleri dis dunyadaki servise aktarirlar ve gelen cevaba gore islem yapmaya devam ederler. Ornek vermek gerekirse bir kisinin tc kimlik numarasini bulmak icin tckimlik.nvi.gov.tr adresindeki web servislerini bu olaya ornek olarak gosterebiliriz. Bu durumun bize getirdigi dezavantaj yavasliktir. Eğer birim testlerimizin icerisinde bu servisi kullanan bir nesnemiz varsa hem bizimle alakasi olmayan bir servisin test edilmesi soz konusu hem de birim testlerimizin calisma suresini cok cok uzatmasi soz konusu. Bu dezavantajlari ortadan kaldirarak birim testlerinin calisma suresini oldukca kisaltabiliriz.

sorunu cozmek icin asmamiz gereken iki problem var.
1- dis ortamlara olan cagrilari test kodlarimizin arasindan kaldirmaliyiz
2- dis ortamlara olan cagrilari kaldirirken oyle bir ayar cekmemiz lazim ki diger kodlar (testler) sanki dis ortama baglanip veri almaya devam ediyorlarmis gibi hareket etmeliler.

Continue reading ‘Bir varmis bir yokmus!’