آموزش اصول طراحی نرم‌افزار - آخرین آپدیت

دانلود Software Design Principles

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: در این دوره جامع، بر اصول و الگوهای ضروری که بنیاد توسعه نرم‌افزارهای مدرن را تشکیل می‌دهند، مسلط شوید. این دوره شما را در مسیر تکامل طراحی نرم‌افزار، از درک بدنه دانش مهندسی نرم‌افزار تا پیاده‌سازی سبک‌های معماری پیشرفته هدایت می‌کند. شما اصول طراحی شی‌گرا، تکنیک‌های بازسازی کد (Refactoring) و الگوهای طراحی در رشته‌های مختلف را بررسی خواهید کرد و یاد می‌گیرید که تفاوت بین طراحی معماری سطح بالا (High-level) و طراحی تفصیلی سطح پایین (Low-level) را تشخیص دهید. از طریق مثال‌های کاربردی و کاربردهای واقعی، در معماری‌های جنبه‌گرا (Aspect-oriented)، سرویس‌گرا (SOA)، سیستم‌های رویداد-محور و الگوهای MVC تخصص کسب خواهید کرد. با بررسی سیر تاریخی زبان‌های برنامه‌نویسی و محیط‌های توسعه، نحوه ساخت سیستم‌ها از ساده تا پیچیده را درک خواهید کرد. این دوره شما را با مهارت‌های تفکر انتقادی تجهیز می‌کند تا سبک‌های معماری مناسب را انتخاب کنید، اصول طراحی را به صورت سیستماتیک به کار ببرید و راهکارهای نرم‌افزاری قابل نگهداری و مقیاس‌پذیری خلق کنید که پاسخگوی نیازهای در حال تغییر کسب‌وکار و چالش‌های فنی باشد.

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

طراحی نرم‌افزار – یک حوزه دانش کلیدی Software Design – A Key Knowledge Area

  • آشنایی با مدرس: پروفسور رامپراساد جوشی Meet Your Instructor - Prof. Ramprasad Joshi

  • آشنایی با مدرس: پروفسور پراشانت جوشی Meet Your Instructor - Prof. Prashant Joshi

  • اصول طراحی نرم‌افزار: ویدئوی معرفی دوره Software Design Principles: Course Introductory Video

  • توسعه نرم‌افزار – هنر و علم Software Development – Art & Science

  • توسعه نرم‌افزار – نیازمندی‌ها Software Development - Requirements

  • توسعه نرم‌افزار – طراحی Software Development - Design

  • توسعه نرم‌افزار – ساخت Software Development - Construction

  • توسعه نرم‌افزار – تست Software Development - Testing

  • توسعه نرم‌افزار – نگهداری Software Development - Maintenance

  • توسعه نرم‌افزار – دیدگاه کاربردمحور Software Development - An Application-Oriented View

  • مبانی محاسبات Foundations of Computing

  • مبانی ریاضیات ۱ Foundations of Mathematics - 1

  • مبانی ریاضیات ۲ Foundations of Mathematics - 2

  • مبانی مهندسی Foundations of Engineering

  • Orange – ابزاری برای داده‌کاوی Orange - A Data Mining Tool

  • نرم‌افزار در دنیای اینترنت اشیاء (IoT) Software In the World of IOT

چرخه حیات توسعه نرم‌افزار و نقش‌های طراحی Software Development Lifecycle and Design Roles

  • دیدگاه چرخه حیات نرم‌افزار (بخش ۱) A Lifecycle View of Software (Part 1)

  • دیدگاه چرخه حیات نرم‌افزار (بخش ۲) A Lifecycle View of Software (Part 2)

  • SDLC و SPLC در یک اپلیکیشن مخاطبین SDLC-SPLC of a Contacts App

  • توسعه نرم‌افزار – نیاز به مراحل Software Development – Need for Phases

  • چرخه حیات نرم‌افزار Life Cycle of Software

  • مراحل و چرخه حیات Phases and Life Cycle

  • عناصر طراحی نرم‌افزار Elements of Software Design

  • سطوح طراحی نرم‌افزار – نیاز و تمرکز Levels of Software Design – Need and Focus

  • همه چیز درباره اصول طراحی نرم‌افزار است It’s All About Software Design Principles

  • مورد کاربردی IoT – نظارت از راه دور مرکز داده IOT Use Case - Remote Monitoring of Data Center

  • Orange – ابزاری برای داده‌کاوی Orange - A Data Mining Tool

