Duplicarea codului este un termen de la programare. ceea ce înseamnă că anumite părți ale codului sursă pot apărea de mai multe ori, atât în cadrul unei entități software, cât și în cadrul mai multor entități software. Duplicarea este un simptom al așa-numitului "cod mirositor". [1] În primul rând, deoarece crește lungimea sa; tocmai din cauza duplicării, și nu din cauza coincidențelor. Secvența duplicatelor este denumită uneori clone.
Iată o listă a motivelor pentru care două bucăți de cod pot fi considerate duplicate:
De unde provine codul duplicat?
Iată câteva motive pentru care poate fi creat un cod duplicat:
Problemele cauzate de codul duplicat
Duplicarea codului este un semn al unui stil de programare scăzut sau leneș. Un stil bun de programare se bazează de obicei pe reutilizarea codului. Se pare că utilizarea duplicatelor va accelera într-o oarecare măsură procesul de creare a unui program, deoarece programatorul nu va trebui să se gândească la modul în care codul este deja utilizat și cum poate fi utilizat în viitor. Cu toate acestea, problema constă în faptul că codul de scriere este doar o parte modestă a ciclului de viață al produsului și menținerea ulterioară a codului cu duplicate va fi prea complicată. Iată câteva dintre problemele care conduc la dublarea codului:
- O mulțime de coduri greu de înțeles. Codul de duplicare duce adesea la crearea de secvențe de cod lungi, repetitive care diferă doar în câteva linii sau caractere.
- Sensul ascuns. Este greu să capturați diferența în secțiunile cod repetitive și devine din ce în ce mai greu să înțelegeți de ce este destinat acest sau acel cod de cod. Adesea singura diferență este în parametrii. Cea mai bună cale de ieșire din această situație constă în utilizarea procedurilor și a funcțiilor.
- Anomalii ale actualizării. Duplicarea codului contravine principiului de bază al teoriei bazei de date, și anume: Evitați redundanța. Nerespectarea acestui fapt duce la actualizarea anomaliilor, ceea ce crește în mare măsură costul menținerii codului. În acest caz, aceeași modificare trebuie introdusă în toate duplicatele. Și, în cel mai bun caz, timpul petrecut pentru efectuarea modificărilor și testarea codului crește proporțional cu numărul de duplicate. Și în cel mai rău caz - anumite locuri din cod pot fi ignorate, iar fixarea tuturor erorilor se poate trage timp de luni sau chiar ani. Încercați să utilizați bibliotecile de cod în această situație.
- Dimensiunea fișierului. Fără a utiliza nici o compresie, fișierul sursă va ocupa mai mult spațiu pe disc.
Găsiți codul duplicat
Există un număr de algoritmi care vă permit să găsiți codul duplicat. De exemplu:
Exemple de cod duplicat