In software engineering, design principle and design pattern are not the same.
Design principles provide high level guidelines to design better software applications. They do not provide implementation guidelines and are not bound to any programming language. The SOLID (SRP, OCP, LSP, ISP, DIP) principles are one of the most popular sets of design principles.
For example, the Single Responsibility Principle (SRP) suggests that a class should have only one reason to change. This is a high-level statement which we can keep in mind while designing or creating classes for our application. SRP does not provide specific implementation steps but it's up to you how you implement SRP in your application.
Design Pattern provides low-level solutions related to implementation, of commonly occurring object-oriented problems. In other words, design pattern suggests a specific implementation for the specific object-oriented programming problem. For example, if you want to create a class that can only have one object at a time, then you can use the Singleton design pattern which suggests the best way to create a class that can only have one object.
Design patterns are tested by others and are safe to follow, e.g. Gang of Four patterns: Abstract Factory, Factory, Singleton, Command, etc.
- Difference between Array and ArrayList
- Difference between Hashtable and Dictionary
- How to write file using StreamWriter in C#?
- How to sort the generic SortedList in the descending order?
- Difference between delegates and events in C#
- How to read file using StreamReader in C#?
- How to calculate the code execution time in C#?
- How to convert string to int in C#?
- Boxing and Unboxing in C#
- out keyword in C#
- Query geolocation & proxy data in .NET using IP2Location
- ref Keyword in C#
- How to sort an array in C#?
- How to sort object array by specific property in C#?
- How to get a comma separated string from an array in C#?
- How to remove duplicate values from an array in C#?
- How to combine two arrays without duplicate values in C#?
- Difference between String and string in C#.
- How to count elements in C# array?
- Compare strings in C#