DEV Community

Muhammad Salem profile picture

Muhammad Salem

Full-stack software engineer.

Location Egypt. Joined Joined on  Email address mhmedsalem10@gmail.com

Education

Bachelor's degree in Computer Science

Liskov Substitution Principle (LSP) - Do You Really Understand It?

Liskov Substitution Principle (LSP) - Do You Really Understand It?

Comments
4 min read

Want to connect with Muhammad Salem?

Create an account to connect with Muhammad Salem. You can also sign in below to proceed if you already have an account.

Already have an account? Sign in
Design Patterns - State Pattern

Design Patterns - State Pattern

Comments
5 min read
Liskov Substitution Principle (LSP): Do You Really Understand It?

Liskov Substitution Principle (LSP): Do You Really Understand It?

Comments
8 min read
Embracing Open/Closed Principle (OCP) in Professional Software Design

Embracing Open/Closed Principle (OCP) in Professional Software Design

Comments
5 min read
The Observer Patter - A Practical Approach.

The Observer Patter - A Practical Approach.

Comments
8 min read
How to leverage polymorphism to design flexible and maintainable software that adheres to SOLID principles

How to leverage polymorphism to design flexible and maintainable software that adheres to SOLID principles

2
Comments 1
7 min read
How to work with design patterns?

How to work with design patterns?

Comments
8 min read
When Inheritance Shines And When It May Become Problematic?

When Inheritance Shines And When It May Become Problematic?

Comments
3 min read
Alan Kay's Vision of OOP

Alan Kay's Vision of OOP

Comments
4 min read
Why was the OOP paradigm invented?

Why was the OOP paradigm invented?

Comments
7 min read
Addressing Math Challenges: Building a Solid Foundation for Success

Addressing Math Challenges: Building a Solid Foundation for Success

Comments
3 min read
Embracing Surface-Level Understanding: A Key to Mastering Software Engineering

Embracing Surface-Level Understanding: A Key to Mastering Software Engineering

1
Comments
5 min read
the science behind forgetting

the science behind forgetting

Comments
5 min read
Comprehensive guide on how to handle online payments using ASP.NET Core and React.js

Comprehensive guide on how to handle online payments using ASP.NET Core and React.js

1
Comments
9 min read
How to approach Reporting and Analytics?

How to approach Reporting and Analytics?

1
Comments
4 min read
Object Oriented Approach

Object Oriented Approach

1
Comments
5 min read
Design a Movie Ticket Booking System

Design a Movie Ticket Booking System

1
Comments
6 min read
How to approach Reporting and Analytics in ASP.NET Core

How to approach Reporting and Analytics in ASP.NET Core

Comments
4 min read
Building Your First Use Case With Clean Architecture

Building Your First Use Case With Clean Architecture

4
Comments
3 min read
Design a parking lot using object-oriented principles

Design a parking lot using object-oriented principles

Comments
9 min read
The fear of making mistakes can be a significant barrier to learning complex technical skills like software engineering

The fear of making mistakes can be a significant barrier to learning complex technical skills like software engineering

1
Comments
3 min read
Database Normalization simplified

Database Normalization simplified

1
Comments
3 min read
Database Design

Database Design

Comments
5 min read
Entity Framework Core advanced concepts

Entity Framework Core advanced concepts

2
Comments
10 min read
Design Connect Four

Design Connect Four

1
Comments
5 min read
OOD Use Case: Solving call center problem

OOD Use Case: Solving call center problem

Comments
4 min read
Developers Listen: If You Don't Have a Rich Domain Model, You Don't Leverage OOP

Developers Listen: If You Don't Have a Rich Domain Model, You Don't Leverage OOP

1
Comments 10
5 min read
Design Facebook - a social network

Design Facebook - a social network

Comments
7 min read
Object-Oriented Analysis and Design (OOAD) for the Parking Lot System

Object-Oriented Analysis and Design (OOAD) for the Parking Lot System

Comments
9 min read
Mastering AI Prompts: A Software Engineer's Guide to Harnessing the Power of LLMs

Mastering AI Prompts: A Software Engineer's Guide to Harnessing the Power of LLMs

Comments
3 min read
RESTful API design principles

RESTful API design principles

1
Comments 1
3 min read
When to use enums vs. inheritance for modeling object types

When to use enums vs. inheritance for modeling object types

Comments
3 min read
Designing Flexible and Extensible Software Systems with OOP

Designing Flexible and Extensible Software Systems with OOP

Comments
5 min read
The thought process and best practices for handling responses across each layer

The thought process and best practices for handling responses across each layer

1
Comments
6 min read
Comprehensive Guide to Error Handling in ASP.NET Core

Comprehensive Guide to Error Handling in ASP.NET Core

1
Comments
7 min read
How OOP principles and SOLID principles can be effectively applied across each layer of a layered architecture

How OOP principles and SOLID principles can be effectively applied across each layer of a layered architecture

1
Comments 1
4 min read
Entity associations in EF Core

Entity associations in EF Core

2
Comments 1
5 min read
Structured Approach to Designing an Airline Management System

Structured Approach to Designing an Airline Management System

Comments
5 min read
How do I prepare for low level system design?

How do I prepare for low level system design?

3
Comments 2
8 min read
The thought process behind converting System Requirements into Object-Oriented Design

The thought process behind converting System Requirements into Object-Oriented Design

Comments
12 min read
Encapsulate What Varies (EWV) Principle: A Pragmatic Approach

Encapsulate What Varies (EWV) Principle: A Pragmatic Approach

Comments
3 min read
Associations in EF Core

Associations in EF Core

8
Comments 2
4 min read
Decorator Pattern

Decorator Pattern

Comments
3 min read
Understand the Liskov substitution principle using a simple example.

Understand the Liskov substitution principle using a simple example.

1
Comments
2 min read
What are factors that can make a software engineer stand out and become attractive to big tech companies.

What are factors that can make a software engineer stand out and become attractive to big tech companies.

Comments
4 min read
key knowledge areas essential for designing algorithms

key knowledge areas essential for designing algorithms

Comments
2 min read
loading...