طراحی شی‌گرا و اصول طراحی Object-Oriented Design and Design Principles

  • مقدمه‌ای بر طراحی شی‌گرا Introduction to Object Oriented Design

  • مفاهیم کلیدی شی‌گرایی (OO) OO Key Concepts

  • زبان‌های برنامه‌نویسی برای توسعه شی‌گرا Programming Languages for OO Development

  • مقدمه‌ای بر اصول طراحی نرم‌افزار Introduction to Software Design Principles

  • اصول طراحی: انتزاع (Abstraction) SDP: Abstraction

  • اصول طراحی: جفت‌شدگی و پیوستگی (Coupling & Cohesion) SDP: Coupling and Cohesion

  • اصول طراحی: تجزیه و پیمانه‌بندی (Decomposition & Modularisation) SDP: Decomposition & Modularisation

  • اصول طراحی: کپسوله‌سازی و پنهان‌سازی اطلاعات SDP: Encapsulation & Information Hiding

  • اصول طراحی: جداسازی رابط و پیاده‌سازی SDP: Separation of Interface & Implementation

  • اصول طراحی: کفایت، کامل بودن و ابتدایی بودن SDP – Sufficiency, Completeness & Primitiveness

  • اصول طراحی: جداسازی دغدغه‌ها (Separation of Concerns) SDP – Separation of Concerns

طراحی برای بازاستفاده و طراحی برای تغییر – بازسازی کد (Refactoring) Design for Reuse and Design for Change – Refactoring

  • چرا طراحی برای بازاستفاده؟ Why Design for Reuse?

  • چرا طراحی و برنامه‌ریزی برای بازسازی کد (Refactoring)؟ Why Design for and Plan Refactoring?

  • مقدمه‌ای بر مفاهیم بازاستفاده و بازسازی کد Introduction to the Concepts of Reuse and Refactoring

  • بوی بد در کد (Code Smells) Bad Smells in Code

  • طراحی تست برای بازسازی کد Designing Testing for Refactoring

  • از تشخیص تا پیش‌بینی Diagnosis to Prognosis

  • بازسازی متدها Refactoring of Methods

  • بازسازی اشیاء Refactoring of Objects

  • بازسازی داده‌ها Refactoring of Data

  • بازسازی عبارت‌های شرطی Refactoring of Conditionals

  • بازسازی فراخوانی‌های متد Refactoring of Method Calls

  • بازسازی سلسله‌مراتب‌ها Refactoring of Hierarchies

  • بازبینی کلی (Overhauling) Overhauling

الگوهای طراحی: دیدگاه تاریخی و اهمیت Design Patterns - Historical Perspective and Relevance

  • معماری در ساختمان‌ها Architecture in Buildings

  • مقدمه‌ای بر الگوها و معماری Introduction to Patterns and Architecture

  • معماری در طراحی نرم‌افزار Architecture in Software Design

  • چرا الگوها؟ – بحث مفصل (بخش ۱) Why Patterns – A Detailed Discussion (Part 1)

  • چرا الگوها؟ – بحث مفصل (بخش ۲) Why Patterns – A Detailed Discussion (Part 2)

  • چرا الگوها؟ – بحث مفصل (بخش ۳) Why Patterns – A Detailed Discussion (Part 3)

  • رویکرد الگو-محور و اصول معماری – بخش ۱ Pattern Orientation and Principles of Architecture – Part 1

  • رویکرد الگو-محور و اصول معماری – بخش ۲ Pattern Orientation and Principles of Architecture – Part 2

  • رویکرد الگو-محور و اصول معماری – بخش ۳ Pattern Orientation and Principles of Architecture – Part 3

  • سبک‌ها/الگوهای معماری Architectural Styles/Patterns

  • الگوهای طراحی (Design Patterns) Design Patterns

نگرانی‌های عرضی، طراحی جنبه‌گرا و معماری سرویس‌گرا Crosscutting Concerns, Aspect-Oriented Design and Service-Oriented Architecture

  • مقدمه‌ای بر نگرانی‌های عرضی (Cross Cutting Concerns) Introduction to Cross-Cutting Concerns

  • نگرانی‌های عرضی – همتایان Cross-Cutting Concerns – Peers

  • نگرانی‌های عرضی – افزونه‌ها Cross-Cutting Concerns – Extensions

  • مقدمه‌ای بر طراحی جنبه‌گرا (Aspect Oriented Design) Introduction to Aspect-Oriented Design

  • طراحی جنبه‌گرا – ۱ Aspect-Oriented Design – 1

  • طراحی جنبه‌گرا – ۲ Aspect-Oriented Design – 2

  • مقدمه‌ای بر سیستم‌های توزیع شده – بخش ۱ Introduction to Distributed Systems - Part 1

  • مقدمه‌ای بر سیستم‌های توزیع شده – بخش ۲ Introduction to Distributed Systems - Part 2

  • معماری سرویس‌گرا (SOA) Service Oriented Architecture

  • مثالی از طراحی جنبه‌گرا – بخش ۱ An Example of Aspect-Oriented Design - Part 1

  • مثالی از طراحی جنبه‌گرا – بخش ۲ An Example of Aspect-Oriented Design - Part 2

  • مثالی از معماری سرویس‌گرا An Example of Service-Oriented Architecture

  • خلاصه ماژول Module Summary

