cod poate fi citit sau de programare ca o artă "

Acum am citit cartea „pentru a citi codul sau de programare ca o artă.“ Se potrivește o grămadă de idei și exemple. doriți să partajați. Dar o notă nu se va potrivi toate. așa că am decis să recit cartea pentru câteva capitole la un moment dat. În această notă, capitolul 1-4.

Capitolul 1: Codul ar trebui să fie ușor de înțeles

  • cod compact mai bine greoaie;
  • Dar codul poate fi citit este întotdeauna mai bine decât un compact.

Codul este citit mai des decât în ​​scris. Oamenii înțeleg mai devreme cod nefamiliare. astfel încât este mai ușor. Așa cum se înțelege prin codul ușor de găsit bug-uri și de a le repara. fără a rupe cu programul.

Pe scurt - nu întotdeauna mai bine pentru a înțelege:

Prin urmare, să depună eforturi pentru compactitatea bine. ci să depună eforturi pentru o mai bună lizibilitate ridicată.

Capitolul 2: Pick up numele exacte pentru variabile. funcții și clase

  • Alege cuvintele exacte;
  • Evitați concepte generale și abstracte;
  • Clarificarea sensul cu ajutorul unor prefixe și sufixe;
  • Nu inventa numele este prea lung.

De exemplu. în GetPage cuvânt obține funcția inexacte. Aceasta nu explică. dacă este luat pagina din memoria cache sau de la rețea. Nume FetchPage sau explica mai bine pagina Descărcare. ce se întâmplă.

Exemplul următor al corpului funcție este clar. că retval - valoarea de returnare.

Cu toate acestea, nu este clar. că acesta conține. Din acest motiv, trebuie doar să săriți eroarea:

In loc de nume abstracte, folosind beton. ascuțit situația. Astfel de nume se explica. Care este variabila sau funcția. Dar specificul ajută la evitarea ambiguității.

Prefixe și sufixe clarifica sensul. De exemplu. măsoară viteza de pagini web de încărcare:

Dacă sunteți familiarizat cu JavaScript. veți observa o greșeală - getTime returnează rezultatul în milisecunde. Prin urmare, codul nu funcționează corect. Dacă vom adăuga un sufix _ms. eroarea va fi văzut:

Lungimea numelui depinde de dimensiunea domeniului de aplicare. Dacă variabila este în funcție de 3 rânduri. numele scurt a fost adecvat. Dar mai mult domeniul de aplicare. numele mai precis ar trebui să fie. De exemplu. days_since_last_update mai bine. decât de zile.

Numele abrevierilor sunt ambigue. Pentru a decripta reducerea nu poate avea suficiente cunoștințe. Pe lângă reducerea cel mai simplu mod de a fi interpretat incorect. Prin urmare, BEManager - un nume de rău. BackEndManager - mai bine.

În cazul în care cuvântul nu extinde semnificația numelui. este mai bine să-l arunci. De exemplu. convert_to_string poate fi înlocuit cu to_string.

Regula pentru alegerea unui nume: „Daca un nou membru al echipei nu poate înțelege sensul unei funcții sau variabilă pe numele său. este un nume de rău. "

Capitolul 3: Evitați numele ambigue

  • Numele trebuie să reflecte esența;
  • Utilizați prefixe și sufixe. Pentru a adăuga sens;
  • Eliminați neimportante.

titlu de test interpretat greșit. Intreaba-te. ce altceva poate fi însemnat cu acest nume. De exemplu. Funcția de filtru nu este clar: selectează sau valori. care se potrivesc starea. sau vice-versa. Dar numele unui select sau exclude imediat spun. ce rezultate obținem.

Pentru a determina cu exactitate limita intervalului. utilizați prefixe sau min_ max_. Pentru benzile inclusive pot folosi prefixe și first_ last_.

Pentru a utiliza o variabilă boolean este un prefix. a. poate. ar trebui, și așa mai departe. e. real și funcții. care returnează o valoare booleană.

Capitolul 4: Codul frumos este citit mai rapid

  • Utilizați un stil consistent. cititor utilizat pentru acesta;
  • Scrieți un cod similar într-un mod similar;
  • Se combină legate în sensul biții de codificare în blocuri.

Scapă de incoerență. Utilizați funcțiile auxiliare. De exemplu. Funcția de testare și pentru ea:

Două linii nu se potrivesc, și sare la următorul. cititorul merge pe căi greșite. Acest lucru poate fi evitat prin utilizarea funcțiilor de utilitate:

Codul în sine este, de asemenea, să fie împărțită în „paragrafe“. Dacă o funcție constă în mai multe etape. Acești pași evidențiați linii goale de cod între ele.

Ce urmează?

Săptămâna viitoare, vorbim despre capitolele 5-7. O să-ți spun. ca: