Forum: Projeler Genel RSS
D projeleri(miz)
Sayfa:  önceki  1  2  3  4  5 
canalpay (Moderatör) #61
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj ID 495
Bende bir şeyler ekleyecektim de biraz işim var(İlk defa bir işim oluyor dermişim :-D .)
İşim bitince bende bir şeyler yapmak istiyorum. Bu arada 4 boşluk içerletme=Hep girintileme diye duydum. Bir çok kişide öyle duymuştur.

Asıl sormak istediğim Tri tam olarak ne demek :-D Kütüphane Türkçe adınında türkçe olmasında bir zarar göremiyorum. Hatta Türkçe karakterler de içersin(Destekliyordur harelde) . D'nin Unicode Desteğini herkese gösterelim.
Bu mesaj canalpay tarafından değiştirildi; zaman: 2009-09-04, 02:13.
acehreli (Moderatör) #62
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4431 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
github'da projenin ismini trii koymuştum: "Türkçe i ve ı"nın kısası... :)

Google Code'da zaten trii diye bir proje bulunca bozuldum ve ismini çok hızlı bir kararla "Türkçe i'leri"nin kısaltması olarak trileri yaptım. Bence Türkçe'nin standart kısaltması tr olduğu için bu isim aslında Türkçe sayılır. :)

trileri aynı zamanda komik bir şekilde "Türk İleri!" gibi de oluyor ama bunu kimseye söylemeyelim... ;)

Ali
canalpay (Moderatör) #63
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
acehreli:
Bence Türkçe'nin standart kısaltması tr olduğu için bu isim aslında Türkçe sayılır. :)
Google Code'da zaten trii diye bir proje bulunca bozuldum ve ismini çok hızlı bir kararla "Türkçe i'leri"nin kısaltması olarak trileri yaptım

Türkçe de bir tane i var diyen olur ileride.(Ben asla demem böyle bir şey :-D )

Adı ingilizce olsa da fark etmez. Ama merak ettim ve tirileri diye arattım. Ama hiç bir şey bulamadım. Sonra size sordum.

acehreli:
trileri aynı zamanda komik bir şekilde "Türk İleri!" gibi de oluyor ama bunu kimseye söylemeyelim... ;)

Zaten benden başka kimse anlamaz. En fazla D diline merak salanların yüzde(klavyede yazamıyorum) 90'ı filan bilir. Bunlarda en yakın iki arkadaşına söylese. Öyle devam etse  :-D

Aslında merak etmemin asıl nedeni de bir kaç çocuk programının adına benzetmemdi.  :-D

Artık git gittiğine göre svn'ye çalışırsam kötü olmaz gibi değil mi.
canalpay (Moderatör) #64
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Projelerin kodlarını durmadan değiştirsem ama değiştirdiklerim durmadan hatalı çalışsa size büyük bir sorun oluşturur muyum. Öğrendiğime göre önceki sürüm de yer alacak ama size sorun oluşturmaz değil mi.

Sonuçta benim sizin gibi kod yazmamı bekleyemezsiniz. İlk defa düzgün olarak bir projeye başlayacağım, ilk defa takım arkadaşlarıyla çalışacağım, ilk defa svn gibi bir sürümleme yazılımı kullanacağım ve sizin gibi ne başka programlama dillerini hakkında üst düzey bilgim var ne de D hakkında.

Gerçekten bu ilkeleri gerçekleştirmek istiyorum. Ama orada ne sap gibi oturmak istiyorum ne de size engel teşkil etmek istiyorum. Şimdiden svn'yi kurdum hatta belgeler bulup(Svn bana oldukça kolay ve güzel izlemi verdi) çalışmaya başladım. Ama belki doğru çalışan kodu değiştirip daha gelişmiş olduğunu düşündüğüm yanlış yazdığım bir kodu yerleştirirsem büyük sorun olmaz mıyım.
Her ne kadar yerelde denesem de yazdığım kodlar beklemediğim sonuçlar doğurabilir.
acehreli (Moderatör) #65
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4431 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
svn'de büyütecek hiçbir şey yok. :) Ben günlük olarak yalnızca şu komutları kullanıyorum:

