Design It!: From Programmer to Software Architect
معماری نرم افزار بنیانی است که بر روی آن، نرم افزاری عالی ساخته شده است. یک معماری فوق العاده، به تنهایی کافی نیست تا تضمین کند نرم افزار شما به موفقیتی چشمگیر دست پیدا خواهد کرد، اما معماری اشتباه تقریباً تضمین کننده شکست نرم افزار است. معماری نرم افزار آنقدر مهم است که هر توسعه دهنده نرم افزاری باید بداند که چگونه آن را طراحی کند.
در کتاب Design It!: From Programmer to Software Architect، شما خواهید آموخت که چگونه معماریهای نرم افزاری عالی طراحی کنید. فقط برای روشن شدن موضوع، این کتاب به صورت تئوری و طراحی نرم افزار با انتزاع بالا نیست. شما همچنین هیچ راه حل لوبیای سحر آمیزی، فریمورکها و فناوری هایی را پیدا نمیکنید که هر مشکلی را به شکل جادویی حل کنند. شما یاد میگیرید که چگونه اصول و شیوههای اساسی طراحی را به کار بگیرید، که شما را به یک برنامه نویس، معمار و یک رهبر فنی قویتر تبدیل میکند.
طراحی نرم افزار عالی به چیزی بیش از تسلط بر اصول و رویهها نیاز دارد. چگونگی طراحی سیستم نرم افزاری، به اندازه نتیجه نهایی مهم است. در این کتاب، نحوه استفاده از تفکر طراحی و روشهای انسان محور را برای طراحی معماری نرم افزار با همکاری تیم خود خواهید آموخت. این رویکرد به طراحی معماری به شما کمک میکند تا بین تصمیمات طراحی شما و انسانهایی که تحت تأثیر این تصمیمات قرار گرفته اند ارتباط محکمی برقرار کنید. قرار دادن افراد در ابتدا به شما امکان میدهد تصمیمات طراحی بهتری داشته باشید و در نتیجه نرم افزار بهتری داشته باشید.
Table of Contents
Part I—Introducing Software Architecture
Chapter 1. Become A Software Architect
Chapter 2. Design Thinking Fundamentals
Part II—Architecture Design Fundamentals
Chapter 3. Devise A Design Strategy
Chapter 4. Empathize With Stakeholders
Chapter 5. Dig For Architecturally Significant Requirements
Chapter 6. Choose An Architecture (Before It Chooses You)
Chapter 7. Create A Foundation With Patterns
Chapter 8. Manage Complexity With Meaningful Models
Chapter 9. Host An Architecture Design Studio
Chapter 10. Visualize Design Decisions
Chapter 11. Describe The Architecture
Chapter 12. Give The Architecture A Report Card
Chapter 13. Empower The Architects On Your Team
Part III—The Architect’s Toolbox
Chapter 14. Activities To Understand The Problem
Chapter 15. Activities To Explore Potential Solutions
Chapter 16. Activities To Make The Design Tangible
Chapter 17. Activities To Evaluate Design Options