آموزش ساختارهای داده و OOP با C++: CS104، CS105 Masterclass

Data Structures and OOP with C++ : CS104, CS105 Masterclass

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با استفاده از C++ بر هنر OOP و ساختارهای داده مسلط شوید. اکنون در Masterclass CS104، C105 ثبت نام کنید و مهارت های کدنویسی خود را تقویت کنید! اصول ساختارهای داده و برنامه نویسی شی گرا در C++ را کشف کنید. درک جامعی از نحو و معنای زبان به دست آورید. اصول الگوریتم ها و نحوه به کارگیری آنها در C++ را بیاموزید. اصول انتزاع داده ها، وراثت و چندشکلی را درک کنید، پایه ای قوی برای توسعه برنامه های کاربردی نرم افزاری کارآمد و قابل اعتماد ایجاد کنید. تفاوت‌های بین ساختارهای داده مختلف، مانند آرایه‌ها، لیست‌های پیوندی، پشته‌ها و صف‌ها را بررسی کنید. درک درستی از مدیریت حافظه در C++ ایجاد کنید. الگوریتم هایی بسازید که امکان پردازش کارآمد داده ها را فراهم می کند. درک مفهوم بازگشت و نحوه پیاده سازی آن در C++. آموزش نوشتن و پیاده سازی کلاس ها در C++. به اصول کپسوله سازی و پنهان کردن داده ها مسلط شوید. قدرت وراثت و کاربرد آن در OOP را درک کنید. ایجاد و پیاده سازی انواع داده های انتزاعی برنامه هایی را توسعه دهید که از ساختارهای داده پیشرفته مانند درختان و نمودارها استفاده می کنند. درک عمیقی از اشاره گرها و تخصیص حافظه پویا در C++ به دست آورید. یاد بگیرید که چگونه از قالب ها برای ساخت کلاس ها و توابع عمومی استفاده کنید. اصول بارگذاری اپراتور در ++C را بدانید. بر اصول مدیریت استثنا در C++ مسلط شوید. اصول ورودی و خروجی فایل در C++ را بررسی کنید. برنامه هایی بسازید که از الگوریتم های پیشرفته ای مانند مرتب سازی و جستجو استفاده می کنند. برنامه هایی ایجاد کنید که از ساختارهای داده و الگوریتم ها برای حل مسائل دنیای واقعی استفاده می کنند. بیاموزید که چگونه برنامه های C++ را به طور موثر آزمایش و اشکال زدایی کنید. اصول مهندسی نرم افزار و نحوه اعمال آنها در ++C را بدانید. برنامه هایی را توسعه دهید که از طریق یک رابط کاربری گرافیکی با کاربران تعامل داشته باشند. اصول برنامه نویسی چند رشته ای در سی پلاس پلاس را بدانید. برای نقش C++ در توسعه نرم افزار مدرن قدردانی کنید. یاد بگیرید که چگونه نرم افزاری بسازید که کارآمد، مقیاس پذیر و قابل نگهداری باشد. آشنایی با اصول طراحی نرم افزار و نحوه به کارگیری آنها در C++. مهارت های کار با پایگاه های کد بزرگ و پیچیده را توسعه دهید. یاد بگیرید که چگونه نرم افزاری بسازید که هم کاربردی و هم زیبا باشد. پیش نیازها: برنامه نویسی C++ بسیار بیسیک

به Masterclass CS104، C105 ما خوش آمدید! در این کلاس، با استفاده از زبان برنامه نویسی محبوب، C++، به دنیای ساختارهای داده و برنامه نویسی شی گرا (OOP) می پردازیم.

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

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

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

پشته ها و صف ها نیز ساختارهای داده مهمی هستند که معمولاً در توسعه نرم افزار استفاده می شوند. پشته ها از اصل "آخرین ورود، اولین خروج" (LIFO) استفاده می کنند، در حالی که صف ها از اصل "اولین ورود، اولین خروج" (FIFO) استفاده می کنند. این ساختارهای داده برای مدیریت داده ها در یک ترتیب خاص مفید هستند و ما نحوه پیاده سازی و استفاده از آنها را در کلاس خود خواهیم آموخت.

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

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

در کلاس خود، ما اصول اولیه OOP را در C++ شامل کلاس‌ها، اشیاء، سازنده‌ها و تخریب‌کننده‌ها پوشش می‌دهیم. همچنین در مورد وراثت، چندشکلی، و کپسوله‌سازی و نحوه استفاده از آنها برای بهبود عملکرد برنامه‌هایمان بحث خواهیم کرد.

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

در کلاس خود، نحو C++ و نحوه استفاده از آن برای پیاده سازی ساختارهای داده و مفاهیم OOP را بررسی خواهیم کرد. همچنین یاد خواهیم گرفت که چگونه کد خود را برای عملکرد و کارایی بهینه کنیم.

برای تکمیل آن، کلاس Master CS104، C105 ما، پایه ای محکم در ساختارهای داده و برنامه نویسی شی گرا با C++ در اختیار شما قرار می دهد. شما یاد خواهید گرفت که چگونه ساختارهای داده را پیاده سازی کنید، از مفاهیم OOP برای بهبود کد خود استفاده کنید و از ویژگی های قدرتمند C++ استفاده کنید.


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

