دوره برنامهنویسی ++C یک دوره پروژهمحور برای یادگیری اصول برنامهنویسی و ساخت نرمافزار با زبان ++C است که مسیر یادگیری را از مفاهیم پایه مانند الگوریتم، حل مسئله، متغیرها، شرطها و حلقهها آغاز کرده و به مفاهیم پیشرفتهتر مانند آرایهها، توابع، اشارهگرها، ساختارها و برنامهنویسی شیءگرا میرساند.
ویژگی مهم دوره این است که مفاهیم فقط بهصورت تئوری آموزش داده نمیشوند؛ بلکه دانشجو آنها را در قالب یک پروژه واقعی مدیریت فروشگاه (Store Management System) بهصورت مرحلهبهمرحله به کار میگیرد.
پروژه از نمایش ساده اطلاعات فروشگاه شروع میشود و در ادامه قابلیتهایی مانند ثبت محصول، محاسبه ارزش موجودی، جستوجوی محصول، استفاده از کلاس و Object، Constructor، کپسولهسازی، ارتباط بین کلاسها و ذخیره و بازیابی اطلاعات از فایل به آن اضافه میشود.
در نتیجه، دانشجو در پایان دوره فقط با مجموعهای از دستورات C++ مواجه نیست، بلکه تجربهی ساخت و توسعه تدریجی یک نرمافزار را نیز به دست میآورد.
پیشنیاز
برای شرکت در این دوره، دانش قبلی برنامهنویسی الزامی نیست.
دوره از مفاهیم ابتدایی برنامهنویسی و حل مسئله آغاز میشود و مفاهیمی مانند الگوریتم، Input/Process/Output، شبهکد و ساختار برنامه را از پایه آموزش میدهد.
بنابراین پیشنیاز اصلی دوره:
آشنایی عمومی با کار با کامپیوتر
توانایی کار با فایلها و نرمافزارهای معمول کامپیوتری
علاقه به یادگیری برنامهنویسی
توانایی حل مسائل ساده و تفکر منطقی است.
پیشنیاز تخصصی در زمینه ++C یا زبان برنامهنویسی دیگری مورد نیاز نیست.
این دوره مناسب چه کسانی است؟
*افرادی که میخواهند برنامهنویسی را از پایه شروع کنند.
*دانشجویان و علاقهمندان حوزه کامپیوتر و فناوری اطلاعات.
*افرادی که میخواهند با ++C بهعنوان یک زبان قدرتمند و همهکاره آشنا شوند.
*افرادی که میخواهند اصول حل مسئله و الگوریتمنویسی را به شکل عملی یاد بگیرند.
*کسانی که قصد دارند در ادامه مسیر به حوزههایی مانند نرمافزار، بازیسازی، برنامههای سیستمی یا برنامهنویسی حرفهای وارد شوند.
*افرادی که قبلاً کمی برنامهنویسی کردهاند اما درک منسجمی از مفاهیمی مانند Pointer، Class، Object و OOP ندارند.
*دانشجویانی که میخواهند یک پروژه را از ابتدا تا مرحله ذخیره اطلاعات و مدیریت داده توسعه دهند.
*ساختار دوره به شکلی طراحی شده که حتی فرد مبتدی نیز بتواند از مفاهیم پایه شروع کند و به مباحثی مانند Pointer، Dynamic Memory، OOP، Constructor، Encapsulation، Inheritance و File Handling برسد.
اهداف اصلی این دوره چیست؟
*ایجاد درک صحیح از مفهوم برنامهنویسی و حل مسئله.
* آموزش تفکر الگوریتمی و تبدیل یک مسئله به مراحل قابل اجرا.
*یادگیری اصول و ساختار زبان ++C.
*توانایی طراحی و پیادهسازی برنامههای کاربردی با ++C.
*آموزش مفاهیم مهمی مانند متغیر، شرط، حلقه، آرایه، رشته و تابع.
*ایجاد درک صحیح از حافظه، Pointer و مدیریت حافظه.
*آشنایی با ساختارهای داده و نحوه سازماندهی اطلاعات.
*آموزش اصول برنامهنویسی شیءگرا (OOP).
*یادگیری طراحی Class و Object و ارتباط میان آنها.
*آموزش مفاهیمی مانند Constructor، Destructor، Encapsulation، Function Overloading و Operator Overloading.
*آشنایی با Composition و Inheritance و نحوه استفاده از آنها در طراحی پروژه.
*آموزش ذخیره و بازیابی اطلاعات با استفاده از فایل.
*مهمتر از همه، تبدیل آموختههای هر بخش به قابلیت جدیدی در یک پروژه واحد.
پس از شرکت در این دوره، چه مهارتهایی را کسب خواهید کرد؟
در پایان دوره، دانشجو میتواند:
*مهارتهای پایه برنامهنویسی مسئله را تحلیل و به مراحل الگوریتمی تبدیل کند.
*الگوریتم و شبهکد طراحی کند.
*ورودی، پردازش و خروجی یک برنامه را مشخص کند.
*برنامههای ++C را ایجاد، کامپایل و اجرا کند.
*مهارتهای برنامهنویسی با ++C
*استفاده از متغیرها و انواع داده
*دریافت و نمایش اطلاعات
*انجام محاسبات
*استفاده از شرطها و تصمیمگیری
*استفاده از حلقهها و ساخت منو
*کار با Array و String
*جستوجو و پردازش اطلاعات
*طراحی و استفاده از Function
*مهارتهای سطح پایینتر و مدیریت حافظه
*درک مفهوم آدرس حافظه و Pointer
*استفاده از Reference
*کار با حافظه ایستا و پویا
*استفاده صحیح از new و delete
*شناخت Memory Leak و خطاهای رایج مدیریت حافظه
*مهارتهای شیءگرا
*طراحی Class و Object
*استفاده از Constructor و Destructor
*پیادهسازی Encapsulation
*استفاده از Getter و Setter
*طراحی Member Function
*ارسال و بازگرداندن Object
*Function Overloading و Operator Overloading
*استفاده از Composition و Inheritance
*طراحی چند Class و ایجاد ارتباط میان آنها
*مهارتهای کار با اطلاعات
*ذخیره اطلاعات در فایل
*خواندن اطلاعات از فایل
*ذخیره چند رکورد
*بازیابی اطلاعات ذخیرهشده
*طراحی برنامهای که اطلاعات آن پس از بسته شدن برنامه نیز قابل بازیابی باشد.
فرصتهای شغلی پس از گذراندن دوره
این دوره میتواند پایه ورود و ادامه مسیر در حوزههای زیر باشد:
*برنامهنویس ++C در سطح Junior
*توسعهدهنده نرمافزارهای دسکتاپ
*برنامهنویس بازی و Game Development، بهویژه با ادامه یادگیری ابزارها و موتورهایی مانند Unreal Engine
*توسعهدهنده نرمافزارهای سیستمی
*برنامهنویسی نرمافزارهای صنعتی و دستگاههای هوشمند
*توسعه نرمافزارهای Embedded با ادامه آموزش تخصصی مرتبط
*توسعهدهنده ++C در پروژههای پردازشی و Performance-oriented
*ادامه مسیر در حوزههای مهندسی نرمافزار، الگوریتم و برنامهنویسی حرفهای
سرفصل های دوره برنامهنویسی ++C
بخش 1 ـ مبانی برنامهنویسی و آشنایی با ++C
بخش 2 ـ ساختار برنامه و دادهها در ++C
بخش 3 ـ عملگرها و محاسبات
بخش 4 ـ تصمیمگیری و کنترل جریان برنامه
بخش 5 ـ حلقهها و تکرار
بخش 6 ـ آرایهها و رشتهها
بخش 7 ـ توابع و محدوده متغیرها
بخش 8 ـ اشارهگرها و مدیریت حافظه
بخش 9 ـ ساختارها و سازماندهی دادهها
بخش 10 ـ مبانی برنامهنویسی شیءگرا
بخش 11 ـ سازندهها و چرخه عمر Object
بخش 12 ـ کپسولهسازی و کنترل دسترسی
بخش 13 ـ توابع عضو، Object و سربارگذاری
بخش 14 ـ آرایهای از Objectها
بخش 15 ـ ارتباط بین کلاسها
بخش 16 ـ کار با فایلها و ذخیره اطلاعات