Forum: Projeler Genel RSS
Standartlar ne olacak ?
Sayfa:  önceki  1  2  3  4  sonraki 
acehreli (Moderatör) #16
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4389 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj ID 585
Hizalama olarak benim bu güne kadar kullandığım zaten çok yaygın olan C++ kodlama biçimi. Son iki senedir, çalıştığım firmada kullanılan bir biçime alıştım. Tabii ki baştan sevmediğim için biraz zor geldi ama şimdi D.ershane'de de kullanıyorum. if, while, vs. gibi kod bloklarında açma parantezini anahtar sözcükle aynı satıra yazmak:

    if (bir_şey) {
        şunu_yap();
        falan();
        filan()
 
    } else if (başka_bir_şey) {
        bunu_yap();
        su_iç_gel();
 
    } else {
        diğer_şeyi_yap();
        çay_demle();
    }

eskiden kullanıp sevdiğim:

    if (bir_şey)
    {
        şunu_yap();
        falan();
        filan()
    }
    else if (başka_bir_şey)
    {
        bunu_yap();
        su_iç_gel();
    }
    else
    {
        diğer_şeyi_yap();
        çay_demle();
    }

Ali
canalpay (Moderatör) #17
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 584
Erdem her yerde kodlama standartı deniyor. İngilizce stil dendi diye bu olguyu değiştiremeyiz. Değiştireceksek sadece Türkçe sözcük kullanma adına değiştirebiliriz. Ben açıkca stil lafını hem beğemmedim hemde Türkçe düzen bile stilden daha  çok kullanılırken stil denmesine karşıyım. Ayrıca bir kelime ingilizceden Türkçe'ye çevrilirken sözcükten bakılıp çeviremeyeceğimizi iyi biliyoruz. Bu yüzden stil demek hiç hoş olmaz. ;-) (Bu arada yazımı okuyunca sert gibi geldi. Acaba sert mi olmuş. Eğer öyle anladıysan öyle olmadığını bil Erdem.)

Bu arada _ ile başlamasını ilk başta karşı çıktıysamda şimdi olabileceğini düşünüyorum. Ama bu sadece değişkenlerde mi kullanılcak. Tek değişkenlerde kullanırsak daha iyi gibi. Ayırt edici olur.

erdem:
Ben bunun tam tersine _ en sonda olduğu zaman daha kullanışlı olduğunu düşünüyorum. uint ayakkabiNumarasi_ gibi .. Yanılmıyorsam siz de sınıf üyelerini bu şekilde gösteriyordunuz en son hatırladığım kadarıyla  ;-)

En başa yazmamızın iki nedeni var.
1. Editörden değişkenlerin hepsinin çıkması için.
2. Aynı hizada görünüp kodların daha hoş gözükmesi için.

Ama sonuna koymak bence kod yazarken sadece bize zaman kaybına uğratacaktır. Ama şöyle birşey yaparız. _ karakterini sınıflarda adın sonuna koyarız ve sınıf olduğunu gözümüze sokmuş oluruz.


Bu arada Ali Bey D için hangi editörü kullanıyorsunuz(Sanırım emacs değil mi?). Bende sizin kullandığınız editörü kullanmaya karar verdim. Tabi platform bağımsızlığı varsa(linux'ta çalışıyorsada kullanabilirim).
canalpay (Moderatör) #18
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:
    if (bir_şey) {
        şunu_yap();
        falan();
        filan()
 
    } else if (başka_bir_şey) {
        bunu_yap();
        su_iç_gel();
 
    } else {
        diğer_şeyi_yap();
        çay_demle();
    }

Anlaşılan şirketiniz işi biliyor. :-) Çünkü bende aynı şekilde kullanıyorum. En çok kullanılan biçim de budur harelde. Hatta php'de if else seçimini yaptırırken en çokta else yazmayı severdim :-) Hatta gariptir, kodları böyle göremeyince kodu bir değişik görüyorum. Ama önceki yazış biçiminizde sadelik açısından en iyisi.
acehreli (Moderatör) #19
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4389 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Hızlıca bir Google araması yaptım ve "Kodlama Standardı"nın bu konuda zaten kullanıldığını gördüm. Öyle kalsın...

