What are the SOLID principles?
Είναι μια σειρά από οδηγίες σχεδίασης για τη βελτίωση της συντηρησιμότητας και της κλιμακωσιμότητας του λογισμικού.
Προέλευση
Οι αρχές SOLID παρουσιάστηκαν από τον Robert C. Martin, γνωστός και ως Uncle Bob, στο έργο του για το αντικειμενοστραφές σχεδιασμό στις αρχές της δεκαετίας του 2000. Αυτές οι αρχές είναι μια συλλογή πέντε σχεδιαστικών εννοιών που βοηθούν τους προγραμματιστές να δημιουργούν συστήματα λογισμικού.
Ορισμός
Το SOLID είναι ένα ακρωνύμιο που αναφέρεται σε πέντε αρχές σχεδίασης στον αντικειμενοστραφή προγραμματισμό: Μοναδική Ευθύνη, Ανοιχτό/Κλειστό, Υποκατάσταση Liskov, Διαχωρισμός Διεπαφής και Αντιστροφή Εξάρτησης.
Σκοπός
Αυτές οι αρχές παρέχουν ένα πλαίσιο για τον σχεδιασμό λογισμικού που είναι εύκολο να συντηρηθεί, να κατανοηθεί και να επεκταθεί, επιτρέποντας στους προγραμματιστές να αποφύγουν κοινά σφάλματα στον σχεδιασμό και την αρχιτεκτονική.
Μοναδική Ευθύνη (SRP)
Η κλάση θα πρέπει να έχει μόνο έναν λόγο να αλλάξει.
Ανοιχτό/Κλειστό (OCP)
Οι οντότητες λογισμικού πρέπει να είναι ανοιχτές για επέκταση, αλλά κλειστές για τροποποίηση.
Υποκατάσταση Liskov (LSP)
Τα αντικείμενα μιας υπερκλάσης πρέπει να μπορούν να αντικατασταθούν με αντικείμενα των υποκλάσεων της χωρίς να επηρεάζεται η λειτουργικότητα.
Διαχωρισμός Διεπαφής (ISP)
Πολλές διεπαφές ειδικές για τον πελάτη είναι καλύτερες από μια γενική διεπαφή.
Αντιστροφή Εξάρτησης (DIP)
Τα υψηλού επιπέδου modules δεν πρέπει να εξαρτώνται από τα χαμηλού επιπέδου modules. Και τα δύο πρέπει να εξαρτώνται από αφαιρέσεις.
Quer saber mais?
Se você quiser se aprofundar em SOLID —ou levar esse tipo de formação para a sua equipe— vamos conversar. Eu ajudo equipes a entender e aplicar esses conceitos. Vou adorar receber o seu contato!
Τι είναι μια Alpha έκδοση;
Μια Alpha έκδοση είναι ένα πρώιμο στάδιο ενός λογισμικού, που συνήθως κυκλο...
What is a Tech Lead?
Ένας Tech Lead (TL), ή τεχνικός ηγέτης, είναι ένας ρόλος που αναλαμβάνει έν...
What is Test Driven Development (TDD)?
Η Ανάπτυξη με Καθοδηγούμενη Δοκιμή (TDD) είναι μια προσέγγιση προγραμματισμ...
What is Testing?
Η Δοκιμή, ή Test, είναι η διαδικασία για την επαλήθευση και την επικύρωση τ...
Τι σημαίνει το ALM;
Το ALM, ή Διαχείριση Κύκλου Ζωής Εφαρμογής, αναφέρεται στη διαδικασία διαχε...