در این مطلب قصد دارم به معرفی کتاب ها، ویدیوها و وب سایت های آموزشی پیرامون موضوع Domain-Driven Design بپردازم. این لیست ممکن است در آینده بروز رسانی شود و منابع جدید به آن اضافه شوند.
- کتاب ها
نام کتاب : Domain-Driven Design: Tackling Complexity in the Heart of Software
نویسنده : Eric Evans
توضیحات : مبحث DDD اولین بار توسط آقای Eric Evans در این کتاب معرفی شد و میتوان گفت همچنان معتبرترین کتاب در این زمینه می باشد. البته مباحث بسیار زیادی بعد از چاپ این کتاب در زمینه ی DDD مطرح گردیده است. به همین دلیل پیشنهاد می شود بعد از مطالعه ی این کتاب، منابع جدید تر را نیز مطالعه کنید.
نام کتاب : Implementing Domain-Driven Design
نویسنده : Vaughn Vernon
توضیحات : این کتاب به بیان مباحث DDD در قالبی عملی تر و کاربردی تر می پردازد. بسیاری از جزئیات پیاده سازی و پیچیدگی های آن در این کتاب توضیح داده شده و با زبان جاوا پیاده سازی شده اند. همچنین به مباحث جدیدی مانند استفاده از دیتابیس های NoSQL، استفاده از Domain Event ها، CQRS، و … نیز پرداخته شده است. مطالعه ی این کتاب به شدت توصیه می شود.
نام کتاب : Patterns, Principles, and Practices of Domain-Driven Design
نویسنده : Scott Millett & Nick Tune
توضیحات : این کتاب به بیان مباحث DDD در قالبی عملی تر و کاربردی تر می پردازد. بسیاری از جزئیات پیاده سازی و پیچیدگی های پیاده سازی در این کتاب توضیح داده شده اند. همچنین کدها به زبان سی شارپ می باشد. مباحثی مانند نحوه استفاده از NServiceBus برای Integration و تکنولوژی هایی مثل RavenDB و غیره نیز در این کتاب بررسی شده اند.
نام کتاب : Applying Domain-Driven Design and Patterns
نویسنده : Jimmy Nilsson
توضیحات : این کتاب نیز کاملا با رویکرد پیاده سازی و کاربردی نوشته شده است اما بر خلاف کتاب قبل از #C و NET. استفاده کرده است.
ام کتاب : Practicing Domain-Driven Design
نویسنده : Scott Millet
توضیحات : این کتاب توسط آقای Scott Millet نوشته شده و به صورت رایگان بر روی اینترنت منتشر شده است. البته ویراست این کتاب کامل نشده و (در زمان نوشتن این مطلب) تنها ۷۵% از مطالب کتاب در دسترس می باشد. تقریبا میتوان گفت بخش های تئوری کتاب کامل شده است و قسمت پیاده سازی آن در حال کامل شدن می باشد.
نام کتاب : Domain-Driven Design Quickly
نویسنده : Abel Avram & Floyd Marinescu
توضیحات : این کتابچه ی ۱۰۰ صفحه ای توسط موسس های سایت InfoQ نوشته شده است. در این کتاب مقدمات و مفاهیم DDD به صورت خلاصه وار و چکیده با هدف آشنا کردن خواننده بیان شده است.
نام کتاب : Domain-Driven Design References – Definitions and pattern Summaries
نویسنده : Eric Evans
توضیحات : این کتابچه به طور مختصر و خلاصه به توضیح مفاهیم و الگوهای مطرح شده در کتاب اصلی میپردازد. از آنجا که این کتابچه در سال ۲۰۱۱ تالیف گردیده است، برخی مفاهیم که در کتاب اصلی وجود ندارد نیز در آن توضیح داده شده اند.
- ویدیوهای آموزشی
نام ویدیو : Domain-Driven Design Fundamentals
کمپانی و تهیه کنندگان : Pluralsight – Julie Lernman & Steve Smith
توضیحات : این دوره با هدف آموزش مقدمات و اصول DDD تهیه گردیده است. در این ویدیو از یک نرم افزار دمو و همچنین صحبت های آقای Eric Evans از طریق وب کم جهت توضیح مفاهیم کمک گرفته می شود.
عالی و زیبا
بابت معرفی کنابها و لینکهای آموزشی تشکر ویژه دارم .
سلام، خواهش میکنم
ممنون از منابع معرفی شده. با توجه به جدید بودن DDD و بازهم جدیدتر بودن آن در ایران، منابع خوبی برای پرداختن به این موضوع ارائه داده اید که جای تشکر بسیار دارد. بسیار متشکرم
سلام، خواهش میکنم
لطف دارید
خیلی خیلی ممنون
خواهش میکنم
خیلی خیلی ممنون جناب احمدی جهت زحماتتون
سلام
خواهش میکنم محمد جان
سلام و ممنون از زحمات ارزشمند و تلاش قابل ستایشتون
خواهش میکنم مسعود جان
با سلام.
جناب احمدی وضعیت کار برای کسی که به این روش طراحی و همچنین بحث دیپندنسی اینورژن آشنا باشه چطور هست ؟
چون من خودم ضمینه فعالیتم در همین مورد هست می خواستم ببینم چقدر استقبال شده جدیدا از این روش طراحی نرم افزار و نوشتن یونیت تست در ایران ؟
با تشکر پیشاپیش
سلام
همونطور که میدونید طراحی، نگهداری و توسعه ی نرم افزار های Enterprise بدون استفاده از رویکرد ها و Practice هایی مثل DDD، BDD و TDD و … بسیار سخت بوده و باعث مشکلات بسیار زیادی (مانند هزینه ی نگهداری زیاد، عدم گسترش و تغییر در آینده و … ) می شود. امروزه در ایران هم شرکت هایی که در حوزه تولید نرم افزارهای Enterprise فعالیت دارند، کم کم به سراغ این روش ها آمده اند. بر اساس تجربه ی شخصی بنده ، شرکت های جوان تر و تازه تاسیس تر در این حوزه، بیشتر از این روش ها استقبال و استفاده کرده اند. به علت کمبود نیروی مختصص و خبره در این زمینه ها، کسانی که در زمینه های فوق تخصص داشته باشند به راحتی در شرکت های این چنینی جذب می شوند.
سلام
تشکر از توضیحات و منابع خوبتون
سلام
خواهش میکنم محمد جان
هادی جون لینکها خرابه برادر
(همکلاسی دانشکده انقلاب اسلامی) D:
سلام، ممنون که اطلاع دادی همکلاسی
به علت مشکلات کپی رایت لینک های کتاب ها رو حذف کردم.