- svn update: projenin son halini benim klasörüme getirir

- svn st -q: hangi dosyalarda değişiklik yaptığımı gösterir

- svn diff: bütün değişiklikleri gösterir

- svn commit: çalışmamı depoya yerleştirir

Onların dışındaki olanakları kırk yılda bir kullanılır. svn'in görsel istemci programları olduğunu da biliyorum ama benim çalıştığım ortamlarda herkes (herkes :) ) komut satırını kullanıyor.

Programı bozma konusunda da endişen olmasın; çünkü proje ilkeleri gereği, depoya kod göndermeden önce şunların sağlanması şart:

- Kod, programcı derlediğinde birim testlerden geçecek (dmd -unittest ...)

- Projenin diğer üyeleri kodu inceleyecekler (code review) ve gerekirse önerilerde bulunacaklar

Kod ancak ondan sonra svn commit edilecek. Bunlar sağlam geliştirme takımlarının ilkeleri; ben uydurmuyorum. :)

Bu belgeleri yazmak için biraz daha zamana ihtiyacım var... :)

Ali
canalpay (Moderatör) #66
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Gerçekten svn'de büyütecek bir şey yok. Ama aslında konsoldan çalışmak daha rahat olmasına karşın ben windowsta gui ortamında bunu yapmaya karar verdim. Proje için neredeyse bütün hazırlıkları yaptım. Cmd ile elle derleyeceğim. Kod yazmak için Geany kullanacağım. Svn'yi hazırladım. Cmd'nin Türkçe çıktı verememe işini hallettim. dmd'yi windows'un yoluna ekledim. Geride bir kaç pürüz kalmıştır ama pek bir şey kalmadı gibi.

Şimdi size soru sormaya başlıyorum.

module hello;
import std.stdio;
import std.cstream;
import std.string;
void main(){}
string toUpperG(string giriş) {
    string I="I";
    string İ="İ";
    string i="i";
    string ı="ı";
    giriş=replace(giriş , ı , I);    
    giriş=replace(giriş , i , İ);            
    string giriş_son;
    giriş_son=toupper(giriş);
    return giriş_son;
}
İlk olarak sormak istediğim oraya main koymadan işlem yapamayacak mıyız?  İlla mainde işimiz olmasada o kodları koyacak mıyız(Benim bildiğim o main olmazsa program da olmuyormuş. Onu silip derlediğimde bunun doğru olduğuna kara verdim :-) ) ? Yoksa toUpperG fonksiyonunu main'emi koyacağız. Harelde o main boş kalmayacaktır. Nerede hatam varda o main'i boş bırakmak zorunda kalıyorum. Yoksa boş kalması doğal mı(Bana değil gibi geliyor) ?

Bir diğer sorum module hello; satırını en başa yazdık. Harelde böylece hello adlı bir modülümüz oldu. Ben bunu hello.d diye kaydettim. Deneme adlı yeni bir d projesi yazıyorum ve buna dahil etmek istiyorum. Bunun içinde import hello; diyorum. Ve  toUpperG fonksiyonunu çağırıyorum. dmd deneme.d diye derliyorum. Ve teorik olarak sonunda muradıma eriyorum. Ama bir dakka, hemencecik hata veriyor. Buna göre nerede hata yaptığımı belirtebilir misiniz. En başından beri hatalıysam nasıl yapmam gerektiğini söyleyebilirmisiniz.

Bunlar sağlam geliştirme takımlarının ilkeleri; ben uydurmuyorum. :)
Yok zaten mantıklı düşününce böyle olması gerekiyor. Ama bizim bu kadar denetçi olacağımızı düşünemedim.
- Kod, programcı derlediğinde birim testlerden geçecek (dmd -unittest ...)


Acaba bu unittest nasıl bir şeydir. Ne yapar ki biz böyle test ediyoruz. Harelde unittest o an çalışması gerekmeyen kodları da kontrol ediyordur. Birde unit testten nasıl geçireceğiz. dmd -unittest projeAdı.d şeklinde mi?

Geleneksel soru yazarak saçmalama festivalim devam ediyor.  :-)
acehreli (Moderatör) #67
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4431 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Sorularının çoğunun yanıtı şurada var:

  http://ddili.org/forum/post/322

