Індустрія розробки програмного забезпечення постійно зростає, а разом з цим з'являються нові принципи та практики, що дозволяють уникнути множини помилок у процесі виробництва. Однією з таких практик в ООП – об'єктно-орієнтованому програмуванні є SOLID.
SOLID є скороченим найменуванням п'яти найпоширеніших принципів проектування:
- SRP – принцип єдиної відповідальності.
- OCP - принцип відкритості-закритості.
- LSP - принцип підстановки Барбари Лисков.
- ISP – принцип поділу інтерфейсів.
- DIP – принцип інверсії залежностей.
Слід зазначити, що принципи SOLID були створені з урахуванням об'єктно-орієнтованої парадигми програмування і значною мірою залежать від концепцій класів та інтерфейсів.
Однак у JavaScript їх просто немає. Те, що ми звикли називати в JS класами, фактично є двійниками класів, які були змодельовані із застосуванням його системи прототипів, а самі інтерфейси зовсім не входять до мови. Крім цього, сучасний підхід до написання коду React насправді далекий від ООП-парадигми і більше відноситься до функціонального програмування.
Проте принципи SOLID мають досить високий рівень абстракції, і за більш предметному розгляді, і навіть з деякими вольностями в інтерпретації, цілком можуть застосовуватися до коду на React.
У цій статті ми розглянемо всі принципи SOLID і розглянемо, як кожен з них може використовуватися в розробці додатків на React.