-
Notifications
You must be signed in to change notification settings - Fork 2
Clean Code
Cod curat, ușor de citit și de înțeles de către oricine. Mai mult, ușor de modificat de altcineva.
-
Numele de clasă - CamelCase
-
Numele de metodă - lowercase, eventual _
-
Numele de variabilă - lowercase, eventual _
-
Numele din substantive
-
Descriere succintă a responsabilității
-
Fără abrevieri
-
Variabilele bool sunt întrebări: is_valid
- 1 rând între metode
- 2 rânduri între clase
- Spațiu după virgulă
- Spațiu înainte și după operatori (excepție la kwargs)
- Evitați comparațiile cu True sau False
- Nu comparați direct cu string-uri: folosiți constante
- Identificați constantele
- Când condițiile sunt mari, se impun pași intermediari
- Maxim 3 niveluri de adâncime
- Ieșire cât mai rapidă
- Variabilele declarate unde sunt folosite
- Nu mai mult de 20 de linii de cod
- Don't Repeat Yourself
- Codul copy paste este dificil în mentenanță și ilizibil.
- Keep It Simple and Stupid
- Orice unitate atomică de cod trebuie să fie ușor de înțeles de către oricine.
- You Ain't Gonna Need It
- Codul neutilizat îngreunează mentenanța unei aplicații.
- Codul neutilizat devine inutilizabil odată cu dezvoltarea aplicației.
-
Single Responsability Principle: O secvență de cod trebuie să îndeplinească un singur scop.
-
Open Closed Principle: Clasele trebuie să fie deschise pentru extensii și închise pentru modificări.
-
Liskov Substitution Principle: Codul rămâne funcțional dacă un obiect este înlocuit de un alt obiect derivat din primul.
-
Interface Segregation: Mai multe interfețe moștenite sunt întotdeauna preferate unei singure interfețe generale.
-
Dependency Inversion: O clasă trebuie să depindă de abstractizări, niciodată de obiecte concrete.