آموزش معماری پیاز (onion architecture)

توضیحات دوره

عبارت “Onion Architecture” معروف به معماری پیاز اولین بار توسط آقای Jeffery Palermo و در سال ۲۰۰۸ مطرح گردید. در این معماری هر لایه، به لایه ی داخلی تر وابسته بوده و به آن دسترسی دارد. لایه های داخلی هیچ Reference و اشاره ای به لایه های بالاتر ندارند، هرچند می توانند با ارسال Event آن ها را از وقوع رویدادی آگاه کنند. در این معماری لایه ی Domain، داخلی ترین لایه بوده و به هیچ لایه ی بیرونی وابستگی ندارد. معماری Onion با تکیه بر اصل Dependency Inversion تمام وابستگی های لایه ی Domain را در قالب Interface ها در اختیار آن قرار می دهد تا این لایه از جزئیات پیاده سازی و وابستگی به ابزارهای زیر ساختی در امان باشد.

مهمترین دلیل برای ایجاد چنین معماری ای، نیازمندی به ساختاری است تا قابلیت نگهداری برنامه ها در دراز مدت را فراهم نماید. این مورد با رعایت اصل Separation Of Concerns در سرتاسر سیستم به دست می آید.

نکته حائز اهمیت در رابطه با Onion Architecture این است که این معماری برای پروژه های ساده و سبک اصلا مناسب نیست بلکه برای برنامه های بزرگ با رفتارهای پیچیده مناسب می باشد.

معماری پیاز یکی از بهترین معماری های موجود برای پیاده سازی Testability ( قابل تست بودن )، Maintainability ( قابلیت نگهداری ) و Dependability ( قابلیت اطمینان ) در ساختار نرم افزار می باشد.

در این دوره آموزشی ما یک پروژه عملی تحت ASP.Net Core MVC را با استفاده از معماری پیاز به صورت کاملا حرفه ای پیاده سازی نموده ایم تا شما را به طور کامل و حرفه ای با Onion Architecture آشنا کنیم. با یادگیری این دوره آموزشی از این پس شما به راحتی می توانید برنامه های بزرگ با رفتارهای پیچیده را با استفاده از معماری Onion به خوبی پیاده سازی کنید. اگر خواستار تغییر در رویکرد برنامه نویسی خود به شکل کاملا حرفه ای و اصولی هستید و قصد دارید با برنامه نویسان باتجربه در شرکت های نرم افزاری همکاری کنید، یادگیری این بسته آموزشی رو به شما عزیزان توصیه می کنیم. چرا که این بسته آموزشی خیلی جامع و کامل به به معماری Onion و طراحی ساختار پروژه به صورت حرفه ای پرداخته و نکات غنی زیادی برای شما دوستان گرامی همراه دارد.

سرفصل دوره

معرفی دوره (2 قسمت)

معرفی دوره
تضمین کیفیت و راه های پشتیبانی

اصل معکوس سازی وابستگی (Dependency Inversion Principle) (6 قسمت)

اصول SOLID در برنامه نویسی شئ گرا
اصل معکوس سازی وابستگی (DIP)
مفهوم Tightly Coupled Dependency چیست؟
مفهوم Loosely Coupled Dependency چیست؟
اعمال اصل معکوس سازی وابستگی ها (DIP)
IOC Container چیست؟

Built-in .Net Core IOC Container (8 قسمت)

معرفی IOC Container موجود در DotNet Core
استفاده از IOC Container موجود در DotNet Core
طول عمر سرویس ها (Service Lifetimes)
طول عمر Transient
طول عمر Scoped
طول عمر Singleton
Resolving Services From Main
Service Registration Methods

معایب و مزایای معماری Flat و تک لایه ای در MVC(Model-View-Controller) (8 قسمت)

MVC Architecture Introduction
MVC Architecture In Action
معایب معماری تک لایه ای - Technology
معایب معماری تک لایه ای - Testability
معایب معماری تک لایه ای - SRP
معایب معماری تک لایه ای - Scalability
معایب معماری تک لایه ای - CleanCoding
مزایای معماری تک لایه ای