طراحی سطح بالا در مقابل طراحی سطح پایین High-Level Design vs. Low-Level Design

  • درک طراحی Understanding Design

  • طراحی همان حل مسئله است Design is Problem-Solving

  • طراحی علمی و مهندسی Design Scientific & Engineering

  • نقش و چالش‌های طراح Designer's Role and Challenges

  • نرم‌افزار چیست؟ What is Software?

  • عناصر طراحی سطح بالا Elements of High Level Design

  • طراحی سطح بالا (بخش ۱) High-Level Design (Part 1)

  • طراحی سطح بالا (بخش ۲) High-Level Design (Part 2)

  • عناصر طراحی سطح پایین Elements of Low Level Design

  • طراحی سطح پایین (بخش ۱) Low-Level Design (Part 1)

  • طراحی سطح پایین (بخش ۲) Low-Level Design (Part 2)

  • سطوح و مراحل طراحی (بخش ۱) Levels and Phases of Design (Part 1)

  • سطوح و مراحل طراحی (بخش ۲) Levels and Phases of Design (Part 2)

  • بهترین تجربیات (Best Practices) Best Practices

عناصر و سبک‌های پایه معماری Basic Architectural Elements and Styles

  • از آشفتگی به ساختار – بخش ۱ Mud to Structure - Part 1

  • از آشفتگی به ساختار – بخش ۲ Mud to Structure - Part 2

  • از آشفتگی به ساختار – بخش ۳ Mud to Structure - Part 3

  • سیستم‌های توزیع شده – بخش ۱ Distributed Systems - Part 1

  • سیستم‌های توزیع شده – بخش ۲ Distributed Systems - Part 2

  • سیستم‌های توزیع شده – بخش ۳ Distributed Systems - Part 3

  • سیستم‌های تعاملی – بخش ۱ Interactive Systems - Part 1

  • سیستم‌های تعاملی – بخش ۲ Interactive Systems - Part 2

  • سیستم‌های تعاملی – بخش ۳ Interactive Systems - Part 3

  • سیستم‌های تطبیق‌پذیر – بخش ۱ Adaptable Systems - Part 1

  • سیستم‌های تطبیق‌پذیر – بخش ۲ Adaptable Systems - Part 2

  • سیستم‌های تطبیق‌پذیر – بخش ۳ Adaptable Systems - Part 3

معماری و الگوهای طراحی Architecture and Design Patterns

  • معماری لایه‌ای – بخش ۱ Layered Architecture - Part 1

  • معماری لایه‌ای – بخش ۲ Layered Architecture - Part 2

  • معماری لایه‌ای – بخش ۳ Layered Architecture - Part 3

  • الگوی MVC – بخش ۱ MVC - Part 1

  • الگوی MVC – بخش ۲ MVC - Part 2

  • الگوی MVC – بخش ۳ MVC - Part 3

  • الگوهای سازنده: سینگلتون (Singleton) Creational - Singleton

  • الگوهای ساختاری: دکوراتور (Decorator) Structural - Decorator

  • الگوی طراحی رفتاری: وضعیت (State) Design Pattern- Behavioural State

تکامل سیستم‌های توسعه نرم‌افزار Evolution of Software Development Systems

  • نقش زبان‌ها در توسعه نرم‌افزار The Role of Languages in Software Development

  • زبان‌ها برای سیستم‌های نهفته (Embedded Systems) Languages for Embedded Systems

  • زبان‌ها برای تلفن‌های همراه Languages for Mobile Phones

  • GTK و QT GTK, QT

  • Angular و ReactJS Angular, ReactJS

  • دموی GTK GTK Demo

  • دموی GTK و دیدگاه طراحی GTK Demo and Design View

  • دموی GTK و دیدگاه طراحی – بخش ۱ GTK Demo and Design View - Part 1

  • دموی GTK و دیدگاه طراحی – بخش ۲ GTK Demo and Design View - Part 2

  • دموی GTK در پایتون با استفاده از فریم‌ورک Tkinter GTK Demo in Python Using Tkinter Framework

  • نمایش عملی AngularJS Demonstration - AngularJS

  • IDEها و ابزارها IDEs and Tools

  • خلاصه ماژول Module Summary

نمایش نظرات

آموزش اصول طراحی نرم‌افزار
جزییات دوره
56h 12m
123
(آخرین آپدیت)
513
- از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar