Eski stilde ( K & R stili ) (girintili olduğu sürece) yanlış bir şey yoktur. Bu tür sözdizimine sahip dillerde çokça kullanılır (C, Java, Perl).
Örneğin, Java Standardı ve oldukça okunabilir IMO'dur (doğru girintili olduğu sürece). [Mql4, C stili sözdiziminden büyük ölçüde ödünç aldığından, bu diğer dillerden bahsetmenin uygun olduğunu düşünüyorum]
Yine de girintili olmalıdır:
if (a==b){
Dothis;
Dothis;
etc;
}
2. örnek ( Allman stili ) ayrıca bazıları tarafından tercih edilir ve genellikle daha okunaklı olduğu kabul edilir (yine doğru girinti ile)
if (a==b)
{
Dothis;
Dothis;
etc;
}
ancak reddettiğiniz yöntem başka yerlerde oldukça popüler (okunabilirlik nedenleriyle)
Son örneğiniz hiç hoşuma gitmedi.
allman stili ayrıca, özellikle karmaşıksa başka ağaçlarda eksik parantezleri belirlemek daha kolaydır.
Brace stili bir programcı tercihidir, gerçekten doğru ya da yanlış bir yöntem Imo yoktur. K&R stili en iyisidir ;-). Neden bir açılış ayracı için fazladan bir satır alayım .... gerçekten umurumda olan şey, hangi if{ifade}'ye ait olduğu. Neyin daha iyi ve anlaşılması daha kolay göründüğünü örnekleyin.
if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { } } } } } } } } } }
Veya bu sürüm:
if (.............................){ if (.............................){ if (.............................){ if (.............................){ if (.............................){ if (.............................){ if (.............................){ if (.............................){ if (.............................){ if (.............................){ } } } } } } } } } }
Ve daha da iyisi.
if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) return if ( !.............................) returnImo, son versiyon gerçek hayatta nasıl yazdığıma daha doğal geliyor. Satır satır.
Bunu şöyle yapıyorum:
if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) { if (.............................) }}}}}}}}}
Tartışmayı seviyorum.
Peki ya else ifadesini kodlama tercihi ? Bazı editörler bu tür blokları katlayamıyor/açamıyor olsa da ben ilk örneği tercih ediyorum. İkincisi uzlaşmadır. Üçüncüsü daha da tutarlı, ancak okunamıyor.
if (cond) { command; } else if (cond) { command; } else { command; }
veya
if (cond) { command; } else if (cond) { command; } else { command; }
veya
if (cond) { command; } else { if (cond) { command; } else { command; } }
Başka pek kullanmıyorum. Bir süre önce başka kullanmak zorunda kaldığım bir sorun vardı (sorunu hatırlayamıyorum). Başka kullandığımda, böyle bir şey oldu.
if (cond) { command; } else if (cond) { command; } else { command; }
Ancak şimdi, yukarıdaki gibi bir şeyi kodlama konusunda ilk öğrettiğim olurdu.
if ( cond ){ command; return; } if ( cond ){ command; return; } command;
Evet, üç satırlı bir kodu fonksiyona çevireceğim 8)))
böyle olursa yaparım
Bir dereceye kadar önemli değil, önemli olan seçilen stili uygulamanın tutarlılığıdır. . . hepimizin kendi tercihleri var tabi
Raptor'a katılıyorum. Hiçbir şey hakkında konu. İnsanlar kodlarını SRC kullanmadan buraya gönderdiklerinde çok daha fazla sinirleniyorum. Yardım istemeyecekleri sürece programlarını nasıl kodlayacakları onlara kalmış.
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
İnsanlar kodlarını yayınladıklarında bunu çok görüyorum.
if (a==b){ Dothis; Dothis; etc; }
Şimdi, diğer insanların kodunun kısa parçalarını okurken bu bir sorun değil.
Ancak kodları çok olduğunda, takip etmeyi neredeyse imkansız hale getirebilir.
Birçoğunun kendi kodunda hata bulmakta zorluk çekeceğini düşünürdüm.
Bu neden olmasın?