آموزش معماری پیازی (Onion Architecture) (5 قسمت)

Onion Architecture Introduction
لایه دامین (Domain Layer)
لایه اپلیکیشن (Application Layer)
لایه کاربری (Presentation Layer)
لایه زیرساخت (Infrastructure Layer)

پروژه عملی Master Blogger - پیاده سازی بخش Article Category (13 قسمت)

معرفی بخش
پیاده سازی لایه های Domain و Application
پیاده سازی Repository
افزودن لایه Presentation
پیاده سازی لایه Infrastructure.Core
ایجاد Database پروژه
List Article Categories
Create Article Categories
Edit Article Categories
Change Status Article Categories
Domain Service & Validation
ساخت Exception های اختصاصی
ایجاد Github Repository

پروژه عملی Master Blogger - پیاده سازی بخش Article (11 قسمت)

معرفی بخش
پیاده سازی لایه های Domain و Application
پیاده سازی Repository و Mapping
ساخت دیتابیس
List Articles
Create Articles
Edit Article
Remove & Activate Article
Domain Service & Validation
پیاده سازی User Interface
پیاده سازی User Interface - Article Details

پروژه عملی Master Blogger - پیاده سازی بخش Comment (8 قسمت)

معرفی بخش
پیاده سازی لایه های Domain & Application
پیاده سازی Repository و Mapping
ساخت دیتابیس
Add Comment
List Comments
Confirm & Cancel Comments
نمایش Comment ها در سایت

پروژه عملی Master Blogger - بهینه سازی طراحی (4 قسمت)

معرفی بخش
Domain Refactoring
Generic Repository
Unit Of Work

اطلاعات دوره آموزشی


  • مدرس دوره: حسین عباس آبادی
  • مدت زمان دوره: 8:32:52
  • تعداد ویدیو: 65
  • آخرین بروزرسانی: 1399/07/05
  • فیلم های نمونه: امکان دریافت بخش های رایگان

پیش نیازهای دوره

  • آشنایی با یک زبان برنامه نویسی
  • آشنایی با برنامه نویسی object oriented (شی گرا)
  • آشنایی با Asp.net Core MVC

آنچه در پایان دوره خواهید آموخت

  • اصل معکوس سازی وابستگی (Dependency Inversion Principle) و تکنیک تزریق وابستگی (Dependency Injection) با استفاده از IOC Container ها
  • تسلط در استفاده از IOC Container موجود در DotNet Core و ویژگی های آن
  • Service Lifetimes و تفاوت آن ها در عمل
  • مزایا و معایب استفاده از معماری تک لایه (Flat) در MVC (Model-View-Controller)
  • اصول صحیح معماری نرم افزار با به کارگیری معماری پیازی (Onion Architecture) در پروژه عملی
  • تکنیک های کاربردی در معماری مانند Dependency Injection, Unit Of Work و Generic Repository و ...
  • نحوه صحیح استفاده از معماری پیازی (Onion Architecture) در پروژه های بزرگ نرم افزاری
  • پیاده سازی پروژه عملی با استفاده از اندوخته های دوره

لطفا، بدون ریسک خرید کنید!

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

پلن های قیمتی

بسته پایه

  • ضمانت بازگرداندن وجه
  • دریافت به روزرسانی های دوره آموزشی
  • پشتیبانی از طریق واتساپ و تلفن
  • 3 ساعت خصوصی آنلاین جهت رفع اشکالات
  • 200,000 تومان
ثبت نام

بسته ویژه

  • ضمانت بازگرداندن وجه
  • دریافت به روزرسانی های دوره آموزشی
  • پشتیبانی از طریق واتساپ و تلفن
  • 3 ساعت خصوصی آنلاین جهت رفع اشکالات
  • 400,000 تومان
ثبت نام

دانشجویان این دوره، دوره های زیر را هم شرکت کرده اند

نظرات خود را به اشتراک بگذارید
موسسه آموزشی آتریا
نظرات (4)