SOLID Principles: Interface Segregation Principle (ISP)

In this part of the SOLID series, we're going to revisit the ISP or Interface Segregation Principle. Yep, this is a very long article. If you want an easier way of learning SOLID principles in depth, then I would recommend you taking my SOLID tutorial just for 10.99$. Interface Segregation Principle Definition Before giving a definition, I want to [...]

By |2019-01-11T11:11:55+03:00December 27th, 2018|.NET, Best Practices, C#, CodeProject, Design|35 Comments

SOLID Principles: Liskov Substitution Principle (LSP) In Practice

LSP Definition The official definition from Barbara Liskov sounds like this: “If S is a subtype of T, then objects of type T may be replaced with objects of type S, without breaking the program” – B. Liskov. It’s not very hard to grasp what this definition means but I’ll quote the definition of LSP from the book of Uncle Bob “Agile Principles, [...]

By |2019-01-11T11:12:07+03:00December 26th, 2018|.NET, Best Practices, C#, CodeProject, Design|1 Comment

Master the Art of Writing Clean Code in C#

Foundations of building object-oriented infrastructures Despite the fact that C# is a very rich on features language, it's very common to see poorly designed and implemented types in a real world. In fact, C# is one of the richest on features language among object-oriented languages in the world nowadays. But with great power comes great responsibility. It's challenging to use all those features in a right [...]

By |2018-11-12T00:15:56+03:00July 25th, 2018|.NET, Best Practices, C#, Refactoring, Video Courses|0 Comments

SOLID Principles: The Open/Closed Principle (OCP)

The second principle we’re going to talk about is the Open/Closed Principle. If we look at Wikipedia, we will see the following definition: The Open/Closed Principle states that software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification. Problem Statement What it means, in essence, is that when we need to introduce a change, we shouldn’t dig deep into [...]

By |2019-01-11T11:13:14+03:00September 4th, 2017|.NET, C#, CodeProject, Design|0 Comments

DateTime Fundamentals in .NET and SQL Server

My new video course “Date and Time Fundamentals in .NET and SQL Server” is released! Take it right now just for 10$! Build a solid foundation of working with Date and Time with this course Almost all the software works with date and time in one form or another. Some programs, of course, need to work with date and time more than other. However, [...]

By |2017-08-15T13:22:52+03:00August 15th, 2017|.NET, Best Practices, C#, Video Courses, Fundamentals|0 Comments

SOLID Principles: Single Responsibility Principle (SRP)

This entry is part 3 of 6 in the series SOLID

SRP Definition In this article, we will look at what is single responsibility principle and look at some simple examples in C# which demonstrate the single responsibility principle and how to adhere to the SRP. Single Responsibility Principles or SRP in short states that every object should have a single [...]

By |2019-01-11T11:13:24+03:00June 28th, 2017|.NET, Best Practices, C#, CodeProject, Design|1 Comment

Software Architecture: Meta and SOLID Principles in C#

This entry is part 1 of 6 in the series SOLID

Learn how to develop maintainable software systems applying Meta and SOLID Principles. Teaching Approach No fluff, no ranting, no beating the air. I esteem your time. The course material is succinct, yet comprehensive. All important concepts are covered. Particularly important topics are covered in-depth. For absolute beginners, I offer my [...]

By |2017-06-28T10:53:16+03:00June 6th, 2017|Video Courses, .NET, Best Practices, C#, Design|0 Comments

Handling Errors and Exceptions in C#. Part 3

This is the third and most comprehensive part about handling errors and exceptions in C#. Here are the first and the second part. Also, you can take a look at the blog post about global exceptions handling in WPF applications. Errors Handling and many other topics you’ll find in my new video course “API in C#: The Best Practices of Design and Implementation”. Take [...]

By |2019-01-11T11:14:50+03:00October 24th, 2016|Refactoring, .NET, Best Practices, C#, CodeProject|7 Comments
Go to Top