_ karakteri yalnızca üye değişkenlerle ilgili bir konu. Ben bugüne kadar hep isimden sonra yazdım. m_ ile başlaması kod tamamlayıcıda bir yarar sağladığına göre, _ ile başlaması da aynı yararı sağlar. Eğer öyleyse _ kaarakterin başa yazmaya da varım. Benim için hiç farketmiyor...

Üye değişkenleri ayrı yazmamızın en büyük nedeni, bir üye fonksiyona bakarken, yapılan işlemin bu nesnenin durumunda bir değişiklik yapıp yapmadığını hemen görebilmek:

sıcaklık = 37.2;             // yerel nesne
sıcaklık_ = sıcaklık * .9    // nesne değişiyor!
_sıcaklık = sıcaklık * .9    // nesne değişiyor! 

Sınıf ve başka tür adları baş harfi büyük olarak yazılıyor:

ÖğrenciKayıt ögrenci;

Ben herşey için Emacs'i kullanıyorum. Emacs platformdan bağımsız. D ile kullanmak için, eğer hatırlamıyorsan diye:

http://ddili.org/kurulum/emacs_d-mode.html

Ali
Avatar
esatarslan52 (Moderatör) #20
Üye Haz 2009 tarihinden beri · 142 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #16
Standart ile stil'in farklı manaları var. Bizim yaptığımız biraz daha biçimsel olduğu için bana da stil daha yakın geliyor. Fakat illaki de birini seçmeye gerek yok. Her ikisini de kullanalım.

acehreli:
    if (bir_şey)
    {
        şunu_yap();
        falan();
        filan()
    }
    else if (başka_bir_şey)
    {
        bunu_yap();
        su_iç_gel();
    }
    else
    {
        diğer_şeyi_yap();
        çay_demle();
    }

Ben bu şekilde yazıyorum. Kodları okuması ve algılaması daha kolay geliyor.
emre413 (Moderatör) #21
Kullanıcı başlığı: Celal Emre ÇİÇEK
Üye Tem 2009 tarihinden beri · 62 mesaj · Konum: Kırıkkale
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Merhaba arkadaşlar mesaj yazmıyorum diye konuları takip etmediğim sanılmasın hemen hemen her gün konuları takip ediyorum. Kodlama şekli olarak:

void ülkerBizimFonksiyonumuz() // :)
{
   //Fonksiyonlarla ve Değişkenlerle ilgili açıklamalar
   int bizimSayımız = 0;
 
   while(bizimSayımız <= 100) {
 
        if(bizimSayımız == 50) {
            writeln("Yarıya Gelindi");
        }
        else if(bizimSayımız == 100) {
            writeln("Sona Gelindi");
        }
 
        bizimSayımız++;
   }
}

bana daha uygunmuş gibi geldi.
Ayrıca projenin isminin trileri olması güzel ancak adın anlaşılması biraz zaman alıyor (ya da ben fazla kalın kafalıyım) ilk okuduğumda başka bir dilden gelen bir terim gibime geldi keşke TRileri, tr_ileri ya da trIleri falan gibi daha anlaşılır olsaydı (en azından forumda)
Bu mesaj emre413 tarafından değiştirildi; zaman: 2009-09-07, 19:41.
canalpay (Moderatör) #22
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ı
esatarslan52:
Standart ile stil'in farklı manaları var. Bizim yaptığımız biraz daha biçimsel olduğu için bana da stil daha yakın geliyor. Fakat illaki de birini seçmeye gerek yok. Her ikisini de kullanalım.

Tabi ikiside kullanılabilir ama şuan biçimi tartıştığımız için sana biçimsel geliyor. Daha tartışacağımız şeyler var.

Emre Ali Beyin şirketinin bildiği bir şey vardır.(Daha doğrusu o biçimi daha çok seviyorum :-D ). Seninki Ali Bey'in şirkette kullandığıyla daha öncekinin karışımı olmuş.

Bu arada forum çoklu anketi destekliyor mu ? Hepsini ankete ekleyip beğendiklerinizi seçin diyelim. En çok oy alanı kullanalım. Ddili.org ne kadar demokratik gösterelim. :-)

