demo job
Ocadosandbox
Apply to this jobIn software engineering, SOLID is a mnemonic acronym for five design principles intended to make object-oriented designs more understandable, flexible, and maintainable. The principles are a subset of many principles promoted by American software engineer and instructor Robert C. Martin,[1][2][3] first introduced in his 2000 paper Design Principles and Design Patterns discussing software rot.[2][4]: 2–3
The SOLID ideas are
- The Single-responsibility principle: "There should never be more than one reason for a class to change."[5] In other words, every class should have only one responsibility.[6]
- The Open–closed principle: "Software entities ... should be open for extension, but closed for modification."[7]
- The Liskov substitution principle: "Functions that use pointers or references to base classes must be able to use objects of derived classes without knowing it."[8] See also design by contract.[8]
- The Interface segregation principle: "Clients should not be forced to depend upon interfaces that they do not use."[9][4]
- The Dependency inversion principle: "Depend upon abstractions, [not] concretions."[10][4]
The SOLID acronym was introduced later, around 2004, by Michael Feathers.[11]
Although the SOLID principles apply to any object-oriented design, they can also form a core philosophy for methodologies such as agile development or adaptive software development.[3]
Summary
Discuss SOLID principles for object-oriented design and methodologies.
Job title
demo job
Experience level
Industry
software
Location requirements
Andover, South East, UK; remote work not allowed
Salary
Not specified
Management role
No
Required skills
Preferred skills
Specializations
Structured locations inferred from the posting.
Andover SP11, UK