SOLID, The Software Design and Architecture Handbook

519 EGP

SKU: 19985 Categories: ,
12 People watching this product now!
Description

Ever felt like your code gets worse instead of better over time? This handbook teaches professional software developers the essential software design and architecture best practices they didn’t teach you in school.

 

What will you learn?

 

✨ Clean Code

Everyone raves about writing clean code, but learning how to write code humans love to work with isn’t straightforward. In this chapter, you’ll learn how to write brain-friendly code using human-centered design principles. We also cover coding conventions professional developers use in their everyday work like writing useful comments, organizing & naming things, testing, refactoring, error handling, and so much more.

⚙️ Object-Oriented Programming & Domain Modeling

Ever wondered where to put your business logic? In this chapter, we learn how to use OOP properly to tackle apps of any complexity. We revisit and relearn object-oriented programming; this time, with the sole purpose of using it to create rich domain models that encode and encapsulate complex business rules by structuring it away from frameworks, dependencies, tools & ORMs like Express.js and Sequelize.

🖼️ Design Principles

Design principles are like guardrails for well-crafted code. They help you identify what makes code great, as well as what causes code to devolve into not-so-greatness… Prevent unmaintainable code by learning how to apply essential software design principles. You’ll be able to identify poor design and apply patterns to refactor towards a better one.

📦 Architectural Principles

Do you find yourself changing features in one part of your app only to break a feature in another?

To accomodate change, prevent expensive refactorings, and keep code modular, testable and flexible, we learn how to use Conway’s Law to identify boundaries, enforce em’, and package them as well-defined components.

💿 How to Build a Real-World App with Domain-Driven Design

Sometimes CRUD and Model-View-Controller just isn’t enough. Domain-Driven Design is an approach to software development that helps you translate complex problem domains into rich, expressive, and evolvable software.

You’ll learn the main ideas behind Domain-Driven Design, how companies scale codebases from monoliths to microservices, and how to design and develop a real-world Forum application using DDD.

And so much more 💫

We’re learning all the essentials of software design, following the “🖼️ Software Design and Architecture Roadmap“, from Clean Code to Domain-Driven Design.

Shipping & Delivery
Books are delivered with a shipping company. Delivery duration is 2-4 working days