نظرسنجیهای حقوق و دستمزد در سراسر جهان، نقش معمار نرمافزار را بهطور مرتب در میان ۱۰ شغل برتر قرار میدهند، با این حال راهنمای عملی برای کمک به توسعهدهندگان جهت تبدیل شدن به معمار وجود نداشت. این ویرایش بهروز شده، مروری جامع بر جنبههای مختلف معماری نرمافزار ارائه میدهد و شامل پنج فصل جدید است که آخرین بینشهای این حوزه را پوشش میدهد. معماران مشتاق و فعلی، موضوعاتی نظیر ویژگیهای معماری (Architectural Characteristics)، الگوهای معماری، تعیین کامپوننتها، ترسیم معماری، حاکمیت (Governance)، دادهها، هوش مصنوعی مولد (Generative AI)، توپولوژیهای تیم و بسیاری موارد دیگر را بررسی خواهند کرد. مارک ریچاردز و نیل فورد، بهعنوان متخصصان عملی که سالها بهصورت حرفهای کلاسهای معماری نرمافزار را تدریس کردهاند، بر اصول معماری تمرکز دارند که در تمامی پشتههای فناوری (Technology Stacks) کاربرد دارند. شما معماری نرمافزار را با نگاهی مدرن و با در نظر گرفتن تمامی نوآوریهای دهه گذشته کاوش خواهید کرد.
اشتراکی

با مرور فصلها، ساختار ، محتوای کتاب را به سرعت بشناسید.
با مرور فصلهای این کتاب میتونی خیلی سریع بفهمی هر بخش چی یاد میده، ساختار کلی چطوره و از کجا باید شروع کنی. هر فصل روی یک مفهوم یا مهارت خاص تمرکز داره و موضوعات اصلیش رو میبینی تا انتخابت آگاهانهتر باشه. چه بخوای کل کتاب رو دنبال کنی، چه فقط یک بخش خاص رو دنبال کنی، این نما کمکت میکنه مسیرت رو پیدا کنی.

مقدمه
Defining Software Architecture • Laws of Software Architecture • Expectations of an Architect • Make Architecture Decisions • Continually Analyze the Architecture • Keep Current with Latest Trends • Ensure Compliance with Decisions • Understand Diverse Technologies • Know the Business Domain • Possess Interpersonal Skills • Understand and Navigate Politics • Roadmap
درحال تولید...
برای درک بدهبستانهای (Trade-offs) مهم در معماری، توسعهدهندگان باید مفاهیم و اصطلاحات پایهای مربوط به کامپوننتها، ماژولار بودن، اتصال (Coupling) و همبستگی (Connascence) را درک کنند.

تفکر معماری
Architecture Versus Design • Strategic Versus Tactical Decisions • Level of Effort • The Significance of Trade-Offs • Technical Breadth • The 20-Minute Rule • Developing a Personal Radar • Analyzing Trade-Offs • Understanding Business Drivers • Balancing Architecture and Hands-On Coding • There’s More to Architectural Thinking
درحال تولید...

ماژولار بودن
Modularity Versus Granularity • Defining Modularity • Measuring Modularity • Cohesion • Coupling • Core Metrics • Distance from the Main Sequence • Connascence • From Modules to Components
درحال تولید...

تعریف ویژگیهای معماری
Architectural Characteristics and System Design • Architectural Characteristics (Partially) Listed • Operational Architectural Characteristics • Structural Architectural Characteristics • Cloud Characteristics • Cross-Cutting Architectural Characteristics • Trade-Offs and Least Worst Architecture
درحال تولید...

شناسایی ویژگیهای معماری
Extracting Architectural Characteristics from Domain Concerns • Composite Architectural Characteristics • Extracting Architectural Characteristics • Working with Katas • Kata: Silicon Sandwiches • Explicit Characteristics • Implicit Characteristics • Limiting and Prioritizing Architectural Characteristics
درحال تولید...

اندازهگیری و حاکمیت ویژگیهای معماری
Measuring Architecture Characteristics • Operational Measures • Structural Measures • Process Measures • Governance and Fitness Functions • Governing Architecture Characteristics • Fitness Functions
درحال تولید...

دامنه ویژگیهای معماری
Architectural Quanta and Granularity • Synchronous Communication • The Impact of Scoping • Scoping and Architectural Style • Kata: Going Green • Scoping and the Cloud
درحال تولید...

