Software Design Patterns

Explore common software design patterns to solve recurring problems in software architecture. Learn about creational, structural, and behavioral patterns for more robust and maintainable code.

60 courses

SOLID Principles: Designing Clean and Maintainable Code

Learn how to apply the five core SOLID principles to write robust, scalable, and easily testable object-oriented code in languages like Java, C#, and Python.
★ 4.5 (1,211)

Modern C++ Design Patterns: Clean Code Architecture

Write clean, maintainable, and efficient C++ applications by mastering classic Gang of Four design patterns updated for modern language standards.
★ 4.6 (7,547)

Modern Python Design Patterns and SOLID Principles

Build scalable and maintainable software by applying classic architectural patterns using modern Python features like type hints and dataclasses.
★ 4.4 (4,427)

Java Concurrency: Transforming Single-Threaded Code to Multithreaded

Learn to write efficient, thread-safe Java applications by mastering synchronization, concurrent utilities, and modern virtual threads to safely run tasks in parallel.
★ 4.6 (1,246)

Cloud Software Architecture and System Design Patterns

Master essential software architecture and system design patterns to build highly scalable, resilient, and modern cloud-based systems.
★ 4.6 (3,539)

Software Engineering Fundamentals: Principles and Modern Workflows

Build a solid foundation in the software development lifecycle, from gathering requirements and system design to modern testing, containerization, and deployment workflows.
★ 4.1 (283)

GitHub Copilot for Java and Spring Boot Developers

Accelerate your Java and Spring Boot development workflow by leveraging GitHub Copilot for smart code generation, efficient refactoring, and automated testing.
★ 4.5 (3,210)

SOLID Principles in C# for Clean Software Architecture

Master the five core principles of object-oriented design in C# to write clean, maintainable, and highly extensible software.
★ 4.4 (1,177)

C# Application Development: From Foundations to Enterprise Architecture

Build robust desktop and database-driven applications using intermediate to advanced C# features, multithreading, and ADO.NET through clear, structured text lessons.
★ 4.7 (491)

Dynamic Programming Patterns for Coding Interviews

Learn how to recognize, decompose, and solve dynamic programming problems systematically using proven patterns to succeed in your next technical coding interview.
★ 4.4 (674)

Designing Maintainable Software: SOLID Principles and Design Patterns

Learn how to write clean, readable, and highly maintainable object-oriented code using industry-standard design principles and patterns.
★ 4.1 (1,306)

Test Automation Framework Design: Building Scalable SDET Architectures

Learn to apply essential software design patterns to build maintainable, reusable, and enterprise-ready test automation frameworks for modern software delivery.
★ 4.6 (933)

Practical Software Design Patterns: Real-World OOP Solutions

Master essential object-oriented design patterns and dependency injection through practical, real-world scenarios to write highly maintainable and clean code.
★ 3.8 (556)

Modern Java Concurrency: From Multithreading to Virtual Threads

Learn to build highly scalable applications using modern Java concurrency features, from classic multithreading and ExecutorService to virtual threads and structured concurrency.
★ 4.6 (662)

BDD and API Testing in C# with SpecFlow

Master the fundamentals of Behavior-Driven Development in C# and learn to automate REST API testing using SpecFlow to deliver reliable software.
★ 4.0 (530)

TypeScript Design Patterns and SOLID Principles

Learn to architect scalable software using object-oriented programming and industry-standard design patterns in TypeScript.
★ 4.6 (730)

WPF Development with MVVM Architecture and Caliburn.Micro

Build maintainable and scalable Windows desktop applications by mastering the MVVM pattern and implementing the Caliburn.Micro framework.
★ 3.8 (830)

Behavioral Design Patterns in C#: Guide to Object Interaction

Master classic behavioral design patterns in C# to write clean, loosely coupled code and prepare for software architecture interviews and projects.
★ 4.2 (404)

Layered Architecture and Repository Patterns for Web Development

Learn to design scalable software using layered architecture, dependency injection, and aspect-oriented programming for cleaner, more maintainable code.
★ 4.4 (372)

Android App Architecture with MVP, Dagger, Retrofit, and RxJava

Learn to structure robust Android applications using the Model-View-Presenter pattern, dependency injection, and reactive programming for cleaner, testable code.
★ 4.1 (1,015)
Showing 20 of 60 courses