Tamamen şaka yaparak: Benim yazdıklarımı okumadığını farketmiş oldum... ;)

Yani hello.d yanında bir de deneme.d olacak ve ikisini birlikte derleyeceksin. main, deneme.d'nin içinde olacak.

Aslında projeyi hepimiz ayrı ayrı "dmd ..." yazarak derlemeyeceğiz. Komut satırında 'make' yazacağız ve derleyicileri çağırma işini make halledecek. Bunu yapan Makefile da projenin bir parçası olacak.

Ali
canalpay (Moderatör) #68
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Tamamen şaka yaparak: Benim yazdıklarımı okumadığını farketmiş oldum... ;)
İk önce o sayfayı defalarca okudum. Hatta module'yide orada gördüm. Ama açıkcası yazdığınız koddan olsun anlatmaya çalıştığınız şeylerden olsun hiç bir şey anlamadım.
Harelde gece gece anlama özürlü oldum. Nasıl yapılacağı hakkında anlatımlı basit bir örnek istersem sizi çok mu yorarım.

Ayrıca assert mi ne var o ne demek.
acehreli (Moderatör) #69
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4431 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
assert, "bunun böyle olduğunu iddia ediyorum" demek gibidir. Örnek:

assert(toUniUpper('a') == 'A');

Yani yazdığımız kod doğru ise, toUniUpper('a')'nın sonucu 'A' olacaktır. dmd'yi -unittest diye başlatınca, dmd, bütün

unittest
{
    ...
}

bloklarındaki kodları çalıştırır ve iddiamız yanlış çıkınca hata verir.

Orada iki dosya var. Birinci bölümü tr klasörü altında uni.d ismiyle kaydet, ve içinde main olan ikinci bölümü de deneme.d olarak.

Yazının en sonunda gösterdiğim şu şekilde derlersen:

dmd -unittest -w deneme.d tr/uni.d

Hatasız çalışır. Sonra tr.uni içinde örneğin
c = 'İ';
ifadesini
c = 'X';
olarak değiştir ve tekrar derle. Bu sefer derleyici hata verecek ve sen de toUniUpper'ın içinde bir hata yaptığını anlayacaksın.

Ali
erdem (Moderatör) #70
Üye Tem 2009 tarihinden beri · 902 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #68
canalpay:
Ayrıca assert mi ne var o ne demek.

Assert programcının kendi hatalarını yakalamak için kullandığı bir olanak. assert sözcüğü programcılıkta 'söylemek' 'ileri sürmek' 'iddia etmek' anlamında kullanılıyor. Programlarımızı yazarken belirli varsayımlarda bulunur. Bir işlevi çağırdığımızda bazı ön koşulların doğru olduğunu düşünürüz. İşte 'assert'i denenmesine gerek bile olmayan, var olduğundan emin olduğumuz  durumlarda kullanırız.

Oradaki örneklerde örneğin 'A' karakterinin küçüğünün 'a' olduğundan eminim diyoruz. Yani bir nevi otokontrol mekanizması gibi bir şey.

Bu arada beni de projeye ekleyebilirmisiniz lütfen :)

Ali bey de hep ben cevap yazana kadar mesajı yazmış oluyor =)
canalpay (Moderatör) #71
Kullanıcı başlığı: Can Alpay Çiftçi
Üye Tem 2009 tarihinden beri · 1133 mesaj · Konum: İzmir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Ali bey de hep ben cevap yazana kadar mesajı yazmış oluyor =)
Aynı şeyi sende bana yapıyorsun.  :-)

Siz burada yazarken bende biraz araştırdım. Evet biraz unittest'i anladım ama bu yazılar çok iyi oldu. Çok güzel olmuş elinize sağlık.

