Parime të ngurta për ta bërë kodin tuaj të fortë, të mirëmbajtur dhe fleksibël.

Parimet SOLID u zhvilluan për të luftuar modelet problematike të projektimit. Qëllimi i gjerë i parimeve SOLIDështë zvogëlimi i varësive në mënyrë që inxhinierët të ndryshojnë një fushë të softuerit pa ndikuar në të tjerat. Parimet SOLID ndihmojnë për ta bërë kodin tuaj të fortë, të mirëmbajtur dhe fleksibël.

Këtu vjen S.O.L.I.D:

  • Parimi i përgjegjësisë së vetme (SRP)
  • Parimi i hapur/mbyllur (OCP)
  • Parimi i zëvendësimit të Liskov (LSP)
  • Parimi i ndarjes së ndërfaqes (ISP)
  • Parimi i përmbysjes së varësisë (DIP)

Le të diskutojmë disa praktika të këqija dhe të mira të këtyre parimeve.

Parimi i Përgjegjësisë së Vetëm (SRP)

Ideja prapa parimit të përgjegjësisë së vetmeështë që të gjitha klasat, modulet, funksionet dhe çdo gjë brenda kodit tuaj duhet të jenë një pjesë e vetme. Një përgjegjësi e vetme është koncepti thelbësor këtu. Zbërtheni gjithmonë përgjegjësinë e kodit tuaj dhe bëni module të veçanta për përgjegjësinë individuale.

Pse SRP?

  • Çdo seksion i kodit ka një arsye të vetme për të ndryshuar.
  • Më e lehtë për të ndjekur kodin
  • Më e lehtë për t'u lexuar
  • Funksion më i vogël
  • Më i mirëmbajtur

Këtu janë praktikat e këqija dhe të mira të parimit të përgjegjësisë së vetme. Ju lutemi hidhini një sy.

Praktikë e keqe

Praktikë e mirë

Parimi i hapur/mbyllur (OCP)

Koncepti kryesor i parimit të hapur/mbyllur është që ju duhet të lejoni gjithmonë përdoruesit të shtojnë funksione të reja në bazën tuaj të kodeve pa ndryshuar kodin ekzistues.Parimi i hapur/mbyllur parandalon prezantimin e ri gabime në kodin ekzistues.

Pse OCP?

  • E hapur për zgjerim, por e mbyllur për modifikim
  • Mos e ndryshoni kodin ose klasat ekzistuese
  • Shtoni funksionalitet të ri me module të reja ose duke ripërdorur kodin ekzistues përmes delegimit.

"Subjektet e softuerit (klasat, modulet, funksionet, etj.) duhet të jenë të hapura për zgjerim, por të mbyllura për modifikim"

nga Bertrand Meyer

Praktikë e keqe

Praktikë e mirë

Parimi i Zëvendësimit të Liskov (LSP)

Supozoni se keni një klasë prind dhe një klasë fëmijë, atëherë klasa bazë dhe klasa e fëmijës mund të përdoren në mënyrë të ndërsjellë pa ndonjë rezultat të padëshiruar. Parimi i Zëvendësimit të Liskov është një nga më konfuzet, kështu që le të hedhim një vështrim në shembullin e mëposhtëm.

"Nëse S është një nëntip i T, atëherë objektet e tipit T mund të zëvendësohen me objekte të tipit S (d.m.th., objektet e tipit S mund të zëvendësojnë objektet e tipit T) pa ndryshuar asnjë nga vetitë e dëshirueshme të atij programi (korrektësia, detyra kryer, etj.)”

Pse LSP?

  • Ripërdorshmëria,
  • Lidhje e reduktuar
  • Mirëmbajtje më e lehtë

Praktikë e keqe

Praktikë e mirë

Parimi i ndarjes së ndërfaqes (ISP)

JavaScript nuk ka ndërfaqe, kështu që ky parim nuk zbatohet drejtpërdrejt pasi nuk zbaton zbatimin e asgjëje nëpërmjet ndërfaqeve.

E gjithë ideja e Parimit të Segregacionit të Ndërfaqes ka të bëjë me ndarjen e ndërfaqeve tuaja dhe t'i bëjë ato më të vogla.

"Klientët nuk duhet të detyrohen të varen nga ndërfaqet që ata nuk i përdorin."

Këtu janë disa praktika të mira dhe të këqija që mund të jenë të dobishme për t'u kuptuar më mirë.

Pse ISP?

  • "Kohezion" i lartë - kuptueshmëri më e mirë, qëndrueshmëri
  • Bashkim i ulët — mirëmbajtje më e mirë, rezistencë e lartë ndaj ndryshimeve

Praktikë e keqe

Praktikë e mirë

Parimi i përmbysjes së varësisë (DIP)

Modulet e nivelit të lartë nuk duhet të varen nga modulet e nivelit të ulët. Ky është koncepti thelbësor i Parimit të Inversionit të Varësisë. Të dy modulet duhet të varen nga abstraksioni në këtë parim.

Pse DIP?

  • Ndihmon për të shkëputur gjërat e rëndësishme nga detajet
  • Mbron nga një efekt valëzim nga ndryshimet brenda moduleve të nivelit të ulët
  • Mundëson ndryshime të shpeshta

Praktikë e keqe

Praktikë e mirë

Artikuj të tjerë në të njëjtën mënyrë që mund të jenë të dobishëm:





konkluzioni

Këtu, ne diskutuam parimet SOLID dhe si t'i zbatojmë ato në JavaScript. Ndjekja e këtyre parimeve është një domosdoshmëri si një programues. Gjithmonë përpiquni të programoni në një mënyrë më të mirë duke ndjekur praktikat dhe rregullat më të mira. Faleminderit.

Kalofsh nje dite te mire!

Më shumë përmbajtje në plainenglish.io