Şimdilik ben şöyle düşünüyorum :


Değişken, sınıf, ... Gösterim Şekli;


-Sınıf isimlerinde her kelimenin baş harfi büyük, kelimeler bitişik yazilir ( Örnek: TestSınıfı, BenimSınıfım, Mesaj, StringToXml gibi.)

-Sınıf üye değişken isimleri ilk kelimenin baş harfi küçük, diğer kelimelerin baş harfi büyük ve bitişik olacak şekilde yazılır.  ( benBirKüçükDeveyim, ilkDeğer, model, enKüçük gibi. )


Değişken, sınıf, ... Adlandırma Şekli;


-Sınıflar adlandırılırken sadece ad kullanılacaktır(Eylem yok)

-Değişken adlandırılırken sadece ad kullanılacaktır(Eylem yok)

-Fonksiyonlar adlandırılırken ad+eylem kullanılacaktır.

-Türkçe karakterler olduğu gibi yazılacak(Ali Bey'in Türkçe klavyesi yok ama sorun yok değil mi?)

-Türkçedeki ekler getirelecek( Örneğin her zaman değişken ismi ödev değil ödev(im) şeklinde tanımlanacak.)


Kodlama Şekli;


-Kodlar girintili yazılacaktır.

-Küme ayracı deyim satırının orada açılacaktır.


Geliştirme Şekli;



-Kodlara yorum(// tek satır için /*
çok satır için
*/) eklenecektir.

-Kodlara birim test eklenecektir.

-Kodlar en az bir kişi tarafından incelenecektir.


Buradaki taslağa göre sizce ne eksik kaldı, ne fazla, ne eklenmesi gerekiyor tartışalım.
canalpay (Moderatör) #23
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ı
Şimdilik ben buradan başladım. http://code.google.com/p/dbetikevi
Zip dosyasını download'a koydum. Ne eksik ne yarım bakın.
Stringdeki toupper ile tolower dosyalını koydum.
Avatar
esatarslan52 (Moderatör) #24
Üye Haz 2009 tarihinden beri · 142 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Türkçe ek kullanma konusunu biraz daha tartışabilirz. Ben hala eksiz kullanmak daha iyi olur diye düşünüyorum.

Sınıf için değişken isimlendirmelerinin başında  _ veya başka(m,d vs..) bir karakter kullanmalıyız.
canalpay (Moderatör) #25
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ı
esatarslan52:
Sınıf için değişken isimlendirmelerinin başında  _ veya başka(m,d vs..) bir karakter kullanmalıyız.


Evet olabilir. Ali Beyin önerdiği gibi _ koyabiliriz. Görünümüde o kadar kötü olmaz.

esatarslan52:
Türkçe ek kullanma konusunu biraz daha tartışabilirz. Ben hala eksiz kullanmak daha iyi olur diye düşünüyorum.


Eksiz kullanımın anlamda bazı anlamsız daralmalara neden olabilir. Hemde ekli kullanılsak daha çok değişken adı türetebiliriz. Bunun sonucunda değişken ismi biraz uzun olur. Ama  o kadarsa olsun diyorum.
Tabii başka kişilerin önerileri de önemli. Yoksa neden taslak oluşturup burada fikrinizi sorayım ki ?
acehreli (Moderatör) #26
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4389 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Can'ınkilere ekler:

Üye nesnelerin değişkenlerin isimlerinin sonuna (veya başına(?)) _ karakteri gelecek: _benBirKüçükDeveyim.

Bunun iki nedeni var.

1) Diğer değişkenlerin tanımları hemen bu fonksiyon içinde görünüyor: ya parametre olarak gelmişler, ya da yerel değişkenler. Ama üye nesneler bir kaç ekran yukarıda ve sınıf kapsamındalar. Bu fonksiyondaki kodu okurken onların üye olduğunu hemen görebilmek için bir süsleme gerekiyor.

2) Üyeye yapılan değişiklik, bu nesnenin durumunu (veya değerini) değiştirmektedir. Yerel değişkenlere yapılanlardan daha farklı bir etkisi var. Üyenin ismindeki bu süs, bize bunu da anlatıyor.

