آموزش اصول SOLID برای طراحی و معماری نرم افزار

Master SOLID Principles For Software Design & Architecture

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

در این دوره آموزشی یاد خواهید گرفت که چرا اصول SOLID مهم هستند و چگونه آنها را برای نوشتن کد قابل نگهداری، مقیاس پذیر و قوی به کار ببرید.

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

کیفیت کد خود را به سطح بعدی ببرید

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

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

مهم نیست که مبتدی باشید یا پیشینه نرم‌افزاری داشته باشید، اصول SOLID شما را به یک توسعه‌دهنده نرم‌افزار بهتر تبدیل می‌کند و باعث می‌شود شما را از بقیه متمایز کنید.

یک پایه محکم برای طراحی و معماری نرم افزار بسازید

هدف این دوره کمک به شما در درک ایده های اصلی طراحی و معماری نرم افزار است که توسط مهندسان و معماران نرم افزار با تجربه استفاده می شود. همه اینها بدون نیاز به حفظ دسته ای از الگوهای طراحی برنامه نویسی شی گرا (OOP).

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

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

مهارت های طولانی مدت را به دست آورید

در این دوره به شما نمونه کدهایی را در زبان برنامه نویسی جاوا ارائه می کنم. با این حال، هدف من آموزش جاوا یا هر فناوری دیگری به شما نیست، هدف من این است که فرآیند فکری پشت نوشتن کد بهتر و استفاده از اصول SOLID را به شما آموزش دهم.

در پایان این دوره مهارت هایی خواهید داشت که با تغییر تکنولوژی محبوب بعدی از مد نمی افتند. اصول جامد آزمون زمان را پس داده اند و اینجا هستند تا بمانند.

نمای کلی دوره

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

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

علاوه بر همه اینها، این دوره تا حد امکان دارای اصطلاحات فنی کمتری است و من سعی می کنم موارد را به زبان روزمره توضیح دهم.

این دوره به 5 بخش تقسیم شده است، یکی برای هر یک از اصول:


  • اصل مسئولیت واحد

  • اصل باز-بسته

  • اصل جایگزینی لیسکوف

  • اصل جداسازی رابط

  • اصل وارونگی وابستگی


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

در پایان این دوره می‌توانید مشکلات رایج در کد را شناسایی کنید و خواهید دانست که چگونه آنها را اصلاح کنید.

بنابراین، با تمام گفته‌ها، اگر به دنبال بهبود مهارت‌های خود و نوشتن کدهای بهتر هستید، دیگر به دنبال آن نباشید، زیرا این دوره برای شما مناسب است.


سرفصل ها و درس ها

معرفی Introduction

  • معرفی Introduction

  • چرا باید اصول SOLID را یاد بگیرید Why you should learn the SOLID principles

اصل مسئولیت واحد Single Responsibility Principle

  • مقدمه ای بر اصل مسئولیت واحد Introduction to the Single Responsibility Principle

  • تعریف موجودیت های نرم افزار و ماژول های کد Defining software entities and code modules

  • آنچه به عنوان یک مسئولیت به حساب می آید What counts as a responsibility

  • اهداف اصل مسئولیت واحد و چرایی اهمیت آن Goals of the Single Responsibility Principle and why it matters

  • آزمون اصل مسئولیت تک شماره 1 Single Responsibility Principle Quiz #1

  • تمرین کدنویسی شناسایی مسئولیت ها در مثال کد Coding exercise. Identifying responsibilities in the code example

  • تمرین کدنویسی تصحیح کد برای پیروی از اصل مسئولیت واحد Coding exercise. Fixing the code to follow the Single Responsibility Principle

  • چه زمانی و چگونه می توانیم اصل مسئولیت واحد را نقض کنیم When and how can we violate the Single Responsibility Principle

  • چگونه مقیاس کد ما بر اصل مسئولیت واحد تأثیر می گذارد How the scale of our code affects the Single Responsibility Principle

  • آزمون اصل مسئولیت تک شماره 2 Single Responsibility Principle Quiz #2

