Standardy kodowania zgodne z Zend, cz. 1/3

Na stro­nie Zend Frame­work macie podane konwencje/standardy doty­czące forma­to­wa­nia kodu, nazew­nic­twa i doku­men­ta­cji. Chciał­bym pewne rzeczy rozsze­rzyć w opar­ciu o własne obser­wa­cje kodu ZF i zale­ce­nia twórców/ekspertów (głów­nie z ich blogów). Nie będę oczy­wi­ście bawił się w tłuma­cza. Mam nadzieję, że ten 3 częściowy wpis się komuś przyda. Dzielę go z braku czasu…

1. Forma­to­wa­nie kodu

  • każda klasa w osob­nym pliku, bez znaku kończą­cego skrypt ?>
  • nie wolno używać skró­co­nej formy <? ?> lub <% %>
  • wcię­cia mają liczyć 4 spacje, bez tabu­la­to­rów (mądrzej­sze edytory same zamie­niają taby na spacje)
  • długość poje­dyn­czej linii kodu powinna wyno­sić poni­żej 80 znaków, w pewnych okolicz­no­ściach dopusz­czalne jest więcej, do 120 znaków (abso­lutny limit)
  • nazwa klasy zgodna ze struk­turą kata­lo­gów poprze­dzie­la­nych podkreśl­ni­kiem, czyli np. class Spiechu_Captcha, za to plik w tym przy­padku będzie się nazy­wał Captcha.php (jeżeli nie progra­muję w ZF to tego nie używam, ponadto moje pliki kończą się na .class.php, np. captcha.class.php
  • bez spacji pomię­dzy nazwą funk­cji a para­me­trami, np. function getStringFormatted($string), za to jeżeli jest kilka para­me­trów, to wtedy po prze­cinku jedna spacja
  • jedna spacja po struk­tu­rach kontro­l­nych typu if else switch i pętlach typu for foreach
  • spacja przed i po znakach przypisujących/arytmetycznych/logicznych typu = .= + - / % == && ||
  • tzw. one true brace, czyli po dekla­ra­cji klasy i po para­me­trach metod nawias klam­rowy powi­nien zostać prze­nie­siony do nowej linii, za to przy wszel­kich ifach czy forach nie (przy­znaję się bez bicia, nie stosuję OTB :-) )
  • jeżeli istnieje możli­wość wymu­sze­nia typu para­me­tru, stoso­wać to (przy­po­mi­nam, że PHP od wersji 5.3 umoż­li­wia zapis function metoda(array $tablica) {coś tam} )
  • używać „podwój­nych pazur­ków” tylko wtedy kiedy to jest konieczne (czyli gdy wsta­wiamy coś ze zmien­nej w locie), a jeżeli już to zawsze używać zapisu w nawia­sach klam­ro­wych, np. $s = "mój kot nazywa się {$kot}";
  • jeżeli jest to możliwe, tablica powinna zaczy­nać się od warto­ści 0 $tablica[0]
  • jeżeli nasz switch prze­wi­duje wartość default, musi być umiesz­czony jako ostatni (z breakiem!)

Tyle na dzisiaj. Jeżeli coś sobie przy­po­mnę lub wyczy­tam mądrego, zaktu­ali­zuję wpis.

Podobne wpisy:

  1. Stan­dardy kodo­wa­nia zgodne z Zend, cz. 3/3
  2. Stan­dardy kodo­wa­nia zgodne z Zend, cz. 2/3
  3. Łącze­nie zapy­tań Zend_Db_Select w Zend Frame­work [cz. 2/2]
  4. Własny wali­da­tor w Zend Framework

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <p> <pre lang="" line="" escaped=""> <q cite=""> <strike> <strong>