SOLID (аб’ектна-арыентаванае праграмаванне)

SOLID у праграмаванні — мнеманічны акронім, прапанаваны Майклам Фэзерсам для пяці асноўных прынцыпаў аб’ектна-арыентаванага праграмавання і праектавання[1], якія у пачатку 2000-х сфармуляваў Роберт Марцін.[2][3]

Выкарыстанне гэтых прынцыпаў пры распрацоўцы праграмнага забеспячэння паляпшае якасць зыходнага кода праграмы і дазваляе лягчэй падтрымліваць і пашыраць яе на працягу доўгага часу. Прынцыпы SOLID дапамагаюць ідэнтыфікаваць дрэнна напісаны код падчас работы над праграмай і патрабуюць, каб праграміст выконваў рэфактарынг кода, пакуль той не стане разборліва напісаным. Гэта частка агульнай стратэгіі гнуткай і адаптыўнай распрацоўкі[en].

Прынцыпы

S — Single Responsibility

Прынцып адзінай адказнасці (англ.: Single Responsibility Principle, SRP) сцвярджае, што не павінна існаваць больш адной прычыны для змены класа.[4]

O — Open Closed

Прынцып адкрытасці/закрытасці (англ.: Open Closed Principle, OCP) сцвярджае, што «праграмныя сутнасці … павінны быць адкрыты для пашырэння, але закрыты для мадыфікацыі».[5]

L — Liskov Substitution

Прынцып падстаноўкі Барбары Ліскоў (англ.: Liskov Substitution Principle, LSP) сцвярджае, што «аб’екты ў праграме можна замяніць на асобнікі іх падтыпаў так, каб праграма без праблем выконвалася далей».[6] Спадчынны клас павінен дапаўняць, а не змяняць базавы.

I — Interface Segregation

Прынцып раздзялення інтэрфейсаў (англ.: Interface Segregation Principle, ISP) кажа, што «шмат інтэрфейсаў, спецыяльна прызначаных для кліентаў, лепей за адзін інтэрфейс агульнага назначэння».[7]

D — Dependency Inversion

Прынцып інверсіі залежнасцяў (англ.: Dependency Inversion Principle, DIP) патрабуе, каб залежнасці у кодзе ствараліся ад абстракцый, а не канкрэтных рэалізацый.[8]

Гл. таксама

Зноскі

  1. Sandi Metz (Duke University). SOLID Object-Oriented Design(недаступная спасылка). Архівавана з першакрыніцы 29 сакавіка 2014. Праверана 3 мая 2016. Выступ на канферэнцыі «2009 Gotham Ruby Conference» ў маі 2009 года.
  2. Роберт Марцін (Дзядзька Боб). Principles Of OOD. butunclebob.com. Праверана 3 мая 2016. (заўв. адсылка да «first five principles», то бок у артыкуле ўжываецца акронім.)
  3. Роберт Марцін (Дзядзька Боб). Getting a SOLID start. objectmentor.com. Праверана 3 мая 2016.
  4. Single Responsibility Principle. Архівавана з першакрыніцы 1 June 2015.
  5. Open/Closed Principle. Архівавана з першакрыніцы 5 September 2015.
  6. Liskov Substitution Principle. Архівавана з першакрыніцы 5 September 2015.
  7. Роберт Марцін (Дзядзька Боб).. Design Principles and Design Patterns(недаступная спасылка). objectmentor.com (24 чэрвеня 2000). Архівавана з першакрыніцы 6 September 2015. Праверана 14 студзеня 2009.
  8. Dependency Inversion Principle. Архівавана з першакрыніцы 5 September 2015.
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia

Kembali kehalaman sebelumnya