آموزش معماری نرم افزار و طراحی کد پاک در OOP

Software Architecture and Clean Code Design in OOP

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: الگوهای طراحی و اصول برنامه نویسی شی گرا را بیاموزید تا نرم افزار خود را مقیاس پذیر و آسان نگه دارید معماری نرم افزار خوب چیست؟ اصول اولیه در معماری نرم افزار در اصول OOP SOLID کوپلینگ کم و پیوستگی بالا چیست؟ نحوه گروه بندی واحدها در بسته ها، ماژول ها، فضاهای نام یا مؤلفه ها تکنیک های عملی و اثبات شده برای تبدیل شدن به یک معمار نرم افزار عالی الگوهای طراحی نرم افزار الگوهای معماری مورد استفاده تقریباً در هر سیستم نرم افزاری طراحی کد پاک نمونه هایی از کد SOLID در برنامه نویسی شی گرا را مرور کنید. معماری خوب و بد توسعه آزمایش محور (TDD) برای هدایت معماری نرم افزار توسعه مبتنی بر رفتار (BDD) پذیرش توسعه مبتنی بر آزمایش (ATTD) معماری پایگاه داده ایمن و قوی معماری الگوهای طراحی برنامه وب الگوهای طراحی MVC الگوی طراحی الگوی DAO الگوی معماری لایه ای الگوی REST معماری پیش نیازها: درک اولیه برنامه نویسی شی گرا. در صورتی که هیچ دانش قبلی در مورد OOP ندارید، دوره دیگر من را با نام "برنامه نویسی شی گرا - از مبانی تا پیشرفته" تماشا کنید.

از این دوره، می توانید معماری نرم افزار و طراحی کد پاک را در OOP بیاموزید.

دوره های زیادی در این زمینه وجود دارد. بنابراین، چرا دقیقاً این دوره را انتخاب می کنید؟ در اینجا فقط چند دلیل وجود دارد:

- نمونه‌های کدنویسی

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


- کد منبع باز

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

شما مجاز به استفاده از تمام نمونه های کد منبع برای اهداف یادگیری هستید. این به پیکربندی محیط و انجام تست‌ها کمک زیادی می‌کند، به‌ویژه در مواردی که دانش‌آموزان در گذشته با هیچ چارچوب تستی کار نمی‌کردند.

- پشتیبانی Q A

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

بنابراین با این دوره شما نه تنها مطالب ویدئویی، تمرین های کد، کد منبع، دسترسی به برنامه رایگان تلفن همراه بدون محدودیت (که هنوز هم بسیار جالب است، نه؟ :)) دریافت می کنید، بلکه از پشتیبانی معلمان و پاسخ ها نیز بهره مند می شوید. به سوالات شما همراه با این دوره

- دانش مربوطه

بعد از اینکه تیم ما دوره های دیگر جاوا را در Udemy بررسی کرد، متوجه شدیم که اکثر آنها هیچ شباهتی با زندگی واقعی ندارند. اطلاعاتی که در آنجا به اشتراک گذاشته می شود بسیار قدیمی و به طور قابل توجهی قدیمی است. به عنوان مثال، مدرس چارچوبی را آموزش می دهد که 15 سال است استفاده نشده است. یا مربیان روی طراحی برنامه نویسی تاکید می کنند که دیگر اصلاً استفاده نمی شود!

مدرس این دوره مشاور در یک شرکت برون سپاری فناوری اطلاعات با رتبه برتر است و به ارائه راه حل های پیشرفته در فناوری اطلاعات برای همه مشتریان خود کمک می کند. به راحتی می توانید صفحه LinkedIn مربی را بررسی کنید و تأیید مهارت ها را بررسی کنید. بیش از 19 هزار نفر در سراسر جهان (بیشتر BTW از 100 شرکت برتر جهان هستند) مهارت های آندری پیاتاخا را ارزیابی کردند.

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

- برنامه موبایل رایگان بدون محدودیت برای دانش آموزان ما

دانستن جاوا یک مهارت است. بتوانید مصاحبه ها را در شرکت قبول کنید - این یک مهارت دیگر است :) امروزه بسیاری از شرکت ها از آزمون ها برای انتخاب داوطلبان در سطح اول مصاحبه استفاده می کنند. ما برنامه هایی را برای تمرین مهارت ها به طور خاص برای چنین اهدافی توسعه دادیم.

