Archive for June, 2006

Yeni bir açık kaynak kodlu projeye başladık DelphiTurkiye ekibi ile. Daha çok geliştirici ve veritabanı yöneticilerinin işine yarayacak olan bu projenin adı datagenerator. Forumdan Aslangeri, lazio ve thex ile birlikte geliştiriyoruz.

Proje nasıl mı başladı? Aslında projenin yaratıcısı ve fikir babası thex. Foruma böyle bir yazılım hazırladığını ve geliştirmek isteyen olur mu diye sormuştu. Şahsen ben hep böyle bir araç geliştirmek istemişimdir. Bazen gerçekten ihtiyaç oluyor. Özellikle veritabanı yazılımcıları, test verilerini hazırlamak istediklerinde. Böyle araçlar var, ancak kapalı kaynak kodlu ve çok da esnek olmayan araçlar.

thex’in kodlarına göz attığımda, bunun istediğim özelliklerde bir araç olabileceğini düşündüm ve thex’den Sourceforge’a başvurmasını, bu şekilde ortak geliştirmenin daha kolay olabileceğini önerdim. Başvurusu da hemen kabul edildi ve biz olaya girdik.

http://blog.ateskusu.org/?p=19

projenin web sayfasi

http://datagenerator.sourceforge.net/

Comments No Comments »

anet.delphi haber grubunda bir zamanlar veritabanindan bagimsiz program yazmak uzerine guzel bir sohbet yapmistik gruptakilerle. bu sohbet kaybolup gitmesin diye buraya da bir kopyasını göndermek istedim ama mesajlari cok basarili bir sekilde (duzgun ve sirali) almayi basaramadim. bu aralar cok fazla zamanim olmadigindan da duzenleyemedim de. html formatina cevirebildim ancak. yine de yararli olacagina inandigim bir belge oldugu icin buraya koymakta fayda goruyorum.

dosyayi burdan indirebilirsiniz veya okuyabilirsiniz

Comments No Comments »

su an bilgisayardan uzak oldugumdan dolayi (bu yaziyi yazarken degil tabi :) ) cok teknik konulara deginemiyorum. ileriki gunlerde nasip olursa tasarim desenlerine devam etmeyi dusunuyorum.

bu yazi veya sohbet her ne kadar delphi ile direkt bir alakasi yok gibi gozuksede her delphicinin bir gun karsilasacagi / karsilasmasi gerektigi bir konuyu ele aliyor.

bir yazilimcinin tezgahi nasil olmali ? burda altini cizmek istedigim husus tezgah ile arac kutusunu karistirmamak. bir programcinin arac kutusu ile tezgahi farkli seyleri ifade eder.

bir bilgisayar ve bir delphi yeterli midir ?

bunun yaninda baska seylere ihtiyac var midir ?

hep beraber bunlari tartisalim.

mesela bir yazilim gelistirirken olmazsa olmaz araclarim.

bir adet hata takip sistemi
bir adet surum kontrol sistemi
bunlarin yaninda kullandigim cok yararli bir kac arac daha var ama su an icin onlari cok aktif bir sekilde kullanamiyorum. (surekli entegrasyon araci v.s)

bu tip araclarin bir cogu yazilim gelistirmeyi bir kaosa suruklenmeden basariyla bitirmenizi sagliyabiliyor.

Comments No Comments »

@cemaliozan, senden yeni batik bank haberleri bekliyoruz.
hepinizi cok cok opuyorum. kendinize ii bakin :)
delphiye deginmeden de gecmeyelim.


Kullanımı:
ConvertWMF2BMP('c:\mypic.wmf','c:\mypic.bmp')

procedure ConvertWMF2BMP
(const WMFFileName, BMPFileName: TFileName) ;
var
MetaFile : TMetafile;
Bitmap : TBitmap;
begin
Metafile := TMetaFile.Create;
Bitmap := TBitmap.Create;
try
MetaFile.LoadFromFile(WMFFileName) ;
with Bitmap do
begin
Height := Metafile.Height;
Width := Metafile.Width;
Canvas.Draw(0, 0, MetaFile) ;
SaveToFile(BMPFileName) ;
end;
finally
Bitmap.Free;
MetaFile.Free;
end;
end;

Comments 3 Comments »

Merhaba,

Bugün Object sınıfına ait GetHashCode metodu ile ilgili bilgi vermek istiyorum. Bu metodun tanımları :


//Delphi:
function GetHashCode(): Integer; overload; virtual;

//C++:
public: virtual int GetHashCode();

Objenin hash kodunu döndürür ki bu da objeye karşılık gelen sayısal bir değerdir ve hash tablosu mantığında objeye erişimi hızlandırmak amacıyla böyle sayısal değerler kullanılır.

GetHashCode fonksiyonunun mevcut hali, her bir obje için farklı değerler döndürmeyi garantilemez. Farklı sınıflara ait objeler mutlaka farklı hash kodlara sahiptirler, ama aynı sınıfa ait farklı nesneler aynı hash kodu taşıyor olabilirler. Yani hash kodu farklı iki nesne farklıdır ama bunun tersi doğru değildir. Bu yüzden eğer eşitlik karşılaştırması için kullanılacaksa bu metot, sizin sınıf yapınızda ezilmiş olmalıdır.

(more…)

Comments 1 Comment »

her ne kadar bilgisayardan uzak kalmis olsak, baska bir hayata adim atmis olsakta hicbirsey beni delphi hakkinda yazmaktan alikoyamaz :)

interposer siniflar icin bir cesit taklit siniflarda diyebiliriz aslinda. Tek yaptiklari sey varolan siniflara yeni ozellikler eklemek. “e biz bunu zaten yapiyoruz” diyebilirsiniz ama bu siniflari digerlerinden ayiran fark ozelliklerini genislettikleri siniflar ile ayni adlara sahip olmalari. Bu sayede siz delphi idesinde yer alan normal bilesenleri kullanarak tasarima devam edebiliyorsunuz fakat arka planda kullanilan sinif sizin ozellikler eklediginiz sinif oluyor.

(more…)

Comments 6 Comments »