Аб’ектна-Арыентаванае Праграмаванне Solid

SOLID (скарачэнне ад англ.: Single responsibility, Open-closed, Liskov substitution, Interface segregation і Dependency inversion) у праграмаванні — мнеманічны акронім, уведзены Майклам Фэзерсам для першых пяці прынцыпаў, названых Робертам Марцінам у пачатку 2000-х, якія азначалі пяць асноўных прынцыпаў аб’ектна-арыентаванага праграмавання і праектавання.

Апісанне

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

Прынцыпы

Пазбавіцца «ад прыкмет дрэннага праекта» дапамагаюць наступныя пяць прынцыпаў SOLID:

Ініцыял Паказвае Назва, паняцце
S SRP
    Прынцып адзінай адказнасці (The Single Responsibility Principle)
    Ёсць толькі адна прычына, якая прыводзіць да змянення класа.
O OCP
    Прынцып адкрытасці/закрытасці (The Open Closed Principle)
    «праграмныя сутнасці … павінны быць адкрыты для пашырэння, але закрыты для мадыфікацыі.»
L LSP
    Прынцып падстаноўкі Барбары Ліскоў (The Liskov Substitution Principle)
    «аб’екты ў праграме павінны быць заменнымі на асобнікі іх падтыпаў без змянення слушнасці выканання праграмы.». Гл. таксама кантрактнае праграмаванне.

Спадчынны клас павінен дапаўняць, а не змяняць базавы.

I ISP
    Прынцып раздзялення інтэрфейсу (The Interface Segregation Principle)
    «зашмат інтэрфейсаў, спецыяльна прызначаных для кліентаў, лепей за адзін інтэрфейс агульнага назначэння.»
D DIP
    Прынцып інверсіі залежнасцей (The Dependency Inversion Principle)
    «Залежнасць на абстракцыях. Няма залежнасці на нешта пэўнае.»

Гл. таксама

Зноскі

Tags:

Аб’ектна-Арыентаванае Праграмаванне Solid АпісаннеАб’ектна-Арыентаванае Праграмаванне Solid ПрынцыпыАб’ектна-Арыентаванае Праграмаванне Solid Гл. таксамаАб’ектна-Арыентаванае Праграмаванне SolidАб’ектна-арыентаванае праграмаваннеАкронімАнглійская моваПраграмаваннеПрынцып адзінай адказнасціРоберт Марцін

🔥 Trending searches on Wiki Беларуская:

AP$ENT18-ы гвардзейскі знішчальны авіяцыйны полкГомельская вобласцьРадыё Свабодная Еўропа/Радыё СвабодаСродкі вытворчасціНеарамантызмІван Шамякін361-я асобная база аховы і абслугоўванняРасіяNaviny.byУННВУстаноўка (псіхалогія)ДрыгавічыЗубр еўрапейскіДжордж Вашынгтан КарверПесахЯзэп Нарцызавіч ДраздовічЛарыса ГеніюшГанна Мікалаеўна КісліцынаЛеанід Міхайлавіч ГалубовічУладзімір Віктаравіч СамсонаўБелсатВасіль ВіткаМарфемаЛідаПурпурны колерЯн ЧыквінГеаграфія сельскай гаспадаркіВільнюсЯн ЧачотЛітаратурная моваГеоргій Апалонавіч ГапонМухамад ІкбалАтлатльMetro-Goldwyn-MayerАбарона Брэсцкай крэпасці (1941)Язэп СажычБеласнежка і сямёра гномаў (мультфільм, 1937)Эйвінд ЮнсанЧорны замак АльшанскіЯн Павел IПолк КаліноўскагаНарысРасійская імперыяШэраньМонктанскі ўніверсітэтСмаргоньЗяма Раманавіч ПівавараўЭякуляцыя на чалавекаМаўнт-Элісанаўскі ўніверсітэтВярбаАнальны коракУладзімір Сцяпанавіч ЛіпскіБеларускі лацінскі алфавітТыянептынБаранавічыМікола ГамолкаVII Усебеларускі народны сходКазахстанСацыяльны дарвінізмБілінгвізмКарлтан-ПлейсСвятлана Аляксандраўна АлексіевічАндрэй Паўлавіч ХудыкПаветраны шарБярозка (часопіс)Генадзь БураўкінПлошча Якуба КоласаПа што ідзеш, воўча?Viva BraslavПаўлінкаАлесь Камароўскі🡆 More