در این دوره، لینک دانلود رایگان اپلیکیشن موبایل خود را برای اندروید در اختیار شما قرار می دهیم. (به زودی برای پلتفرم های iOS نیز در دسترس خواهد بود)

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

همچنین، فقط برای دانش آموزان ما - هیچ محدودیتی برای تلاش برای دریافت گواهینامه وجود ندارد. در این دوره، به شما خواهیم گفت که چگونه یک کد جایزه ویژه تنظیم کنید که محدودیت‌ها را برای دانش‌آموزان ما در داخل برنامه حذف می‌کند.

- غلظت بالای مطالب مفید در هر درس

گاهی اوقات می توانید متوجه شوید که تماشای 5 دقیقه از درس ما معادل تماشای 30 دقیقه درس دیگر است.

این به این دلیل است که زمان صرف شده برای آماده سازی برای درس (اسکریپت برای درس، ساختار درس) و ویرایش ویدیو (برای برش قطعات خسته کننده درس یا زمانی که برنامه بارگیری می شود) گاهی اوقات 10 برابر (گاهی اوقات حتی 20) بیشتر است. به عنوان مدت زمان آخرین درس پس از ویرایش ویدیو.

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

برو و خودت امتحانش کن! از بازخورد شما قدردانی خواهیم کرد.



پس منتظر نباشید! اگر هنوز شک دارید به پیش نمایش دروس نگاه کنید!

همین امروز این دوره را بخرید، و همه به روز رسانی ها را به صورت رایگان دریافت خواهید کرد!

برای کسانی که این دوره آموزشی را با موفقیت پشت سر گذاشتند، یا برای دانش آموزانی که به دلیل پرسیدن سوالات شگفت انگیز شناخته شدند، یک پیشنهاد ویژه از طرف شرکت IT-Bulls وجود دارد! خالق این دوره مدیر عامل و موسس شرکت IT-Bulls است. ما همیشه در جست‌وجوی استعدادهایی هستیم تا استارت‌آپ‌های شگفت‌انگیز خود را همراه با شما اداره کنیم. احتمالاً همیشه آرزوی راه اندازی استارتاپ خود را داشته اید؟ در این دوره، می‌توانید تیمی را پیدا کنید که به شما یاد می‌دهد چگونه این کار را انجام دهید و (در موارد خاص) خوشحال می‌شوید در پیاده‌سازی کمک کنید!

امیدواریم از این دوره لذت ببرید! و به یاد داشته باشید، ما از همه بازخورد شما قدردانی می کنیم! نظرات شما به ما کمک می کند تا بهتر شویم! بازخورد شما به ما کمک می کند تا بهترین دوره جاوا را ایجاد کنیم!

شما را در درس می بینم! :)




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

معرفی Introduction

  • طرح ارتباطی Communication plan

  • دسترسی نامحدود به «یادگیری آن» برای دانش آموزان Unlimited access to 'Learn IT' application for students

  • نکاتی برای بهبود تجربه گذراندن دوره Tips to Improve Your Course Taking Experience

اصول جامد SOLID Principles

  • اصول جامد بررسی و اصل مسئولیت واحد SOLID principles overview & Single Responsibility Principle

  • اصل باز/بسته Open / Closed Principle

  • اصل جایگزینی Liskov Liskov Substitution Principle

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

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

معماری شی گرا، طراحی کد پاک (پیشرفته) Object-oriented Architecture, Clean Code Design (Advanced)

  • معماری کد پاک، اتصال و انسجام Clean Code Architecture, Coupling & Cohesion

  • بگو، از ساختارهای Pricniple و داده ها بپرسید Tell, Don’t Ask Pricniple & Data Structures

  • قانون دمو Law of Demeter

  • اصول بسته بندی P1: اصول انسجام Packaging Pricniples p.1: Cohesion Principles

  • اصول بسته بندی P.2: اصول اتصال و دیگران Packaging Pricniples p.2: Coupling Principles and Others

تمرین: تمرینات کدگذاری برای تمرین اصول جامد PRACTICE: Coding exercises to practice SOLID principles

  • اصل مسئولیت منفرد: تمرین ثبت نام کاربر و احراز هویت Single Responsibility Principle: User Registration and Authentication Refactoring Exercise

  • اصل باز/بسته: چالش تغییر شکل شکل Open / Closed Principle: Shape Refactoring Challenge

  • اصل جایگزینی لیسکوف: چالش بازسازی مربع و مستطیل Liskov Substitution Principle: Square and Rectangle Refactoring Challenge

  • اصل جداسازی رابط: چالش بازسازی مجدد کارگر Interface Segregation Principle: Worker Refactoring Challenge

  • اصل وارونگی وابستگی: چالش بازسازی موتور خودرو Dependency Inversion Principle: Car-Engine Refactoring Challenge

