0
نام کتاب
Balancing Coupling in Software Design

Universal Design Principles for Architecting Modular Software Systems

Vlad Khononov

Paperback321 Pages
PublisherAddison-Wesley
Edition1
LanguageEnglish
Year2025
ISBN9780137353484
484
A6645
انتخاب نوع چاپ:
جلد سخت
636,000ت
0
جلد نرم
556,000ت
0
طلق پاپکو و فنر
566,000ت
0
مجموع:
0تومان
کیفیت متن:اورجینال انتشارات
قطع:B5
رنگ صفحات:سیاه و سفید
پشتیبانی در روزهای تعطیل!
ارسال به سراسر کشور

#Software_Design

توضیحات

🚀 یاد بگیر که چطور وابستگی (Coupling) روی تک‌تک تصمیمات طراحی نرم‌افزاریت تاثیر میذاره و چطور میشه کنترلش کرد.


💡 اگه می‌خوای سیستم‌های نرم‌افزاری ماژولار، تکامل‌پذیر و منعطفی بسازی، باید مفهوم وابستگی رو درست درک کنی. هر تصمیم طراحی که می‌گیری روی وابستگی تاثیر می‌ذاره و این موضوع هم به نوبه خودش گزینه‌هایی که برای طراحی در اختیار داری رو شکل میده. با وجود اهمیت بالایی که داره، بحث وابستگی معمولا اون‌قدری که باید بهش توجه نمیشه؛ حداقل تا الان که اینطوری بوده.


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


🛠️ ولاد با اصولی که کاملا در عمل تست شدن، بهت یاد میده که نه تنها توی ابعاد مختلف و پیچیده وابستگی‌ها مسیرت رو پیدا کنی، بلکه از خودِ وابستگی به عنوان ابزاری برای مدیریت پیچیدگی و افزایش ماژولاریتی استفاده کنی. و کسی چه می‌دونه، شاید این کتاب کلا طرز فکرت رو درباره طراحی نرم‌افزار عوض کنه.


📑 فهرست مطالب

بخش اول: وابستگی

فصل ۱: وابستگی و طراحی سیستم

فصل ۲: وابستگی و پیچیدگی: کینه‌وین (Cynefin)

فصل ۳: وابستگی و پیچیدگی: تعاملات

فصل ۴: وابستگی و ماژولاریتی


بخش دوم: ابعاد

فصل ۵: وابستگی ماژول در طراحی ساختاریافته

فصل ۶: پیوستگی (Connascence)

فصل ۷: قدرت یکپارچگی

فصل ۸: فاصله

فصل ۹: نوسان


بخش سوم: تعادل

فصل ۱۰: برقراری تعادل در وابستگی

فصل ۱۱: بازنگری در تعادل وابستگی

فصل ۱۲: هندسه فراکتال در طراحی نرم‌افزار

فصل ۱۳: تعادل وابستگی در عمل

فصل ۱۴: نتیجه‌گیری


ویژگی‌های کلیدی

• مفهوم وابستگی و نقشی که در طراحی سیستم و معماری بازی می‌کنه رو تعریف می‌کنه.

• توضیح میده که چطور وابستگی می‌تونه هم پیچیدگی رو بالا ببره و هم باعث بهتر شدن ماژولاریتی سیستم بشه.

• یک مدل جامع معرفی می‌کنه که وابستگی رو به ابزاری برای طراحی نرم‌افزارهای ماژولار تبدیل می‌کنه.

• نشون میده چطور تصمیمات طراحی رو تکامل بدی تا از رشد مداوم سیستم‌های نرم‌افزاری پشتیبانی کنی.

• اصول مورد بحث رو با مثال‌های دقیق بر اساس پروژه‌های واقعی دنیای بیزنس به تصویر می‌کشه.


💬 "وابستگی از اون کلمه‌هاییه که زیاد استفاده میشه ولی کمتر کسی واقعا درکش می‌کنه. ولاد ما رو از شعارهای ساده‌انگارانه‌ای مثل «همیشه اجزا رو از هم جدا کنید» فراتر می‌بره و به سمتی می‌بره که بتونیم بحث دقیقی درباره وابستگی در بستر پیچیدگی و تکامل نرم‌افزار داشته باشیم. اگه نرم‌افزار مدرن می‌سازید، حتما این کتاب رو بخونید!" — گرگور هوپه، نویسنده کتاب آسانسور معمار نرم‌افزار


نقد و بررسی

"این یکی از جالب‌ترین و باکیفیت‌ترین کتاب‌هایی بود که تا حالا در مورد مهندسی نرم‌افزار خوندم." — آدام راکیس


✍️ درباره نویسنده

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