D4 - مقدمه ای بر کلاس های CPP D4 - Introduction to CPP Classes

  • کلاس های داده POD POD Data Classes

  • اتحادیه ها در CPP Unions in CPP

  • روش ها در ساختار Methods in Struct

  • کنترل های دسترسی در CPP Access Controls in CPP

  • کلاس ها و اعضای کلاس اولیه Classes and Initializing Class Member

  • سازندگان Constructors

  • ویرانگرها در CPP Destructors in CPP

  • Initializers در CPP Initializers in CPP

مقدمه ای بر اشاره گر Introduction to Pointers

  • اشاره گرها در CPP Pointers in CPP

  • C++ از شروع تا اشاره گر C++ Beginning to Pointers

  • اپراتور Dereference در CPP Dereference Operator in CPP

  • اشاره گرها و آرایه ها Pointers and Arrays

  • nullptr nullptr

  • محاسبات اشاره گر در CPP Pointer arithmetic in CPP

  • آرایه های خارج از محدوده و نشانگرهای Deallocating Arrays out of bounds and Deallocating Pointers

  • Consts و Casts با اشاره گر Consts and Casts with Pointers

  • تخصیص حافظه Allocating Memory

  • تخصیص حافظه به صورت آرایه Allocating memory as arrays

  • طول عمر حافظه Lifetime of Memory

STL STL

  • STL، بردارها و آرایه ها STL, Vectors and Arrays

مراجع در CPP References in CPP

  • منابع References

  • پروژه نمونه با مراجع Example Project With References

  • مثال کد با AUTO، TUPLE و FOR LOOP Code Example with AUTO, TUPLE and FOR LOOP

  • محدوده مبتنی بر حلقه Range Based for Loop

اشاره گرها Pointers

  • اشاره گرها در عمل Pointers in Practice

  • نکات در عمل - قسمت 2 Pointers in Practice - Part 2

  • نکات در عمل - قسمت 3 Pointers in Practice - Part 3

  • نکات در عمل - قسمت 4 Pointers in Practice - Part 4

کارکرد Functions

  • مقدمه ای بر توابع Introduction to Functions

  • توابع - قسمت 1 Functions - Part 1

  • توابع - قسمت 2 Functions - Part 2

  • توابع - قسمت 3 Functions - Part 3

  • توابع - قسمت 4 Functions - Part 4

  • توابع - قسمت 5 Functions - Part 5

  • توابع - قسمت 6 Functions - Part 6

  • توابع - قسمت 7 Functions - Part 7

ساختارهای داده در CPP Data Structures in CPP

  • مقدمه ای بر برنامه نویسی پایه CPP Introduction to Basic CPP Programming

  • ایجاد مولد کارت تصادفی با استفاده از Enum و rand Creating Random Card Generator Using Enum and rand

  • توسعه تابع اصلی و استفاده از static_cast Developing main Function and using static_cast

ساختارهای داده - ADT Data Structures - ADT

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

  • ایجاد کلاس ADT و استفاده از Constructors Creating ADT Class and using Constructors

  • روش‌های مجازی و حذف از کلاس Virtual Methods and Overriding from Class

  • کنترل عملیات کپی با ADT Controlling Copy Operations with ADT

ساختارهای داده - الگوها Data Structures - Templates

  • شروع با قالب ها Starting with Templates

  • الگوهای کلاس در CPP Class Templates in CPP

ساختارهای داده - STL و تحلیل مجانبی Data Structures - STL and Asymptotic Analysis

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

  • تجزیه و تحلیل الگوریتم Algorithm Analysis

  • تحلیل سناریو Scenario Analysis

  • در حال توسعه Main Developing Main

  • روش فاکتوریل Factorial Method

اشاره گرها و آرایه ها Pointers and Arrays

  • درک آرایه ها Understanding Arrays

  • دستکاری آرایه ها Manipulating Arrays

  • شروع با اشاره گرهای آرایه Starting with Array Pointers

  • افزایش اشاره گر در مقابل نمایه سازی آرایه Pointer Increment vs Array Indexing

لیست ADT ADT List

  • ایجاد لیست ADT Creating List ADT

  • توسعه روش های دریافت و درج Developing Get and Insert Methods

  • توسعه روش‌های جستجو و حذف Developing Search and Remove Methods

  • تست لیست ADT Testing ADT List

گره ها در ساختارهای داده Nodes in Data Structures

  • مثال گره و زنجیر Node and Chaining Example

  • ایجاد و زنجیر کردن گره ها با انواع داده های مختلف Creating and Chaining nodes with Different data types

ایجاد LinkedList سفارشی Creating Custom LinkedList

  • ایجاد لیست پیوندی سفارشی Creating Custom Linked List

  • دریافت روش Get Method

  • توسعه روش‌های InsertHead، InsertTail و Insert Developing InsertHead, InsertTail and Insert Methods

  • توسعه عملیات جستجو Developing Search Operation

  • حذف موارد Removing Items

نمایش نظرات

آموزش ساختارهای داده و OOP با C++: CS104، CS105 Masterclass
جزییات دوره
8.5 hours
65
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
11,009
4.4 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Online Computer Science Academy Online Computer Science Academy

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