الگوهای طراحی GOF معماری نرم افزار در OOP GoF Design Patterns of Software Architecture in OOP

  • الگوهای GOF: Overview GoF Patterns: Overview

  • الگوهای خلاقیت Creational Patterns

  • الگوهای ساختاری، ص1 Structural Patterns, p.1

  • الگوهای ساختاری، ص2 Structural Patterns, p.2

  • الگوهای رفتاری، ص1 Behevioral Patterns, p.1

  • الگوهای رفتاری، ص2 Behevioral Patterns, p.2

  • الگوهای رفتاری، ص3 Behevioral Patterns, p.3

TDD، BDD و ATTD TDD, BDD & ATTD

  • توسعه مبتنی بر تست: نظریه Test-driven development: Theory

  • BDD و ATTD BDD & ATTD

  • TDD، BDD و ATTD - تمرین TDD, BDD & ATTD - Practice

بخش پاداش Bonus section

  • درس پاداش Bonus lesson

معماری پایگاه داده از ابتدا Databases Architecture from Scratch

  • در مورد این بخش About this section

  • پایگاه های داده: نمای کلی - قسمت 1 Databases: Overview - Part 1

  • پایگاه های داده: نمای کلی - قسمت 2 Databases: Overview - Part 2

  • MySQL: نمای کلی و نصب (از جمله نصب میز کار) MySQL: Overview & Installation (including Workbench Installation)

  • پایگاه های داده رابطه ای: مفاهیم اساسی Relational Databases: Basic Concepts

  • ایجاد طرح و جدول: نامگذاری، دسته بندی، موتورها، انواع، ویژگی های ستون Create Schema & Table: Naming, Collation, Engines, Types, Column Properties

  • مدل سازی و طراحی پایگاه داده: مدل های داده های مفهومی، منطقی و فیزیکی Database Modelling & Design: Conceptual, Logical and Physical Data Models

  • یکپارچگی مرجع: محدودیت کلید خارجی و عملیات آبشاری Referential Integrity: Foreign Key Constraint & Cascading Operations

  • نمایه ها در پایگاه های داده Indexes in Databases

  • عادی سازی و غیرعادی سازی پایگاه داده Database Normalization & Denormalization

الگوهای طراحی اپلیکیشن وب Web Application Design Patterns

  • الگوی طراحی DAO (شیء دسترسی به داده). DAO (Data Access Object) Design Pattern

  • الگوی طراحی MVC MVC Design Pattern

  • معماری لایه ای Layered Architecture

===== امتحان: DAO، پایگاه داده، JDBC، SQL ====== ===== Exam: DAO, Database, JDBC, SQL ======

  • بررسی و حل تکلیف امتحانی Exam task review and solution

===== امتحان: MVC & Layered Architecture ===== ===== Exam: MVC & Layered Architecture =====

  • بررسی اجمالی کار Task Overview

  • بررسی اجمالی راه حل: قسمت 1 Solution Overview: Part 1

  • بررسی اجمالی راه حل: قسمت 2 Solution Overview: Part 2

  • بررسی اجمالی راه حل: قسمت 3 Solution Overview: Part 3

ادغام اتصال Connection Pooling

  • اشتراک اتصال: DBCP، C3P0، HikariCP و تامکت اتصال استخر با JNDI Connection Pooling: DBCP, C3P0, HikariCP & Tomcat Connection Pool with JNDI

