Subject: Proje Yöneticisi
Merhaba,
Code::Block üzerinden proje geliştirmeye çalıştım fakat ayarlarını bir türlü yapamadım. Bende metin editörü üzerinden yazmaya devam ediyorum. İşte burda sorun beliriyor. O anki veriyi kaydetip, derleyip, çalıştırmak zor geliyor. Bunun yerine D dilini kullanarak bir proje yönetici yapmayı düşünüyorum. Şuan ufak ufak denemelere başladım. Şuanki kod durumu;
Düzeltme: Hataları düzelterek ekliyorum.
Düzeltme 2 : Şuan dosya derleyip çalıştırabiliyor.
derle.d ye parametre gönderek hem derleyip hemde uygulamayı çalıştıracak.
Çalışma mantığı şu şekil olacak;
1) Proje yaratmak için derle -Y projeAdı
1-1) projeAdı dğerindeki dizini oluşturak içerisine index.txt dosyasını yazacak.
1-2) Yeni ana dosya yaratmak için derle -Yad dosya projeAdı
1-3) projeAdı değerindeki dizine ait index.txt e belirtilen dosyayı ekleyecek.
1-4) Yeni dosya yaratmak için derle -Yd dosya projeAdı
1-5) projeAdı değerindeki dizinin içerisine dosyayı oluşturacak.
2) Proje derlemek için derle -a -w -L-lncurses -p projeAdı
2-1) -a = Argüman. Projeyi derlemek için gerekli argümanların verilmesi için gerekli parametre.
2-2) -p = Proje olduğunu belirden argüman
3) Dosya derlemek için derle -a -w -L-lncurses -D dosya.d
Bence çok faydalı olucak
. Hem ilerde qtd ve gtkd sorunsuz kurulduğunda arayüzünüde yapabiliriz. Ve IDE olarak bir başlangıç yapmış oluruz. IDE nin küçük bir parçası olmasına rağmen çok yardımcı olacağına inanıyorum
Code::Block üzerinden proje geliştirmeye çalıştım fakat ayarlarını bir türlü yapamadım. Bende metin editörü üzerinden yazmaya devam ediyorum. İşte burda sorun beliriyor. O anki veriyi kaydetip, derleyip, çalıştırmak zor geliyor. Bunun yerine D dilini kullanarak bir proje yönetici yapmayı düşünüyorum. Şuan ufak ufak denemelere başladım. Şuanki kod durumu;
Düzeltme: Hataları düzelterek ekliyorum.
Düzeltme 2 : Şuan dosya derleyip çalıştırabiliyor.

import std.stream; import std.cstream; import std.array; import std.file; import std.process; import std.string; string parametre; void main(string[] args){ /* * Örnek kullanım : derle -a -w -d deneme.d * -a = Argümanlar. Kullanımı -a -w -p derle * -Y = Yeni proje oluşturur. Kullanımı -Y derle * -Yd = Yeni Dosya oluşturur. Kullanımı -Yd dcurses.d */ parametre ~="dmd"; switch (args[1]) { case "-a": Derle(args); break; case "-Y": ProjeOluştur(args[2]); break; case "-Yd": DosyaOluştur(args[2],args[3]); break; default: dout.writefln("-a = Argümanlar. Kullanımı:derle -a -w -L... -p proje"); dout.writefln("-Y = Yeni proje oluşturur. Kullanımı:derle -Y proje"); dout.writefln("-Yd = Yeni Dosya oluşturur. Kullanımı: derle -Yd proje.d"); } } void Derle(string[] args){ /* * -p = Projeyi derler. Kullanımı : derle -a -w -p proje * -d = Dosyayı derler. Kullanımı : derle -a -w -d proje.d */ for(int k=0;k<args.length; k++){ if(args[k]=="-p"){ for(int i = 2;i<k;i++){ parametre~=" "~args[i]; } ProjeDerle(args[k+1]); }else if(args[k]=="-d"){ for(int i = 2;i<k;i++){ parametre~=" "~args[i]; } DosyaDerle(args[k+1]); } } } void ProjeDerle(string pAdi){ if(exists(pAdi)){ dout.writefln(pAdi~" adlı dizin var"); }else{ dout.writefln(pAdi~" adlı dizin yok"); } } void ProjeOluştur(string pAdi){ string projeDizini = getcwd()~"/"~pAdi; mkdir(projeDizini); File dosya = new File(projeDizini~"/main.d",FileMode.OutNew); dosya.writefln("import std.stdio;"); dosya.writefln("void main(){"); dosya.writefln(" writefln('Merhaba');"); dosya.writefln("}"); File index = new File(projeDizini~"/index.txt",FileMode.OutNew); index.writefln("argümanlar: "); index.writefln("derle: main.d"); } void DosyaDerle(string dAdi){ parametre~=" "~dAdi; system(parametre); string çalıştır = replace(dAdi,".d",""); system("./"~çalıştır); } void DosyaOluştur(string dAdi,string pAdi){ string projeDizini = getcwd()~"/"~pAdi; File dosya = new File(projeDizini~"/"~dAdi,FileMode.OutNew); dosya.writefln("class "~dAdi~"{"); dosya.writefln("}"); File index = new File(projeDizini~"/"~"index.txt",FileMode.Append); index.writefln("sınıf: "~dAdi); }
derle.d ye parametre gönderek hem derleyip hemde uygulamayı çalıştıracak.
Çalışma mantığı şu şekil olacak;
1) Proje yaratmak için derle -Y projeAdı
1-1) projeAdı dğerindeki dizini oluşturak içerisine index.txt dosyasını yazacak.
1-2) Yeni ana dosya yaratmak için derle -Yad dosya projeAdı
1-3) projeAdı değerindeki dizine ait index.txt e belirtilen dosyayı ekleyecek.
1-4) Yeni dosya yaratmak için derle -Yd dosya projeAdı
1-5) projeAdı değerindeki dizinin içerisine dosyayı oluşturacak.
2) Proje derlemek için derle -a -w -L-lncurses -p projeAdı
2-1) -a = Argüman. Projeyi derlemek için gerekli argümanların verilmesi için gerekli parametre.
2-2) -p = Proje olduğunu belirden argüman
3) Dosya derlemek için derle -a -w -L-lncurses -D dosya.d
Bence çok faydalı olucak
. Hem ilerde qtd ve gtkd sorunsuz kurulduğunda arayüzünüde yapabiliriz. Ve IDE olarak bir başlangıç yapmış oluruz. IDE nin küçük bir parçası olmasına rağmen çok yardımcı olacağına inanıyorum
Racih
Show profile
Link to this post