Szerkesztő:Cerabera/próbalap

A Wikipédiából, a szabad enciklopédiából


Az objektumorientált programozásban a SOLID egy mozaikszó, amely az öt tervezési alapelv (Single responsibility principle, Open/closed principle, Liskov substitution principle, Interface segregation principle, Dependency inversion principle) kezdőbetűjéből áll. Létezése a szoftver tertvezést még érthetőbbé, rugalmasabbá és kezelhetőbbé teszi. A SOLID nem kapcsolható a felelősségek hozzárendelésének általános mintáihoz (General Responsibility Assignment Software Patterns, GRASP). A S.O.L.I.D. alapelvek szülőatyja Robert C. Martin amerikai mérnök informatikus és tanácsadó, aki nem csak a clean code mozgalom vezérszónoka, hanem többek között az Agile Manifesto egyik eredeti megfogalmazója is. Ezek az alapelvek formálják a magját az agilis szoftverfejlesztésnek vagy adaptív szoftverfejlesztésnek. Az elmélet Martin Design Principles and Design Patterns,[1][2] című könyvében került ismertetésre, de mint mozaikszót csak később Michael Feathers által ismerhettük meg.


Összetevők[szerkesztés]

Egy felelősség elve - Single Responsibility Principle [3]
Egy osztály vagy modul egy, és csak egy felelősséggel rendelkezzen (azaz: egy oka legyen a változásra).
Nyitva/zárt elv - Open/Closed Principle [4]
Egy osztály vagy modul, legyen nyílt a kiterjesztésre, de zárt a módosításra.
Liskov helyettesítési elv - Liskov substitution principle [5]
Minden osztály legyen helyettesíthető a leszármazott osztályával anélkül, hogy a program helyes működése megváltozna.
Interfész elválasztási elv - Interface segregation principle [6]
Több specifikus interface jobb, mint egy általános.
Függőség megfordítási elv - Dependency inversion principle [7]
A kód függjön absztrakcióktól, ne konkrét implementációktól.

Lásd még[szerkesztés]

  • Kód újrahsznosítás
  • Öröklés (Objektumorientált programozás)
  • Becsomagolás
  • Ne ismételd magad
  • GRASP (Objektumorientált tervezés)
  • KISS alapelv
  • Nincs szükség rá (You aren't gonna need it YAGNI)

References[szerkesztés]

  1. Robert C. Martin: Getting a SOLID start. objectmentor.com . (Hozzáférés: 2013. augusztus 19.)
  2. Robert C. Martin: Design Principles and Design Patterns. [2015. szeptember 6-i dátummal az eredetiből archiválva].
  3. Egy felelősség alapelve Single Responsibility Principle. objectmentor.com . [2015. június 1-i dátummal az [[https://hu.wikipedia.org/wiki/Egy_felelősség_alapelve|Egy felelősség alapelve] eredetiből] archiválva].
  4. Open/Closed Principle. objectmentor.com . [2015. szeptember 5-i dátummal az eredetiből archiválva].
  5. Liskov Substitution Principle. objectmentor.com. [2015. szeptember 5-i dátummal az eredetiből archiválva].
  6. Interface Segregation Principle. objectmentor.com , 1996 [2015. szeptember 5-i dátummal az eredetiből archiválva].
  7. Dependency Inversion Principle. objectmentor.com. [2015. szeptember 5-i dátummal az eredetiből archiválva].

[[Kategória:Software design]] [[Kategória:Object-oriented programming]] [[Kategória:Programming principles]]