معماری نرم افزار ایمن و کدنویسی ایمن Secure Software Architecture and Secure Coding

  • OWASP Top 10: نمای کلی OWASP Top 10: Overview

  • کنترل دسترسی خراب Broken Access Control

  • خطاهای رمزنگاری (تئوری، داده های حساس، نقض داده ها، انواع خرابی ها) Cryptography Failures (Theory, Sensitive Data, Data Breach, Types of Failures)

  • خطاهای رمزنگاری (مثال های عملی، تزریق SQL، TLS/SSL، HTTPS) Cryptography Failures (Practical Examples, SQL Injections, TLS/SSL, HTTPS)

  • خطاهای رمزنگاری (مثال، رمزگذاری رمز عبور، هش کردن، نمک زدن) Cryptography Failures (Examples, Password Encryption, Hashing, Salting)

  • تزریق (نمای کلی، فازی، CWEs، ضربه، انواع تزریق، تزریق فرمان) Injection (Overview, Fuzzing, CWEs, Impact, Injection Types, Command Injection)

  • تزریق (اسکریپت بین سایت، انواع XSS، SQL، JPA، NoSQL Injections) Injection (Cross Site Scripting, Types of XSS, SQL, JPA, NoSQL Injections)

  • تزریق (تزریق XPath، تزریق گزارش، اعتبارسنجی ورودی) Injection (XPath Injection, Log Injection, Input Validation)

  • طراحی ناامن (Overivew، CWEs، Shift Left Security، Threat Modeling Manifesto) Insecure Design (Overivew, CWEs, Shift Left Security, Threat Modeling Manifesto)

  • طراحی ناامن (فرآیند طراحی امن، کنترل‌های امنیتی، معیارها، مثال‌ها) Insecure Design (Secure Design Process, Security Controls, Metrics, Examples)

  • پیکربندی اشتباه امنیتی (نمای کلی، CWE، انواع، حملات واقعی) Security Misconfiguration (Overview, CWEs, Types, Real-life attacks)

  • پیکربندی اشتباه امنیتی (سخت شدن، اعتماد صفر، دفاع در عمق، تمرین) Security Misconfiguration (Hardening, Zero Trust, Defense in Depth, Practice)

  • مولفه های آسیب پذیر و قدیمی Vulnerable & Outdated Components

  • خطاهای شناسایی و احراز هویت Identification & Authentication Failures

  • نقص نرم افزار و یکپارچگی داده Software & Data Integrity Failures

  • خرابی های ثبت و مانیتورینگ امنیتی Security Logging & Monitoring Failures

  • جعل درخواست سمت سرور (SSRF) Server-Side Request Forgery (SSRF)

ورود به جاوا Logging in Java

  • ورود به جاوا: قسمت 1 (تئوری ورود به سیستم، سطوح ثبت‌نام، چارچوب ثبت جاوا) Logging in Java: Part 1 (Logging theory, Logging Levels, Java Logging Framework)

  • ورود به جاوا: قسمت 2 (Log4J، Logback، SLF4J) Logging in Java: Part 2 (Log4J, Logback, SLF4J)

===== تکلیف امتحان: 10 برتر OWASP، کدنویسی و ثبت نام امن ===== ===== EXAM TASK: OWASP Top 10, Secure Coding & Logging =====

  • وظیفه امتحان: توضیحات و راه حل (با اشاره به کد منبع) Exam Task: Description and Solution (with reference to the source code)

معماری REST REST Architecture

  • معماری REST: نمای کلی و اصول کلیدی REST Architecture: Overview and Key Principles

  • کنوانسیون نامگذاری برای خدمات RESTful Naming Convention for RESTful Services

  • اجرای سرویس RESTful با Spring MVC RESTful Service Implementation with Spring MVC

  • بررسی ابزارهای تست API و نصب پستچی Review of tools for API testing & Postman Installation

  • تست API با پستچی API Testing with Postman

مقدمه UML UML Introduction

  • مقدمه ای بر UML Introduction to UML

نمودارهای رفتاری Behavioral Diagrams

  • از نمودار موردی استفاده کنید Use Case Diagram

  • نمودار توالی Sequence Diagram

  • نمودار فعالیت Activity Diagram

  • نمودار وضعیت ماشین State Machine Diagram

  • نمودار ارتباطی (که قبلاً به عنوان نمودار همکاری شناخته می شد) Communication Diagram (formerly known as Collaboration Diagram)

  • نمودار زمان بندی Timing Diagram

  • نمودار نمای کلی تعامل Interaction Overview Diagram

نمودارهای ساختاری Structural Diagrams

  • نمودار کلاس Class Diagram

  • نمودار شی Object Diagram

  • نمودار مؤلفه Component Diagram

  • نمودار بسته Package Diagram

  • نمودار استقرار Deployment Diagram

  • نمودار ساختار ترکیبی Composite Structure Diagram

  • نمودار نمایه Profile Diagram