Türkçe eklerinden emin değilim. Örneğin adet bildirmek için öğrenciAdedi yerine öğrenciAdet daha iyi mi? Yazım kuralları gereği sonundaki t'nin de d'ye dönüşmesi filan... :)

Tam şunları düşünüyordum ...

Numara bildirmek için sonuna No (?): öğrenciNo

öğrenciİsmi
öğrenciAdedi
öğrenciNumarası

öğrenciİsim  // böyle bir standart geliştirebiliriz
öğrenciAdet
öğrenciNo


... bir şey farkettim:

Aslında çok güzel bir kural ortaya çıkıyor: Eğer çok sayıda değişkeni 'öğrenci' gibi bir önekle adlandırma ihtiyacı hissediyorsak, belki de bir Öğrenci sınıfı yazma zamanı gelmiştir demektir:

struct Öğrenci
{
    isim;
    numara;
}

Böylece isim konusu da rahatlıyor.

Girinti adımı 4 karakterdir, TAB değil. Her durumda

Kod satırı uzunluğu (?) İnanmayacaksınız ama bu devirde bizde hâlâ 80 karakter! :D İsterseniz biraz esnetebiliriz, ama 100'den uzunu kabul etmem. :) Çünkü uzun kod satırını gözle izlemek zor oluyor. Onun yerine, aynı satırı bir kaç satır olarak yazmak her şeyi derli toplu bir araya getiriyor.

Fonksiyon açıklamaları Her fonksiyonun başında, ne iş yaptığını açıklayan açıklama bölümü olacak

Kod satırları aralarındaki açıklamalar: Kod, öncelikle açıklama gerektirmeyecek kadar açık yazılacak, ama gereken yerde de ne olup bittiği mutlaka anlatılacak. Şöyle komik durumlar olmayacak :)

öğrenciAdet -= mezunAdet; // mezunların sayısını toplam öğrenci sayısından çıkart 

Hadi ya? :p Gerçekten komik... :D

Ali
acehreli (Moderatör) #27
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4389 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Proje sitesine yalnızca kaynakların koyulması düşünülür. Onlardan oluşan dosyaların orada durmasına gerek yok. .obj, .exe, .map orada olmamalı.

Hatta virüslü olabilecekleri için hayatta dokunmam... :)

Ali
acehreli (Moderatör) #28
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4389 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Esat da ek konusuna değinmiş. Keşke Türkçe kod deneyimim olsaydı; hangisinin iyi olduğunu bilemiyorum. :/

Ali
canalpay (Moderatör) #29
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ı
Harelde _ karakterini başa yazacağız.
acehreli:
Türkçe eklerinden emin değilim. Örneğin adet bildirmek için öğrenciAdedi yerine öğrenciAdet daha iyi mi? Yazım kuralları gereği sonundaki t'nin de d'ye dönüşmesi filan... :)


Türkçe ingilizce gibi bir dil değil. Türkçe de herşey belirli bir kurala bağlı. Bunun için bir sorun olmaz. Tabii hala tartışalım. Ve belirli kararları alırız.
struct Öğrenci
{
    isim;
    numara;
}

ve class yapılarını hani biraz anlatsanız kötü olmaz :-)

acehreli:
Fonksiyon açıklamaları Her fonksiyonun başında, ne iş yaptığını açıklayan açıklama bölümü olacak

Kod satırları aralarındaki açıklamalar: Kod, öncelikle açıklama gerektirmeyecek kadar açık yazılacak, ama gereken yerde de ne olup bittiği mutlaka anlatılacak. Şöyle komik durumlar olmayacak :)

öğrenciAdet -= mezunAdet; // mezunların sayısını toplam öğrenci sayısından çıkart


Bunu olduğu gibi kabul ediyorum.
acehreli (Moderatör) #30
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4389 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #28
Emre, seni de projeye eklemeye çalıştım ama Google hesabın gerekiyormuş. :( Eğer bu başkaları için de sorun oluşturacaksa yol yakınken Google'ı boşverebiliriz de. :)

Ali
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  sonraki 
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-03-23, 05:22:34 (UTC -07:00)