اصل باز-بسته Open-Closed Principle

  • مقدمه ای بر اصل باز-بسته Introduction to the Open-Closed Principle

  • دو رویکرد به اصل باز-بسته Two approaches to the Open-Closed Principle

  • آنچه که اصل باز-بسته درباره آن نیست What the Open-Closed Principle is NOT about

  • تزریق وابستگی Dependency Injection

  • امتحان اصل باز-بسته شماره 1 Open-Closed Principle Quiz #1

  • تمرین کدنویسی شناسایی چیزهایی در کد که قابل توسعه نیستند Coding exercise. Identifying things in code that cannot be extended

  • تمرین کدنویسی تصحیح کد قابل تمدید Coding exercise. Fixing the code to be extendable

  • اگر تزریق وابستگی در دسترس نباشد چه باید کرد؟ برنامه نویسی اعلانی What to do if dependency injection is not available. Declarative programming

  • امتحان اصل باز-بسته شماره 2 Open-Closed Principle Quiz #2

اصل جایگزینی لیسکوف Liskov Substitution Principle

  • مقدمه ای بر اصل جایگزینی لیسکوف Introduction to the Liskov Substitution Principle

  • آنچه که اصل جایگزینی لیسکوف در مورد آن اعمال می شود What the Liskov Substitution Principle applies to

  • رفتار برنامه و معنی عدم تغییر آن Program behavior and what it means to not alter it

  • آزمون اصل جایگزینی لیسکوف شماره 1 Liskov Substitution Principle Quiz #1

  • نمونه های کد Code examples

  • چه زمانی و چگونه می توانیم اصل جایگزینی لیسکوف را نقض کنیم When and how can we violate the Liskov Substitution Principle

  • چگونه اصل جایگزینی لیسکوف با انتزاعات مرتبط است How the Liskov Substitution Principle relates to abstractions

  • آزمون اصل جایگزینی لیسکوف شماره 2 Liskov Substitution Principle Quiz #2

اصل جداسازی رابط Interface Segregation Principle

  • مقدمه ای بر اصل جداسازی رابط Introduction to the Interface Segregation Principle

  • جفت. وابستگی به کد به چه معناست Coupling. What it means to depend on code

  • رابط عمومی چیست؟ What is a public interface

  • مقایسه اصول تک مسئولیت و تفکیک واسط Comparing Single Responsibility and Interface Segregation Principles

  • امتحان اصل جداسازی رابط شماره 1 Interface Segregation Principle Quiz #1

  • نمونه کد Code example

  • چرا اصل جداسازی رابط مهم است؟ Why the Interface Segregation Principle is important

  • امتحان اصل جداسازی رابط شماره 2 Interface Segregation Principle Quiz #2

اصل وارونگی وابستگی Dependency Inversion Principle

  • مقدمه ای بر اصل وارونگی وابستگی Introduction to the Dependency Inversion Principle

  • اصل وارونگی وابستگی در مورد چیست What the Dependency Inversion Principle is about

  • وارونگی وابستگی یعنی چه What dependency inversion means

  • آزمون اصل وارونگی وابستگی شماره 1 Dependency Inversion Principle Quiz #1

  • تمرین کدنویسی شناسایی وابستگی ها در مثال کد Coding exercise. Identifying dependencies in the code example

  • تمرین کدنویسی بازنویسی کد برای پیروی از اصل وارونگی وابستگی Coding exercise. Rewriting the code to follow the Dependency Inversion Principle

  • آیا می‌توان همه ماژول‌های کدمان را مستقل کرد؟ Is it possible to make all of our code modules independent

  • به چه ماژول هایی بهتر است بستگی داشته باشید What modules are best to depend on

  • خطرات استفاده بیش از حد از اصل وارونگی وابستگی Dangers of over-applying the Dependency Inversion Principle

  • چگونه مقیاس کد ما بر اصل وارونگی وابستگی تأثیر می گذارد How the scale of our code affects the Dependency Inversion Principle

  • آزمون اصل وارونگی وابستگی شماره 2 Dependency Inversion Principle Quiz #2

Outro Outro

  • سخنرانی پایانی Final lecture

نمایش نظرات

آموزش اصول SOLID برای طراحی و معماری نرم افزار
جزییات دوره
2.5 hours
39
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
108
- از 5
ندارد
دارد
دارد
Kris Code
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Kris Code Kris Code

مهندس نرم افزار حرفه ای