تفکر مبتنی بر کامپوننت
Defining Logical Components • Logical Versus Physical Architecture • Creating a Logical Architecture • Identifying Core Components • Assigning User Stories to Components • Analyzing Roles and Responsibilities • Analyzing Architectural Characteristics • Restructuring Components • Component Coupling • Static Coupling • Temporal Coupling • The Law of Demeter • Case Study: Going, Going, Gone—Discovering Components
درحال تولید...
تفاوت بین سبک معماری و الگوی معماری میتواند گیجکننده باشد. درک سبکهای معماری بخش بزرگی از زمان و تلاش معماران جدید را به خود اختصاص میدهد، زیرا این سبکها مهم و فراوان هستند.
معماران باید سبکهای مختلف و بدهبستانهای (Trade-offs) نهفته در هر کدام را درک کنند تا بتوانند تصمیمات موثری بگیرند؛ هر سبک معماری مجموعهای از بدهبستانهای شناختهشده را در بر میگیرد که به معماران کمک میکند انتخاب درستی برای یک مشکل تجاری خاص داشته باشند.

مبانی
Styles Versus Patterns • Fundamental Patterns • Big Ball of Mud • Unitary Architecture • Client/Server • Architecture Partitioning • Kata: Silicon Sandwiches—Partitioning • Monolithic Versus Distributed Architectures • Fallacy #1: The Network Is Reliable • Fallacy #2: Latency Is Zero • Fallacy #3: Bandwidth Is Infinite • Fallacy #4: The Network Is Secure • Fallacy #5: The Topology Never Changes • Fallacy #6: There Is Only One Administrator • Fallacy #7: Transport Cost Is Zero • Fallacy #8: The Network Is Homogeneous • The Other Fallacies • Team Topologies and Architecture • On to Specific Styles
درحال تولید...

سبک معماری لایهای
Topology • Style Specifics • Layers of Isolation • Adding Layers • Data Topologies • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • When to Use • When Not to Use • Examples and Use Cases
درحال تولید...

سبک معماری مونولیت ماژولار
Topology • Style Specifics • Monolithic Structure • Modular Structure • Module Communication • Data Topologies • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • When to Use • When Not to Use • Examples and Use Cases
درحال تولید...

سبک معماری خط لوله
Topology • Style Specifics • Filters • Pipes • Data Topologies • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • When to Use • When Not to Use • Examples and Use Cases
درحال تولید...

سبک معماری میکروسرویس
Topology • Style Specifics • Core System • Plug-In Components • The Spectrum of “Microkern-ality” • Registry • Contracts • Data Topologies • Cloud Considerations • Common Risks • Volatile Core • Plug-In Dependencies • Governance • Team Topology Considerations • Architecture Characteristics Ratings • Examples and Use Cases
درحال تولید...

سبک معماری سرویسمحور
Topology • Style Specifics • Service Design and Granularity • User Interface Options • API Gateway Options • Data Topologies • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • Examples and Use Cases
درحال تولید...

سبک معماری رویدادمحور
Topology • Style Specifics • Events Versus Messages • Derived Events • Triggering Extensible Events • Asynchronous Capabilities • Broadcast Capabilities • Event Payload • The Swarm of Gnats Antipattern • Error Handling • Preventing Data Loss • Request-Reply Processing • Mediated Event-Driven Architecture • Data Topologies • Monolithic Database Topology • Domain Database Topology • Dedicated Data Topology • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • Choosing Between Request-Based and Event-Based Models • Examples and Use Cases
درحال تولید...

سبک معماری مبتنی بر فضا
Topology • Style Specifics • Processing Unit • Virtualized Middleware • Messaging Grid • Data Grid • Processing Grid • Deployment Manager • Data Pumps • Data Writers • Data Readers • Data Topologies • Cloud Considerations • Common Risks • Frequent Reads from the Database • Data Synchronization and Consistency • High Data Volumes • Data Collisions • Governance • Team Topology Considerations • Style Characteristics • Examples and Use Cases • Concert Ticketing System • Online Auction System
درحال تولید...

معماری سرویسگرای ارکستراسیمحور
Topology • Style Specifics • Taxonomy • Reuse…and Coupling • Data Topologies • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • Examples and Use Cases
درحال تولید...