ولاد در فضای رسانه‌ای هم به عنوان سخنران و نویسنده خیلی فعاله. قبل از کتاب تعادل وابستگی در طراحی نرم‌افزار، اون کتاب پرفروش انتشارات اورایلی یعنی یادگیری طراحی دامین‌محور (DDD) رو نوشته. اون یکی از سخنران‌های کلیدی پرطرفداره که در مورد موضوعاتی مثل طراحی دامین‌محور، میکروسرویس‌ها و به طور کلی معماری نرم‌افزار صحبت می‌کنه.


Learn How Coupling Impacts Every Software Design Decision You Makeand How to Control It


If you want to build modular, evolvable, and resilient software systems, you have to get coupling right. Every design decision you make influences coupling, which in turn shapes the design options available to you. Despite its importance, coupling often doesn't receive the attention it deserves—until now.


Since the dawn of software engineering, it's been clear that proper management of coupling is essential for architecting modular software systems. This topic has been extensively researched over the years, but some of that knowledge has been forgotten, and some of it is challenging to apply in this day and age. In Balancing Coupling in Software Design, author Vlad Khononov has built a model that not only draws on this accumulated knowledge, but also adapts it to modern software engineering practices, offering a fresh perspective on modular software design.


With principles grounded in practice, Vlad teaches you not only to navigate the multi-dimensional nature of coupling but also to use coupling as a tool for managing complexity and increasing modularity. And who knows, maybe this book will change the way you think about software design as whole.


  • Defines the concept of coupling and the role it plays in system design and architecture
  • Explains how coupling can both increase complexity and foster modularity of a system
  • Introduces a holistic model that turns coupling into a tool for designing modular software
  • Shows how to evolve design decisions to support continuous growth of software systems
  • Illustrates the discussed principles with detailed examples based on real-life case studies


"Coupling is one of those words that is used a lot, but little understood. Vlad propels us from simplistic slogans like 'always decouple components' to a nuanced discussion of coupling in the context of complexity and software evolution. If you build modern software, read this book!"

Gregor Hohpe, author of The Software Architect Elevator


Review

"This is one of the most interesting, high-quality books on software engineering I've ever read." —Adam Rackis


Table of Contents

Part I: Coupling

Chapter 1: Coupling and System Design

Chapter 2: Coupling and Complexity: Cynefin

Chapter 3: Coupling and Complexity: Interactions

Chapter 4: Coupling and Modularity


Part II: Dimensions

Chapter 5: Structured Design’s Module Coupling

Chapter 6: Connessance

Chapter 7: Integration Strength

Chapter 8: Distance

Chapter 9: Volatility


Part III: Balance

Chapter 10: Balancing Coupling

Chapter 11: Rebalancing Coupling

Chapter 12: Fractal Geometry of Software Design

Chapter 13: Balanced Coupling in Practice

Chapter 14: Conclusion


About the Author

Vlad Khononov is a software engineer with extensive industry experience, working for companies large and small in roles ranging from webmaster to chief architect. His core areas of expertise are distributed systems and software design. Vlad consults with companies to make sense of their business domains, untangle monoliths, and tackle complex architectural challenges.

Vlad maintains an active media career as a public speaker and author. Prior to Balancing Coupling in Software Design, he authored the best-selling O'Reilly book Learning Domain-Driven Design. He is a sought-after keynote speaker, presenting on topics such as domain-driven design, microservices, and software architecture in general.

دیدگاه خود را بنویسید
نظرات کاربران (0 دیدگاه)
نظری وجود ندارد.
کتاب های مشابه
Software Development
791
Building Green Software
463,000 تومان
Software Development
751
Functional and Reactive Domain Modeling
557,000 تومان
Software Development
582
Pragmatic Type-Level Design
582,000 تومان
Software Development
904
Software Sustainability
664,000 تومان
Software Development
938
Shape Up
382,000 تومان
Software Development
993
The Tech Resume Inside Out
229,000 تومان
DevOps
1,210
Accelerate
515,000 تومان
Software Development
542
Building a Career in Software
458,000 تومان
Software Development
1,173
Creating Software with Modern Diagramming Techniques
353,000 تومان
Software Development
950
Software Development From A to Z
529,000 تومان
قیمت
منصفانه
ارسال به
سراسر کشور
تضمین
کیفیت
پشتیبانی در
روزهای تعطیل
خرید امن
و آسان
آرشیو بزرگ
کتاب‌های تخصصی
هـر روز با بهتــرین و جــدیــدتـرین
کتاب های روز دنیا با ما همراه باشید
آدرس
پشتیبانی
مدیریت
ساعات پاسخگویی
درباره اسکای بوک
دسترسی های سریع
  • راهنمای خرید
  • راهنمای ارسال
  • سوالات متداول
  • قوانین و مقررات
  • وبلاگ
  • درباره ما
چاپ دیجیتال اسکای بوک. 2024-2022 ©