Mümkün olduğunda diş teli kullanmadan modeli tercih ediyorum .
Aşağıdaki açıklama uzuncadır. Lütfen bana eşlik et. Bu tarzı tercih etmem için zorunlu bir sebep vereceğim. Ayrıca, her zamanki karşı tartışmanın neden geçerli olmadığını düşündüğümü açıklayacağım.
(Yakın-) boş satırlar atık
Bunun nedeni kapanış parantezinin ekstra bir kod satırı gerektirmesidir - ve açılış parantezinin de stile bağlı olarak değişmesidir. 1
Bu büyük bir anlaşma mı? Yüzeysel olarak hayır. Sonuçta, çoğu insan aynı zamanda mantıksal olarak biraz bağımsız blokları ayırmak için kodlarına boş satırlar koyar ve bu da okunabilirliği büyük ölçüde geliştirir.
Bununla birlikte, dikey alanı boşa harcıyorum. Modern monitörler aslında geniş bir yatay alana sahiptir. Ancak dikey alan hala çok, çok sınırlıdır (dik olarak çevrilmiş bir monitör kullanmıyorsanız, ki bu nadir değildir). Bu sınırlı dikey boşluk olan bir sorun: yaygın bireysel yöntemler mümkün olduğunca kısa olmalıdır ve olmadan tüm bloğu görebilirsiniz böylece o tekabül ayraçları (veya diğer blok ayraçlar) farka bir ekran yüksekliğinin en fazla olması gerektiğini kabul ediyor kaydırma.
Bu temel bir sorundur: Ekrandaki tüm bloğu artık göremediğiniz zaman, kavraması karmaşıklaşır.
Sonuç olarak, gereksiz boş satırları görmezden geliyorum. Tek boş satırların bağımsız blokları sınırlamak için çok önemli olduğu durumlarda (sadece bu metnin görsel görünümüne bakın), ardışık boş satırlar kitabımda çok kötü bir stildir (ve benim deneyimime göre genellikle acemi programcıların bir işaretidir).
Aynı şekilde, basitçe bir destek tutan ve ekonomik hale getirilebilecek çizgiler de olmalıdır. Parantezlerle sınırlandırılmış bir tek deyim bloğu, bir ila iki çizgiyi boşa harcar. Ekran yüksekliği başına sadece 50 hat çizgisiyle, bu fark edilir.
Diş telini çıkarmak belki zarar vermez
Parantezi atlamaya karşı yalnızca bir argüman var: birisi daha sonra söz konusu bloğa başka bir ifade ekleyecek ve parantez eklemeyi unutmayacak, böylece yanlışlıkla kodun anlamını değiştirecek.
Bu gerçekten büyük bir anlaşma olurdu.
Ama benim tecrübeme göre, öyle değil. Ben özensiz bir programcıyım; ve henüz programlama deneyimi benim on yılda, ben olduğunu söyleyebiliriz kez değil bir tekil bloğa fazladan deyimi eklerken parantez eklemek için unutulmuş.
Bunun yaygın bir hata olması gerektiğini bile yanlış buluyorum: bloklar programlamanın temel bir parçası. Blok düzeyinde çözünürlük ve kapsam belirleme, programcılar için otomatik, yerleşik bir zihinsel süreçtir. Beyin sadece bunu yapar (aksi takdirde, programlama konusundaki mantık çok daha zor olurdu). Diş tellerini yerleştirmeyi hatırlamak için gereken ilave bir zihinsel çaba yoktur: programcı ayrıca , yeni eklenen ifadeyi doğru bir şekilde girmeyi hatırlatır ; bu yüzden programcı zihinsel olarak bir bloğun dahil olduğunu işlemiş durumda.
Şimdi, ben am değil parantez atlayarak hataları neden olmaz diyerek. Demek istediğim, hiçbir şekilde ya da böyle bir kanıtımız olmadığı. Sadece zarar verip vermeyeceğini bilmiyoruz .
Bu yüzden birisi bana, bilimsel deneylerden toplanan, pratikte bunun gerçekten bir sorun olduğunu gösteren, zor veriler gösterebilinceye kadar, bu teori “ tam da böyle bir hikaye ” olmaya devam ediyor : hiç test edilmeyen çok zorlayıcı bir hipotez gereken olmayan bir bağımsız değişken olarak kullanılır.
1 Bu problem bazen her şeyi - parantez dahil - aynı satıra koyarak çözülür:
if (condition)
{ do_something(); }
Ancak, çoğu insanın bunu hor gördüğünü söylemenin güvenli olduğuna inanıyorum. Dahası, diş telsiz varyantla aynı problemlere sahip olacaktı, bu yüzden her iki dünyanın da en kötüsü.