Gerçekten bu unit test olsun bu assert olsun çok çok güzel şeylermiş. İnsan bu kodları görünce ve sizi görünce bu zamana kadar boş yaşadı sanıyor ( Doğrusu yaşım sizinkinden çok daha genç  :-D ). Ben ise böyle bir şey olsa bunları teker teker denerdim :-)
erdem (Moderatör) #72
Üye Tem 2009 tarihinden beri · 902 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj ID 479
acehreli on 2009-09-03, 13:36:
Pardus'unki de Bugzilla'ymış ama bende İngilizce açıldı... (Bugzilla, dil için tarayıcının 'Accept-Language' HTTP tag'ine bakıyormuş.)

Ama Bugzilla'nın sitesinde Türkçeleştirilmiş gibi görünmüyor. Belki Pardus'çular kendileri yaptılar... (?)


Bu arada projeyi artık ddili sunucularında tutmaktan vazgeçtiğimizi biliyorum. Ama gene de Türkçe bugzilla'ya http://svn.uludag.org.tr/viewcvs/trunk/bugzilla/ ile web'den bakabiliyor,

svn co  http://svn.uludag.org.tr/uludag/trunk/bugzilla/

komutu ile de kendimize bir kopya edinebiliyormuşuz.
erdem (Moderatör) #73
Üye Tem 2009 tarihinden beri · 902 mesaj · Konum: Eskişehir
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Daha önce bu sayfada verdiğim kodu derlerken bir sürü bağlayıcı hatası alıyorum neden olabilir sizce.. D-porting kütüphanesi kullanıyorum ve anladığım kadar bu kütüphane de D2'ye destek vermiyor. O yüzden dmd v1.030 kararlı olan derleyicisini kullanıyorum.

dmd deneme.d -I/home/erdem/SDL/
deneme.o: In function `_D6deneme10resimYukleFPaZPS9SDL_video11SDL_Surface':
deneme.d:(.text._D6deneme10resimYukleFPaZPS9SDL_video11SDL_Surface+0x10): undefined reference to `IMG_Load'
deneme.d:(.text._D6deneme10resimYukleFPaZPS9SDL_video11SDL_Surface+0x22): undefined reference to `SDL_DisplayFormat'
deneme.d:(.text._D6deneme10resimYukleFPaZPS9SDL_video11SDL_Surface+0x2d): undefined reference to `SDL_FreeSurface'
deneme.o: In function `_D6deneme11yuzeyUygulaFiiPS9SDL_video11SDL_SurfacePS9SDL_video11SDL_SurfaceZv':
deneme.d:(.text._D6deneme11yuzeyUygulaFiiPS9SDL_video11SDL_SurfacePS9SDL_video11SDL_SurfaceZv+0x2d): undefined reference to `SDL_BlitSurface'
deneme.o: In function `_D6deneme9ilklendirFZv':
deneme.d:(.text._D6deneme9ilklendirFZv+0x9): undefined reference to `SDL_Init'
deneme.d:(.text._D6deneme9ilklendirFZv+0x1c): undefined reference to `SDL_SetVideoMode'
deneme.d:(.text._D6deneme9ilklendirFZv+0x3a): undefined reference to `SDL_WM_SetCaption'
deneme.o: In function `_D6deneme17kaynaklariGeriVerFZv':
deneme.d:(.text._D6deneme17kaynaklariGeriVerFZv+0x4): undefined reference to `SDL_Quit'
deneme.o: In function `_Dmain':
deneme.d:(.text._Dmain+0x33): undefined reference to `SDL_Flip'
deneme.d:(.text._Dmain+0x52): undefined reference to `SDL_PollEvent'
collect2: ld returned 1 exit status
--- errorlevel 1

Burada da iki tane SDL_d.lib ve SDl.lib isimli dosya var. Derleyiciye bu dosyaları kullanması gerektiğini nasıl söyleriz?
acehreli (Moderatör) #74
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4431 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Komut satırına yazman yeterli olmalı:

dmd -I/home/erdem/SDL/ SDL_d.lib SDl.lib deneme.d

Tabii ki emin değilim: gcc filan olsa öyle olurdu... :)

Ali
Mengu (Moderatör) #75
Kullanıcı başlığı: NONSERVIAM
Üye Tem 2009 tarihinden beri · 347 mesaj · Konum: Dersaadet
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
github'dan selamlar getirdim :)
http://www.mengu.net - some kind of monster
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Sayfa:  önceki  1  2  3  4  5 
Forum: Projeler Genel RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-07-27, 01:49:04 (UTC -07:00)