SOLID Design Principles in Software Engineering

  IJCTT-book-cover
 
         
 
© 2024 by IJCTT Journal
Volume-72 Issue-9
Year of Publication : 2024
Authors : Naveen Chikkanayakanahalli Ramachandrappa
DOI :  10.14445/22312803/IJCTT-V72I9P104

How to Cite?

Naveen Chikkanayakanahalli Ramachandrappa, "SOLID Design Principles in Software Engineering," International Journal of Computer Trends and Technology, vol. 72, no. 9, pp. 18-23, 2024. Crossref, https://doi.org/10.14445/22312803/IJCTT-V72I9P104

Abstract
In contemporary software development, ensuring clarity, flexibility, and maintainability remains a persistent challenge, particularly as systems grow in complexity. While SOLID principles offer a robust framework to address these issues, many developers struggle with understanding and applying these guidelines effectively in real-world scenarios. Developed by Robert C. Martin, these principles—Single Responsibility Principle, Open/Closed Principle, Liskov Substitution Principle, Interface Segregation Principle, and Dependency Inversion Principle—are fundamental to object-oriented programming, especially in languages such as C#. This document addresses the research gap by offering a comprehensive exploration of each SOLID principle, utilizing practical C# examples to elucidate its application. The goal is to provide developers with actionable insights into leveraging these principles to overcome common challenges.

Keywords
Cohesion, Decoupling, Extensibility, Modularity, Substitutability.

Reference

[1] Robert C. Martin, Clean Architecture: A Craftsman's Guide to Software Structure and Design, 1st ed., Prentice Hall, 2017.
[Google Scholar] [Publisher Link]
[2] Bertrand Meyer, Object-Oriented Software Construction, 2nd ed., Prentice Hall, pp. 1-1254, 1997.
[Google Scholar] [Publisher Link]
[3] Barbara Liskov, Data Abstraction and Hierarchy, Addison-Wesley, 1987. [Online]. Available: https://www.cs.tufts.edu/~nr/cs257/archive/barbara-liskov/data-abstraction-and-hierarchy.pdf
[4] Robert Cecil Martin, Agile Software Development: Principles, Patterns, and Practices, 1st ed., Prentice Hall PTR, pp. 1-710, 2003.
[Google Scholar] [Publisher Link]
[5] Robert C. Martin, and Micah Martin, Agile Principles, Patterns, and Practices in C#, Pearson, pp. 1-768, 2006.
[Google Scholar] [Publisher Link]