معماری مایکروسرویس
Topology • Style Specifics • Bounded Context • Granularity • Data Isolation • API Layer • Operational Reuse • Frontends • Communication • Choreography and Orchestration • Transactions and Sagas • Data Topologies • Cloud Considerations • Common Risks • Governance • Team Topology Considerations • Style Characteristics • Examples and Use Cases
درحال تولید...

انتخاب سبک معماری مناسب
Shifting “Fashion” in Architecture • Decision Criteria • Monolith Case Study: Silicon Sandwiches • Modular Monolith • Microkernel • Distributed Case Study: Going, Going, Gone
درحال تولید...

الگوهای معماری
Reuse • Separating Domain and Operational Coupling • Communication • Orchestration Versus Choreography • CQRS • Infrastructure • Broker-Domain Pattern
درحال تولید...
یک معمار نرمافزار موثر نه تنها باید جنبههای فنی معماری نرمافزار را درک کند، بلکه باید تکنیکها و مهارتهای نرم اصلی لازم برای تفکر مانند یک معمار، راهنمایی تیمهای توسعه و برقراری ارتباط موثر با ذینفعان مختلف را نیز داشته باشد. این بخش از کتاب به تکنیکها و مهارتهای نرم کلیدی برای تبدیل شدن به یک معمار نرمافزار موثر میپردازد.

تصمیمات معماری
Architectural Decision Antipatterns • The Covering Your Assets Antipattern • Groundhog Day Antipattern • Email-Driven Architecture Antipattern • Architectural Significance • Architectural Decision Records • Basic Structure • Example • Storing ADRs • ADRs as Documentation • Using ADRs for Standards • Using ADRs with Existing Systems • Leveraging Generative AI and LLMs in Architectural Decisions
درحال تولید...

تحلیل ریسک معماری
Risk Matrix • Risk Assessments • Risk Storming • Phase 1: Identification • Phase 2: Consensus • Phase 3: Risk Mitigation • User-Story Risk Analysis • Risk-Storming Use Case • Availability • Elasticity • Security • Summary
درحال تولید...

ترسیم معماری
Diagramming • Tools • Diagramming Standards: UML, C4, and ArchiMate • Diagram Guidelines • Summary
درحال تولید...

اثربخشی تیمها
Collaboration • Constraints and Boundaries • Architect Personalities • The Control-Freak Architect • The Armchair Architect • The Effective Architect • How Much Involvement? • Team Warning Signs • Process Loss • Pluralistic Ignorance • Leveraging Checklists • Developer Code-Completion Checklist • Unit and Functional Testing Checklist • Software-Release Checklist • Providing Guidance • Summary
درحال تولید...

مهارتهای مذاکره و رهبری
Negotiation and Facilitation • Negotiating with Business Stakeholders • Negotiating with Other Architects • Negotiating with Developers • The Software Architect as a Leader • The 4 Cs of Architecture • Be Pragmatic, Yet Visionary • Leading Teams by Example • Integrating with the Development Team • Summary
درحال تولید...

تلاقیهای معماری
Architecture and Implementation • Operational Concerns • Structural Integrity • Architectural Constraints • Architecture and Infrastructure • Architecture and Data Topologies • Database Topology • Architectural Characteristics • Data Structure • Read/Write Priority • Architecture and Engineering Practices • Architecture and Team Topologies • Architecture and Systems Integration • Architecture and the Enterprise • Architecture and the Business Environment • Architecture and Generative AI • Incorporating Generative AI into Architecture • Generative AI as an Architect Assistant • Summary
درحال تولید...

بازبینی قوانین معماری نرمافزار
First Law: Everything in Software Architecture Is a Trade-Off • Shared Library Versus Shared Service • Synchronous Versus Asynchronous Messaging • First Corollary: Missing Trade-Offs • Second Corollary: You Can’t Do It Just Once • Second Law: Why Is More Important Than How • Out of Context Antipattern • The Spectrum Between Extremes • Parting Words of Advice
درحال تولید...
27 فصل در حال تولید
مدت زمان خوانش
14:40
نوع کتاب
اشتراکی
شرکت کنندگان
0 نفر
تولید کتاب
۳۱ شهریور ۱۴۰۵