معیارها و KPIها برای نظارت و کنترل فرآیند توسعه نرم افزار Metrics & KPIs to Monitor and Control Software Development Process

  • چرا این بخش در این دوره قرار دارد و چرا مهم است؟ Why this section is in this course and why it is important?

  • متریک، KPI و OKR Metric, KPI & OKR

  • وضعیت RAG برای ارائه KPI RAG Status to Present KPI

  • مقدمه ای بر معیارهای تعالی مهندسی و شاخص های کلیدی عملکرد Introduction to Engineering Excellence Metrics & KPIs

  • معیارهای توسعه و شاخص‌های کلیدی عملکرد: نسبت و شاخص بدهی فناوری، پیچیدگی چرخه‌ای Development Metrics & KPIs: Tech Debt Ratio & Index, Cyclomatic Complexity

  • معیارهای توسعه و KPI: معیارهای مربوط به آزمون واحد - قسمت 1 Development Metrics & KPIs: Unit Test Related Metrics - Part 1

  • معیارهای توسعه و KPI: معیارهای مربوط به تست واحد - قسمت 2 Development Metrics & KPIs: Unit Test Related Metrics - Part 2

  • معیارهای توسعه و KPI: کد تکراری و فهرست کدهای نظری Development Metrics & KPIs: Duplicate Code & Commented Code Index

  • معیارهای توسعه و شاخص‌های کلیدی عملکرد: زمان حلقه بازخورد مرور کد و بررسی کد Development Metrics & KPIs: Code Review Feedback Loop Time & Code Reviews

  • معیارهای توسعه و KPI: شاخص انطباق با قوانین (RCI) و موارد نقض Development Metrics & KPIs: Rules Compliance Index (RCI) & Violations

  • معیارهای توسعه و KPI ها: پوشش تست یکپارچه سازی و پوشش تست پایان به انتها Development Metrics & KPIs: Integration Test Coverage & End-to-End Test Coverage

اصول بازنگری کد Code Review Fundamentals

  • مقدمه ای بر بررسی کد Introduction to Code Reviews

  • مبانی فرآیند بررسی کد Basics of Code Review Process

ابزارها، اتوماسیون، و بهترین شیوه های صنعت Tools, Automation, and Industry Best Practices

  • ابزارهایی برای بررسی کد و تجزیه و تحلیل کد Tools for Code Review and Code Analysis

  • بخش 1 - شیوه بررسی: رعایت استانداردهای کدگذاری Part 1 - Checkstyle: Adhering Coding Standards

  • بخش 2 - شیوه بررسی: رعایت استانداردهای کدگذاری Part 2 - Checkstyle: Adhering Coding Standards

  • PMD: تجزیه و تحلیل کد استاتیک PMD: Static Code Analysis

استراتژی های پیشرفته بازبینی کد Advanced Code Review Strategies

  • دستورالعمل های بازبینی کد و خط مشی مشارکت Code Review Guidelines & Contribution Policy

  • استانداردهای کدنویسی، کیفیت و سازگاری کد Coding Standards, Code Quality & Consistency

  • مانند یک حرفه ای بازخورد ارائه دهید Provide Feedback like a Pro

  • ملاحظات امنیتی در طول بررسی کد Security Considerations During Code Review

  • اصول مقیاس پذیری در کد Scalability Principles in Code

نمایش نظرات

آموزش معماری نرم افزار و طراحی کد پاک در OOP
جزییات دوره
35 hours
105
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
80,683
4 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Andrii Piatakha Andrii Piatakha

بنیانگذار و مدیر عامل شرکت IT-Bulls ، بنیانگذار بستر Learn-IT بنیانگذار و مدیر عامل شرکت IT-Bulls. خالق برنامه موبایل Learn-IT برای افرادی که می خواهند آماده مصاحبه و یادگیری جاوا شوند. مدرس با 4+ سال تجربه. مربی کلیدی جاوا در شرکت های برون سپاری. Andrii کمک می کند تا مهندسان نرم افزار جاوا را از صفر تا تعیین تکلیف اول به آنها آموزش دهد. دوره جاوا وی برای آموزش افرادی با دانش برنامه نویسی صفر استفاده می شود تا آنها را برای کار واقعی در شرکت های مختلف آماده کند. هنگامی که دوره های Andrii را می گذرانید می توانید مطمئن باشید که چیزهای درست را در کمترین زمان ممکن به روش صحیح فرا خواهید گرفت. تمام دوره های Andrii توسط داستان و موفقیت دانشجویان ثابت می شود. در گذشته همه مدرسان برنامه نویس حرفه ای نبودند. تجربه مهندسی زیاد به آندری اجازه داد تا شرکت IT خود را اداره کند. در طول تدریس ، آندری توجه دانش آموزان را فقط به مهمترین موارد متمرکز می کند.

Learn IT University Learn IT University