DEV Community

Mark Davies
Mark Davies

Posted on • Edited on

1 1

Foundations - SOLID Intro

You know it's easy in a world with docker containers, actor models, and micro-services to forget the principles of software development sometimes, the things that underpin our daily work. I'm going to try and create a series of posts that help people learn and serve as a reference with anyone brushing up on old concepts.

Let's being with SOLID.

SOLID is a five letter acronym that stands for what I believe are the five pillars of clean design in software development, let's list them so we are familiar with them:

S - Single responsibility principle
O - Open closed principle
L - Liskov Substitution Principle
I - Interface segregation principle
D - Dependency inversion principle

These sometimes get further acronyms such as SRP or LSP, OCP, so if you can learn these names so that if anyone at any time says one to you, you can then map that name to one of the principles in your mind and know instantly what people are talking about.

So what now?

I'm thinking that I will create a blog post about each of these pillars, and hopefully some people will like it, some people may disagree.

After that?

Let's that be tomorrows problem.

For now, do some research (I know I will) into the principles because as I say I believe these to be the most important parts of professional software development, I'll see you tomorrow where I will write about the SRP (Exciting times) 🔥🔥🔥

AWS GenAI LIVE image

How is generative AI increasing efficiency?

Join AWS GenAI LIVE! to find out how gen AI is reshaping productivity, streamlining processes, and driving innovation.

Learn more

Top comments (1)

Collapse
 
osde8info profile image
Clive Da

thanks i will bookmark this i 'failed' my last two interviews for forgetting what SOLID stood for !

Eliminate Context Switching and Maximize Productivity

Pieces.app

Pieces Copilot is your personalized workflow assistant, working alongside your favorite apps. Ask questions about entire repositories, generate contextualized code, save and reuse useful snippets, and streamline your development process.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay