A Craftsman's Guide to Software Structure and Design
Robert C. Martin

#Clean
#_Code
#Architecture
#Design
#Software
#Robert_C_Martin
#Uncle_Bob
🏗️ راهکارهای عملی معماری نرمافزار از رابرت سی. مارتین («آنکل باب»)
🧠 با استفاده از قوانین جهانی Software Architecture، میتونی بهرهوری دولوپرها رو در کل چرخهی عمر هر سیستم نرمافزاری بهطور چشمگیری افزایش بدی. حالا رابرت سی. مارتین، با تکیه بر موفقیت کتابهای پرفروش Clean Code و The Clean Coder، اون قوانین رو بهت معرفی میکنه و نشون میده چطور ازشون استفاده کنی.
📌 مارتین در کتاب Clean Architecture فقط گزینهها رو توضیح نمیده؛ بلکه با بیش از نیمقرن تجربه در انواع محیطهای نرمافزاری، بهت میگه چه تصمیمهایی بگیری و چرا اون تصمیمها برای موفقیت پروژه حیاتی هستن. مثل همیشه، این کتاب پر از راهحلهای مستقیم، بیحاشیه و کاربردی برای چالشهای واقعی دنیای توسعهست—چالشهایی که میتونن پروژهت رو بسازن یا نابود کنن.
🎯 در این کتاب یاد میگیری:
🏛️ یک Software Architect دقیقاً چه هدفی داره و چه مهارتهایی برای رسیدن به اون لازمه
🧩 اصول مهم طراحی نرمافزار برای مدیریت منطق، جداسازی کامپوننتها و مدیریت دادهها
🔄 اینکه پارادایمهای برنامهنویسی چطور با محدود کردن رفتار دولوپرها، نظم ایجاد میکنن
🧠 تفاوت بین چیزهای حیاتی و چیزهایی که فقط «جزئیات» هستن
🌐 طراحی ساختارهای بهینه برای وب، دیتابیس، اپلیکیشنهای دسکتاپ، کنسول و سیستمهای embedded
📦 تعریف مرزها و لایههای درست و سازماندهی سرویسها و کامپوننتها
⚠️ دلیل اینکه چرا معماریها خراب میشن و چطور میشه ازشون جلوگیری کرد یا اصلاحشون کرد
👥 این کتاب برای هر Software Architect، System Analyst، System Designer، Manager و حتی دولوپرهایی که دارن طراحی دیگران رو پیادهسازی میکنن ضروریه.
📚 فهرست مطالب
بخش اول: مقدمه
فصل 1. طراحی و معماری چیست؟
فصل 2. داستان دو ارزش
بخش دوم: شروع از پایهها (پارادایمهای برنامهنویسی)
فصل 3. مرور پارادایمها
فصل 4. برنامهنویسی ساختیافته
فصل 5. برنامهنویسی شیگرا
فصل 6. برنامهنویسی تابعی
بخش سوم: اصول طراحی
فصل 7. اصل مسئولیت واحد (SRP)
فصل 8. اصل باز و بسته (OCP)
فصل 9. اصل جایگزینی لیسکوف (LSP)
فصل 10. اصل جداسازی اینترفیس (ISP)
فصل 11. اصل وارونگی وابستگی (DIP)
بخش چهارم: اصول کامپوننتها
فصل 12. کامپوننتها
فصل 13. انسجام کامپوننت
فصل 14. کوپلینگ کامپوننت
بخش پنجم: معماری
فصل 15. معماری چیست؟
فصل 16. استقلال
فصل 17. مرزبندی
فصل 18. آناتومی مرزها
فصل 19. سیاست و سطح
فصل 20. قوانین کسبوکار
فصل 21. معماری فریادزن
فصل 22. معماری تمیز
فصل 23. Presenterها و Objectهای ساده
فصل 24. مرزهای جزئی
فصل 25. لایهها و مرزها
فصل 26. کامپوننت اصلی
فصل 27. سرویسها: بزرگ و کوچک
فصل 28. مرز تست
فصل 29. معماری تمیز در سیستمهای Embedded
بخش ششم: جزئیات
فصل 30. دیتابیس یک جزئیات است
فصل 31. وب یک جزئیات است
فصل 32. فریمورکها جزئیات هستند
فصل 33. مطالعه موردی: Video Sales
فصل 34. فصل گمشده
بخش هفتم: پیوست
👤 درباره نویسنده
🚀 رابرت سی. «آنکل باب» مارتین از سال ۱۹۷۰ در حوزه نرمافزار فعالیت میکنه و از ۱۹۹۰ مشاور بینالمللی نرمافزاره. او بنیانگذار شرکت Object Mentor, Inc. هست؛ تیمی از مشاورهای حرفهای که در زمینههای C++، Java، C#، Ruby، طراحی شیگرا، Design Patternها، UML، اجایل و eXtreme Programming به سازمانهای مختلف دنیا مشاوره میدن.
Practical Software Architecture Solutions from the Legendary Robert C. Martin (“Uncle Bob”)
By applying universal rules of software architecture, you can dramatically improve developer productivity throughout the life of any software system. Now, building upon the success of his best-selling books Clean Code and The Clean Coder, legendary software craftsman Robert C. Martin (“Uncle Bob”) reveals those rules and helps you apply them.
Martin’s Clean Architecture doesn’t merely present options. Drawing on over a half-century of experience in software environments of every imaginable type, Martin tells you what choices to make and why they are critical to your success. As you’ve come to expect from Uncle Bob, this book is packed with direct, no-nonsense solutions for the real challenges you’ll face–the ones that will make or break your projects.
Clean Architecture is essential reading for every current or aspiring software architect, systems analyst, system designer, and software manager–and for every programmer who must execute someone else’s designs.
Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Contents
PART I: Introduction
Chapter 1 What Is Design and Architecture?
Chapter 2 A Tale of Two Values
PART II: Starting with the Bricks: Programming Paradigms
Chapter 3 Paradigm Overview
Chapter 4 Structured Programming
Chapter 5 Object-Oriented Programming
Chapter 6 Functional Programming
PART Ill: Design Principles
Chapter 7 SRP: The Single Responsibility Principle
Chapter 8 OCP: The Open-Closed Principle
Chapter 9 LSP: The Liskov Substitution Principle
Chapter 10 ISP: The Interface Segregation Principle
Chapter 11 DIP: The Dependency Inversion Principle
PART IV: Component Principles
Chapter 12 Components
Chapter 13 Component Cohesion
Chapter 14 Component Coupling
PART V: Architecture
Chapter 15 What Is Architecture?
Chapter 16 Independence
Chapter 17 Boundaries: Drawing Lines
Chapter 18 Boundary Anatomy
Chapter 19 Policy and Level
Chapter 20 Business Rules
Chapter 21 Screaming Architecture
Chapter 22 The Clean Architecture
Chapter 23 Presenters and Humble Objects
Chapter 24 Partial Boundaries
Chapter 25 Layers and Boundaries
Chapter 26 The Main Component
Chapter 27 Services: Great and Small
Chapter 28 The Test Boundary
Chapter 29 Clean Embedded Architecture
PART VI: Details
Chapter 30 The Database Is a Detail
Chapter 31 The Web Is a Detail
Chapter 32 Frameworks Are Details
Chapter 33 Case Study: Video Sales
Chapter 34 The Missing Chapter
PART VII: Appendix
Robert C. “Uncle Bob” Martin has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor, Inc., a team of experienced consultants who mentor their clients worldwide in the fields of C++, Java, C#, Ruby, OO, Design Patterns, UML, Agile Methodologies, and eXtreme programming.









