Cateva idei despre Refactoring si Clean Code

Refactoring | Stefanescu Mihai | 2020-11-08

Scopul principal al refactorizarilor este elminarea tech debt-ului si vine din dorinta de a scapa de codul dezorganizat si a il transforma in cod curat si simplu de inteles.

Bun! Dar ce este cod curat pana la urma? Daca te uiti la clip-uri despre clean code, citesti tot felul de articole, carti and so on ai sa observi ca fiecare are definitia lui pentru cod curat, dar mai jos am sa fac o lista cu cele mai des intalnite puncte:

Evident, codul trebuie sa fie inteles si de alti programatori si de tine peste 6 luni

Nici macar nu ma refer la algoritmi super complicati cand spun asta, ma refer inclusiv la chestii mici, precum numele variabilelor, clase si metode super incarcate si asa mai departe.

Nu contine cod duplicat

De fiecare data cand faci o schimbare intr-o bucata de cod duplicata, trebuie sa iti aduci aminte sa schimbi peste tot.

Nu contine chestii inutile

Cu cat ai mai putin cod (fie intr-o clasa sau metoda) cu atat ai mai putine batai de cap. Nu ma refer sub nicio forma la dimensiunea proiectului, ma refer la organizare. Una este sa ai o clasa care respecta S.O.L.I.D si sa stii exact ce gasesti acolo si una e sa ai o clasa cu 134 de metode.

Teste

Fie ca scrii codul si apoi testele, fie ca scrii testele si apoi codul, acestea trebuie sa treaca in permanenta.

Codul curat trebuie sa fie usor de intretinut!


Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