Beginning of dialog window. Escape will cancel and close the window.
End of dialog window.
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
در حال بارگزاری، لطفا صبر کنید...
توضیحات دوره:
الگوهای طراحی چیزی است که به عنوان یک برنامه نویس که با زبان های شی گرا کار می کند باید با آن آشنا شوید. و این در درجه اول به این دلیل است که آنها راه حل های کاملاً تعریف شده ای را برای مشکلات رایج توسعه نرم افزار نشان می دهند. بنابراین، به جای اینکه در مورد تمام جزئیات راه حل خود فکر کنید، می توانید به سادگی بررسی کنید که آیا می توان از هر یک از الگوهای طراحی موجود استفاده کرد یا خیر. لازم نیست چرخ را دوباره اختراع کنید.
مشکل اصلی الگوهای طراحی این است که یادگیری آنها لزوما آسان نیست. بسیاری از توسعه دهندگان، به ویژه آنهایی که تجربه زیادی در زمینه ساخت نرم افزار ندارند، با آنها دست و پنجه نرم می کنند. اما اگر با آنها مشکل دارید، ممکن است مانع از دستیابی شما به یک شغل برنامه نویسی در یک سازمان معتبر شود. به هر حال، مدیران استخدام اغلب سوالاتی در مورد الگوهای طراحی می پرسند. در غیر این صورت، ندانستن الگوهای طراحی شما را به عنوان یک توسعهدهنده نرمافزار کاهش میدهد و این امر پیشرفت شغلی شما را کند میکند.
دلیل اصلی اینکه یادگیری الگوهای طراحی بسیار سخت است به دلیل روشی است که معمولاً آموزش داده می شوند. معمولاً، اگر تقریباً هر الگوی طراحی Classon را انتخاب کنید یا تقریباً هر مقاله آنلاینی را در مورد آنها باز کنید، مجموعه ای از الگوهای طراحی را ارائه می دهد که باید آنها را مرور کنید. سپس باید از هر یک از آنها عبور کنید، تمام تلاش خود را بکنید تا اصول پشت آن را درک کنید و تنها پس از آن سعی کنید دریابید که چگونه آن را در یک موقعیت واقعی به کار ببرید.
این یک فرآیند خسته کننده است که همیشه نتایج درستی به همراه ندارد. این غیرمعمول نیست که توسعه دهندگان نرم افزار فقط تعداد انگشت شماری از الگوهای طراحی را که در پروژه های خود استفاده کرده اند به خاطر بسپارند. موارد باقی مانده به محض آموختن فراموش شده اند. و اگر فقط تعداد انگشت شماری از آنها را به خاطر داشته باشید، تشخیص اینکه کدام الگوی طراحی در چه موقعیتی اعمال می شود، دشوار است.
این کلاس، که بر الگوهای طراحی خلاقانه تمرکز دارد، رویکرد متفاوتی ارائه میکند. از روشی استفاده می کند که یادگیری الگوهای طراحی را آسان می کند. بنابراین، دیگر مجبور نیستید از طریق آنها به اجبار راه بیفتید. فرآیند یادگیری مؤثر به خاطر سپردن نیست. این در مورد انجمن ها است. زمانی که بتوانید به وضوح ببینید که چگونه حقایق جدید با دانش موجود شما مرتبط است، چیزهای جدید را به راحتی یاد می گیرید. و این دقیقاً روشی است که این کلاس بر اساس آن ساخته شده است.
شما مجبور نخواهید بود که با اجبار به الگوهای طراحی وارد شوید. در واقع، شما حتی با الگوهای طراحی شروع نخواهید کرد. ابتدا فهرستی از مشکلات رایجی که توسعه دهندگان نرم افزار باید حل کنند را مرور می کنیم. اینها چیزهایی هستند که هر توسعه دهنده نرم افزار می تواند با آنها مرتبط باشد. حتی اگر هنوز با نوع خاصی از مشکل مواجه نشده اید، باز هم می توانید به راحتی توضیحات آن را درک کنید. برای هر یک از این مشکلات، الگوهای طراحی را بررسی خواهیم کرد که می تواند آن را حل کند. و برای هر یک از آنها، شما اصل اصلی آن و شرح چگونگی حل این نوع مشکل را بررسی خواهید کرد. فقط در این صورت از شما دعوت می شود تا این الگوی طراحی خاص را با جزئیات بررسی کنید تا بتوانید نحوه پیاده سازی آن را در کد خود درک کنید.
این ساختار کلاس نیز آن را به عنوان منبع مرجع ارزشمند می کند. حتی زمانی که الگوهای طراحی را نمی دانید یا به خاطر نمی آورید، جستجوی آنها آسان می شود. آنچه شما باید پیدا کنید شرحی از نوع مشکلی است که سعی در حل آن دارید. و سپس میتوانید آن را دنبال کنید تا الگوهای طراحی واقعی را پیدا کنید که میتوانید برای حل آن اعمال کنید.
نمونههای کد مورد استفاده در ویدیوها را میتوانید در اینجا بیابید:
پس از تماشای نمونههای موجود در ویدیوها، باید یک برنامه پخشکننده صوتی NET Core توسعه دهید. برنامه پخش کننده باید شرایط زیر را برآورده کند:
از الگوی طراحی کارخانه برای ایجاد شیئی استفاده کنید که بتواند صداها را در لینوکس یا ویندوز پخش و متوقف کند
اطمینان حاصل کنید که تنها یک نمونه از این شی در سراسر برنامه موجود است (از طریق الگوی طراحی Singleton یا از طریق تزریق وابستگی)
قادر به ساخت یک لیست پخش از آهنگ ها برای پخش باشید
بتوانید اطلاعات لیست پخش را کلون کنید
سرفصل ها و درس ها
درس ها
Lessons
مشکل 3: نگهداری بسیاری از نمونه های شی
Problem 3: maintaining many object instances
مزایا و معایب Singleton
Singleton pros and cons
نمونه سازنده
Builder example
مزایا و معایب سازنده
Builder pros and cons
بررسی اجمالی سینگلتون
Singleton overview
نمونه انتزاعی کارخانه
Abstract Factory example
نمونه اولیه
Prototype example
مثال روش کارخانه
Factory Method example
بررسی اجمالی کارخانه
Abstract Factory overview
مثال سینگلتون
Singleton example
مشکل 2: شبیه سازی اشیاء
Problem 2: cloning objects
چکیده مزایا و معایب کارخانه
Abstract Factory pros and cons
نویسنده و رسالت او
The author and his mission
مقدمه ای بر الگوهای طراحی
Introduction to design patterns
نمای کلی نمونه اولیه
Prototype overview
مشکل 4: نگه داشتن یک نمونه شی واحد در سراسر کد
Problem 4: keeping a single object instance throughout the code
مزایا و معایب روش کارخانه
Factory Method pros and cons
مشکل 1: انتخاب اجرای شی در زمان اجرا
Problem 1: having to choose object implementation at runtime
مزایا و معایب نمونه اولیه
Prototype pros and cons
بررسی اجمالی روش کارخانه
Factory Method overview
نمای کلی سازنده
Builder overview
درس ها
Lessons
بررسی اجمالی کارخانه
Abstract Factory overview
مشکل 3: نگهداری بسیاری از نمونه های شی
Problem 3: maintaining many object instances
مثال روش کارخانه
Factory Method example
مشکل 2: شبیه سازی اشیاء
Problem 2: cloning objects
مزایا و معایب نمونه اولیه
Prototype pros and cons
نمونه اولیه
Prototype example
مزایا و معایب روش کارخانه
Factory Method pros and cons
چکیده مزایا و معایب کارخانه
Abstract Factory pros and cons
نمونه انتزاعی کارخانه
Abstract Factory example
نمونه سازنده
Builder example
مثال سینگلتون
Singleton example
مشکل 1: انتخاب اجرای شی در زمان اجرا
Problem 1: having to choose object implementation at runtime
نویسنده و رسالت او
The author and his mission
مزایا و معایب سازنده
Builder pros and cons
نمای کلی نمونه اولیه
Prototype overview
بررسی اجمالی روش کارخانه
Factory Method overview
مقدمه ای بر الگوهای طراحی
Introduction to design patterns
بررسی اجمالی سینگلتون
Singleton overview
نمای کلی سازنده
Builder overview
مشکل 4: نگه داشتن یک نمونه شی واحد در سراسر کد
Problem 4: keeping a single object instance throughout the code
نمایش نظرات