JavaDoc, java dunyasinda dokuman olusturmak icin kullanilan oldukca yararli bir aractir. Pascal dunyasinda ise PasDoc adli benzer bir arac mevcuttur. Bu araclar kaynak kod icinde belirli yerlere yerlestirilmis aciklamalardan yararlanarak kaynak kodunuzla ilgili yardim dokumanlari olustururlar.
Kod ve aciklamalarin tek bir dosyada olmasinin avantaj ve dezavantajlari mevcuttur. Avantaji, kod ile aciklama tek bir dosyada oldugundan kodda yapilan degisikliklerin aciklamalara yansitilmasi daha kolay olur ve bu sayede elinizdeki yardim dokumanlari daha guncel kalir. Dezavantaji ise kaynak kodunuzu iceren dosya biraz kalabalik olacagindan koda gozatmak ve hata duzeltmek biraz daha zor olabilir. Sonuc olarak avantaj ve dezavantajlari goz onune aldigimizda “arkadasim, ben usenmem duzenli bir sekilde aciklamalarimi yazarim” derseniz bu tip otomatik dokuman olusturma islemi size cok faydali olacaktir.
Bu yazida benim sizlere bahsetmek istedigim arac ise DelphiCodeToDoc adli arac. Bu arac Delphi kodunuzda yer alan Javadoc sitilindeki taglardan yararlanarak otomatik olarak dokuman olusturabilmektedir. Destekledigi taglar su sekildedir.
@Author, @Version, @param, @throws, @todo, @Comment.
Bu taglarin yaninda
{*
aciklama
}
ve
///
seklindeki satirlar kullanarakta aciklamalar olusturabilirsiniz.
Burdaki {* } ve /// isaret komutlarini istege gore degistirebilirsiniz.
Ornek bir uniti su sekilde olusturabilirsiniz.
UnitKullanici.Pas
{*
Kullanici yetkilendirme sinifi
Programa login olan kullanicilarin yetki duzeyini belirlemek
icin kullanilan siniflarin yer aldigi unit.
@Author Sadettin POLAT
@Version 2003/08/16 TUser v0.1 ilk surum
@Version 2003/08/18 TUser v0.2 Login esnasinda girilen bilgilerdeki bosluklar temizlendi
@Version 2003/08/24 TUser v0.3 Login esnasinda deneme sayisi 3 olarak ayarlandi
@Version 2003/09/02 TUser v0.4 SqlInjection aciklari icin koruma eklendi
@Version 2003/09/10 TUser v0.5 Kullanici parolasi harf ve rakam sekline cevrildi
}
unit UnitKullanici;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
{*
Kullanicilarin sistem girislerini ve yetkilerini kontrol eden sinif...
}
TUser = class
private
fUserName:String; /// Kullanici adinin saklandigi private degiskendir.
{ Private declarations }
public
Function getUserName():String; // eğer burada 3 tane slash olursa dokumanda aciklama olarak burasi dikkate alinir.
Procedure setUserName(aUserName:String);
{ Public declarations }
end;
implementation
{ TUser }
{*
Kullanici adini set eder.
@author Sadettin POLAT
@version 1.3
@param aUserName Kullanici adi bu degiskenle metoda aktarilir.
@throws Herhangi bir istisna olayi içermemektedir.
@todo SqlInjection aciklari icin koruma eklenecek.
@Comment Sisteme giren kullanicinin adini fUserName degerine atamak icin kullanilan metoddur.
@see getUserName //bu tag henuz desteklenmiyor...
}
procedure TUser.setUserName(aUserName: String);
begin
/// buraya metod icinde ki aciklamalarinizi yazabilirsiniz...
end;
{*
Daha onceden set edilmis olan kullanici adini geri donderir.
@author Sadettin POLAT
@version 1.2
@return Geriye donen deger gecerli kullanici adidir.
@throws Herhangi bir istisna metodu icermemektedir.
@todo Kullanici adini geri donderirken varsa bosluklar iptal edilecek.
@Comment Sisteme login olan kullanicinin adini geri donderir.
@see setUsername
}
function TUser.getUserName(): String;
begin
/// buraya metod icinde ki aciklamalarinizi yazabilirsiniz...
end;
end.
Unitimizi bu sekilde hazirladiktan sonra dephicodetodoc aracimizla dokumantasyon dosyalarimizi olusturabiliriz.
Aracin olusturdugu dosyalara goz atmak ve yukaridaki pas dosyasini indirmek isterseniz asagidaki linki kullanabilirsiniz.
blog, resim dosyasi haricinde baska bir uzantiya upload icin izin vermediginden jpg uzantisini rar yapmayi unutmayin

Entries (RSS)