Fonksiyonu parametre değişkenler için adlandırma kuralları?

5 Cevap php

Bir adlandırma kuralı veya fonksiyon parametreleri nasıl isim belki bazı rehber var mı?

Eskiden beri, ben bunu böyle yapıyor:

function divide( $pDividend, $pDivisor )
{ ... }

Bu şekilde hep değişkenler parametre olarak geçirilmiş olan bileceksiniz.

(Bu kişinin PHP, ama çoğu programlama dilleri için geçerli olmalıdır)

Buna karşı önemli bir nedeni var mı?

Bunu yapmak için daha iyi bir yolu var mı yoksa sadece böyle bir adlandırma düzenleri önlemek için muhtemelen en iyisidir?

5 Cevap

Eğer:

  1. Lütfen fonksiyonları / yöntem (olması gerektiği gibi) iyi yazılmış ve kısa
  2. değişken isimleri yeterince açıklayıcı

Bu uygulama gerekli değildir.

Eğer bu gerekiyorsa, yazılı kodu :) vb (fonksiyonlar / yöntem çok uzun), şifreli bir değişken / fonksiyon isimleri, kötü OO uygulamaları, kısayolları, kod borçları, yeterli okunabilir olmadığı anlamına gelir

Bu yüzden kod gelişmiş / refactored gerektiğini bir sinyal olacaktır.

I) düzgün değişkenleri adlandırma adlandırma-şey-cekti o bütün bölüm 11. bulunuyor haklı ilişkin Kodu Complete tavsiye edilir alarak düşünüyorum:

  • Ya da "yer tutucu" ya da "test" (sadece bir yineleme için olmadığı sürece) onu j, k, i, m, n adını vermeyin. "Test" çalıştığı zaman, ben sık sık bu listede oldu her yerde değişkeni yeniden adlandırmak için zaman yapmayız.

  • Kodun işlevinden ayrı olan bir descriptive adı diyoruz, yani "EmployeeComments" değil "XMLEmp_Comment_File" bu bilgilerin (XML, dış dosyaya) bir çok değişebilir çünkü, ama bu programın "Çalışan Yorumlar" ile çalışma olmaz

  • broad and human readable mümkün böylece İngilizce kodlama (ya da dil) değil $ j = $ k / sqrt ($ pi) konum olarak tutun; ya da eşit derecede anlamsız bir şey.

Özel parametrelere gelince, ben P notasyonu hiç kullanmadım. Ben fikir gibi, ama onları adında eğer doğru onlar fonksiyonu için parametreler açık olmaz mı?

Bazı insanlar bir değişkenin ilk bölümü (dizi = dizi) ve sonra aşağıdaki kelimeleri büyük harf veri türüyle, bir stil parametreleri kendi işlevini devam edeceğini duydum:

$arrFormData

onların değişken kalan kelimeler bütün alt harf farklı bir tarzda, hiçbir tip tanımı ve deyişle nerede çizgi ile ayrılır.

$form_data

Şahsen ben bir fonksiyonun ilk iki satır, ben onlar ne bekliyoruz emin yapma, veya bir istisna atıyorum sırf benim değişkenlerin kalanıyla aynı benim değişkenleri tutmak eğilimindedir. Bundan sonra, gerçekten tüm yollarla, bunu bir şekilde yazmak için net kodunuzu devam ederse, orada yerel değişkenler ve geçirilen değişkenler arasında bir fark olabilir ama olmamalı.

Değişkenin bildirimi uzak bunu kullanmak kodundan olabilir, çünkü ben, üye alanlardan veya statik alanlar gibi bazı değişkenler için adlandırma var. Genellikle değişken tanımı yaklaşık on satır uzaklıkta gibi parametreler veya yerel değişkenler için ben, bir şey kullanmayın.

"IDE vurgulayarak sağlar" özellikle tüm IDE kamp insanlar, herhangi bir önek veya sonek sevmediğim için daha fazla almak gibi. Eh, o bana yardım etmez, ve ben renk gibi anlamsal bilgi sadece sahip sevmediğim. Ancak değişken adı en önemli bilgi net yapmak gerektiği gibi, ben, orada noktasını görebilirsiniz ve bu değilse, hiçbir şey yardımcı olur.

Yani, bu tarz hakkında daha fazla olduğunu. İyi adlandırma iyi önek daha önemlidir. Düzenleri için: ona sopa, birini seçmek. Bu kötü bakım geliştirici yardımcı olacaktır. Evet, bu da genellikle böylece tek bir deyim bloğu etrafında {} tercih ve insanlar, ancak yardımcı olur.

Benim için karışıklık için büyük şans üye işlevleri bulunmaktadır. Mümkünse, ben arasındaki adlandırma farklılıkları görmek istiyorum:

  • yerel değişkenler: index
  • sınıf üye değişkenleri: m_index
  • sınıf statik değişkenler: ClassIndex
  • global değişkenler: INDEX

Bu daha kolay nerede neler izini yapabilirsiniz. Ancak, bu sözleşmeler yapmak veya üzerinde neler olup bittiğini anlamaya yeteneğini kırmak kalmamak yeterince fonksiyonları kısa yapmak için iyi olduğunu Toto katılıyorum.