Beginner23 lectures

Software Engineering / Design Patterns

About This Course

Writing code that works is the easy part. Writing code that holds together six months later, when requirements change and your team doubles in size that's what this course is about.

Software Engineering & Design Patterns covers the principles and patterns that professional developers use to build systems that are maintainable, extensible, and actually understandable by other humans. You'll move from the fundamentals of the software development lifecycle through OOP principles and SOLID, then into the classic Gang of Four design patterns creational, structural, and behavioral and finally to the architectural patterns that structure entire applications.

Every pattern is taught in context: not just "here's how it works" but "here's the problem it solves and what goes wrong without it."

What you'll cover:

  • Software engineering fundamentals: SDLC phases, Agile vs. Waterfall
  • OOP recap and the SOLID principles
  • Design heuristics: DRY, KISS, YAGNI, coupling and cohesion
  • Creational patterns: Singleton, Factory Method, Abstract Factory, Builder
  • Structural patterns: Adapter, Decorator, Facade, Proxy
  • Behavioral patterns: Observer, Strategy, Command, Template Method
  • Architectural patterns: MVC, Repository, Dependency Injection
  • Anti-patterns: what to recognize and how to refactor out of them

Who this is for: Intermediate developers who can write working code but want to level up their design skills, CS students studying software engineering, and anyone who's inherited a codebase and thought "why is this so hard to change?"

Prerequisites: Comfortable with OOP in at least one language (Python, Java, C#, or similar). You should know what a class and interface are before starting.

Watch the Intro Video

Course Comments

0 comments

Want to join the discussion?

Log in or sign up to post a comment.

Software Engineering / Design Patterns

Lectures

23 lectures

Level

Beginner

Software Engineering / Design Patterns | codend