تهران، میدان انقلاب

بوت کمپ برنامه‌ نویسی ++C

دوره آموزشی جامع سی پلاس پلاس

آشنایی با زبان برنامه نویسی ++C

++C یک زبان برنامه‌نویسی شی‌گراست و در سراسر دنیا حدود 4.4 میلیون توسعه‌دهنده از این زبان استفاده می‌کنند. بسیاری از سیستم‌‌های مدرن مانند موتورهای جستجو، برنامه‌‌های کاربردی VR، پایگاه‌های داده، سیستم‌عامل‌‌ها و مرورگرهای وب از کد ++پشتیبانی می‌‌کنند. همچنین محصولات Adobe، Unreal Engine، و مرورگرهای Chrome و Firefox با ++نوشته شده‌اند. ++یک زبان برنامه‌نویسی نزدیک به سخت‌افزار است و در مواردی که سخت‌افزار و نرم‌افزار رابطه نزدیک و تنگاتنگی با هم دارند، بسیار کاربردی و مفید است.

مزایای یادگیری زبان برنامه نویسی سی پلاس پلاس چیست؟

برنامه‌نویسان بزرگ و موفق، معمولاً پیشنهاد می‌کنند یادگیری برنامه‌نویسی را با یکی از زبان‌های برنامه‌نویسی C شروع کنید.

زبان برنامه‌نویسی ++C شاید بهترین انتخاب باشد؛ زیرا:

  1. بسیار کاربردی است:

    • C++ در انواع پروژه‌ها، از توسعه نرم‌افزارهای سطح پایین گرفته تا بازی‌سازی، سیستم‌ عامل‌ها و اپلیکیشن‌های دسکتاپ مورد استفاده قرار می‌گیرد.
  2. کارایی بالایی دارد:

    • C++ یک زبان با کارایی بسیار بالا است و به خصوص برای پروژه‌هایی که نیاز به سرعت اجرا دارند، مناسب است.
  3. کنترل کامل بر سخت‌افزار دارد:

    • این زبان به برنامه‌نویسان این امکان را می‌دهد که به صورت مستقیم بر روی سخت‌افزار کنترل داشته باشند.
  4. از الگوهای برنامه‌نویسی استفاده می‌کند:

    • C++ از الگوهای برنامه‌نویسی (Design Patterns) پشتیبانی کرده و این امکان را فراهم می‌کند که برنامه‌نویسان از تجارب و الگوهای استاندارد در توسعه نرم‌افزارها بهره‌مند شوند.
  5. پایدار و ایمن است:

    • C++ به برنامه‌نویسان این امکان را می‌دهد که به صورت مستقیم با حافظه برنامه تعامل داشته و کنترل بیشتری بر روی مدیریت حافظه داشته باشند.
  6. با زبان C هماهنگ است:

    • C++ توسط Bjarne Stroustrup به عنوان یک توسعه به زبان C ایجاد شد، بنابراین برنامه‌نویسانی که با زبان C آشنایی دارند، می‌توانند به راحتی به C++ منتقل شوند.
  7. شیء گرا است:

    • C++ یک زبان برنامه‌نویسی شیءگرا است که این امکان را فراهم می‌کند که برنامه‌ها را با استفاده از اصول شیءگرایی بهتر سازماندهی کرد.
  8. دارای کتابخانه‌های غنی است:

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

    • برنامه‌های نوشته شده به زبان C++ معمولاً قابل اجرا بر روی سیستم‌های مختلف هستند، بدون نیاز به تغییرات بزرگ در کد منبع!
  10. از پروژه‌های بزرگ پشتیبانی می‌کند:

    • C++ برای توسعه پروژه‌های بزرگ مانند سیستم‌عامل‌ها، نرم‌افزارهای گرافیکی، و بازی‌ها بسیار مناسب است.

این دلایل نشان‌دهنده ویژگی‌هایی هستند که C++ را به یک زبان برنامه‌نویسی محبوب و قدرتمند تبدیل کرده‌اند.

در بوت کمپ سی پلاس پلاس چه خبر است؟

در بوت کمپ جامع ++C، یادگیری شما محدود به زبان برنامه نویسی سی پلاس پلاس نیست! بلکه طی مدت 200 ساعت، کلیه مهارت‌ها و دانش کاربردی را که نیاز است برای برنامه‌نویس شدن و استفاده از زبان سی شارپ در دست داشته باشید، کسب می‌کنید!

پیشنهاد می‌کنیم حتماً سرفصل‌ها را که کمی پایین‌تر با جزئیات نوشته شده است، برای اطمینان بیشتر مطالعه کنید…

برنامه‌نویسی و کار تیمی

چالش و حل مساله

شایستگی‌های نرم

استخدام یا کار فریلنسینگ

تفاوت بوت‌ کمپ‌ های برنامه‌ نویسی بامداد با دوره‌های آموزشی معمول چیست؟

بوت‌کمپ‌های برنامه‌نویسی، آموزش‌های فشرده، کوتاه‌مدت، پروژه‌محور و کاربردی هستند که افراد را برای ورود به بازار کار آماده می‌کنند. 

یادگیری مهارت برنامه‌نویسی از طریق شرکت در بوت‌کمپ‌های بامداد، چند مزیت دارد:

– در زمان صرفه‌جویی می‌شود: علاوه بر یادگیری دانش تئوری، با کار عملی روی پروژه‌های واقعی، در کوتاه‌ترین زمان مهارت فنی کسب می‌کنید.

– کار کردن روی پروژه‌ها را در قالب تیم یاد می‌گیرید: به شکل عملی با پروژه‌ها درگیر می‌شوید، مهارت حل مساله و کار تیمی در شما تقویت می‌شود و در شرایط خاص، مدیریت بحران را یاد می‌گیرید.

– شبکه‌سازی می‌کنید: با افرادی آشنا می‌شوید که با شما هدف یکسانی دارند و با تیم‌سازی، فرصت‌های شغلی جذاب را شکار می‌کنید.

– شایستگی‌های نرم را آموزش می‌بینید: شایستگی‌ها و مهارت‌هایی مانند رزومه‌نویسی حرفه‌ای، آداب حضور در جلسات مصاحبه و … همگی از شایستگی‌هایی هستند که به شما برای استخدام در شرکت‌های معتبر کمک می‌کنند.

– به بازار کار معرفی می‌شوید: پس از اتمام دوره و تحویل و دفاع از پروژه نهایی، با در دست داشتن کارنامه شایستگی، به شرکت‌های متقاضی جذب نیروی برنامه‌نویس معرفی می‌شوید.

سرفصل‌ های بوت کمپ برنامه نویسی ++C

  • آشنایی با کامپایلرها و محیط‌های برنامه نویسی C++
  • مفاهیم اولیه و سینتکس‌ها و کامنت‌ها
  • انواع داده‌ها
  • انواع متغیرها
  • لایف‌تایم و اسکوپ متغیرها
  • ثابت‌ها
  • انواع Modifier
  • مفاهیم و انواع Storage Classes
  • عملگرها
  • ساختارهای تکرار
  • ساختارهای تصمیم
  • اعداد
  • آرایه
  • رشته
  • اشاره‌گرها، انواع آن و اشاره‌گرهای هوشمند
  • مرجع
  • توابع و call by value/reference/pointer
  • تایم و تاریخ
  • مفاهیم I/O و کار با آنها
  • مفاهیم Struct/Union/namespace
  • مرتبه اجرایی
  • آرایه
  • صف
  • پشته
  • انواع لیست‌ها
  • ساختمان داده Segment tree
  • درخت دو-دویی
  • الگوریتم‌های کار با درخت دو-دویی
  • درخت‌های جستجو AVL و BST
  • درخت هیپ
  • گراف‌ها
  • الگوریتم‌های مرتب‌سازی
  • درهم‌سازی
  • مقدمه‌ای بر STL
  • مفاهیم اولیه (Containers, iterators, algorithms)
  • آرایه‌ها
  •  بردار (vector)
  • انواع لیست
  • انواع صف
  • پشته
  • انواع Set
  • انواع Map
  • الگوریتم‌ها در STL
  • عملیات بدون تغییر در توالی
  • عملیات تغییردهنده‌ی توالی
  • پارتیشن
  • مرتب‌سازی
  • جستجو
  • ادغام
  • الگوریتم‌های حداقل – حداکثر
  • مفاهیم OOP
  • مفهوم Classes and Objects
  • انواع Constructor
  • ارث‌بری
  • مفهوم Data Encapsulation
  • مفهوم virtual functions & virtual tables
  • مفاهیم Overloading (Operator and Function) و Overriding
  • مفهوم Data Abstraction
  • مفهوم Interfaces (Abstract Classes)
  • مفهوم Template function/class
  • مفهوم Polymorphism
  • مفهوم Lifetime of Object
  • مفهوم Memory leakage
  • مفهوم Exception Handling
  • انواع الگوهای طراحی (موارد استفاده و نحوه پیاده‌سازی)
  • مفاهیم مهم زبان (Type Casting, Undefined Behavior, Argument Dependent Lookup)
  • مفاهیم برنامه نویسی چند نخی (Multi-Thread)
  • مفاهیم برنامه نویسی شبکه

بخش اول: آشنایی با گیت (Git)

  • نصب و پیکربندی Git
  • نحوه عملکرد گیت و آشنایی با حالت‌های مختلف در Git
  • استفاده از Git در پروژه و بازگردانی تغییرات در گیت از یک حالت به حالت دیگر
  • دستور Reset در Git
  • دستور Checkout در Git
  • دستور Revert در Git

 

بخش دوم: کار با برنچ‌ها (Branch)، لاگ‌‌ها (Log) و مرج کردن (Merge)

  • کار با فایل gitignore.
  • بررسی دستور log در Git
  • مرور Branching در Git و شیوه‌های مختلف ساخت
  • کار با پارامترهای Branchها در Git و ویرایش Branchها
  • Merge کردن Branch در Git
  • مرور Merge Conflict در Git

 

بخش سوم: کار با Stash, Cherry و ابزار‌های دیباگینگ (Debugging)

  • کار با Git Stash
  • کار با Git Blame و پارامترهای آن
  • مرور و کار با Git Bisect
  • کار با Cherry-Pick در Git
  • کار با Cherry در Git

 

بخش چهارم: کار با ریموت، رمزنگاری و رمزگشایی

  • کار با Git Remote و پارامترهای آن
  • کار با Git Clone
  • کار با Tagها در Git

بخش اول: مفاهیم اولیه

  • دانلود و نصب
  • آشنایی با محیط Qt Creator
  • نوشتن چند برنامه ساده
  • آشنایی اولیه با چند ویجت

بخش دوم: ویجت‌ها (Widgets)

  • معرفی و کار با Pushbutton, Label و QLineEdit
  • محاسبه جمع دو عدد دریافتی
  • معرفی و کار با DateEdit, TimeEdit و DateTimeEdit
  • معرفی و کار با MessageBox
  • معرفی و کار با Spinbox
  • معرفی و کار با GroupBox, RadioButton و Checkbox
  • معرفی و کار با ComboBox
  • معرفی و کار با QListWidget
  • معرفی و کار با QTreeWidget
  • معرفی و کار با Splitter
  • معرفی KeyPressEvent

بخش سوم: سیگنال و اسلات

  • تعریف سیگنال و اسلات
  • معرفی گزینه Edit Signals / Slots در فرم با چند مثال
  • اتصال ProgressBar به Slider با دستور Connect

بخش چهارم: مدیریت لایه‌ها

  • معرفی لایه‌های افقی، عمودی، شبکه و فرم
  • برنامه جهت کار با لایه‌های HBoxLayout, VBoxLayout ,GridLayout
  • طراحی فرم Login جهت آشنایی با لایه‌ها و Spacer
  • نوشتن تابع Slot شخصی جهت ایجاد ارتباط LineEdit با PushButton
  • پروژه
  • معرفی StackedLayout

بخش پنجم: نگه‌دارنده‌ها (Containers)

  • معرفی و کار با Vector (دسترسی به عناصر، درج به ابتدا، انتها و موقعیت خاص، حذف از اول و آخر)
  • معرفی و کار با صف (Queue) (درج و حذف در صف)
  • معرفی و کار با پشته (Stack) (درج و حذف در پشته)
  • معرفی و کار با List (درج و حذف – دسترسی به عناصر لیست با Iterator)
  • معرفی و کار با Set, Map و Hash
  • آشنایی با QFill و QSort, QFind, QCopy
  • پروژه برای Connect چند Widget به کمک صف

بخش ششم: فایل

  • معرفی QDir
  • برنامه نوشتن و خواندن از فایل
  • پروژه Notepad ساده
  • ایجاد یک کلاس و نوشتن و خواندن در فایل با Overload عملگرها
  • نوشتن و خواندن در فایل XML

درس هفتم: گرافیک

  • معرفی و کار با ویجت GraphicsView
  • برنامه رسم مستطیل و معرفی QGraphicsScene, QPen و QBrush
  • برنامه حرکت مستطیل به کمک موس
  • معرفی و کار با paintEvent
  • کار با Line, Point, Ellipse و Poly
  • نوشتن یک برنامه جامع
  • بررسی چند مثال از محیط Qt Creator

بخش هشتم: اتصال به پایگاه داده

  • آشنایی با SQLite
  • ایجاد پایگاه داده (تهیه کننده – قطعه) در محیط SQLite
  • آموزش SQL مقدماتی (Select- Insert – Update – Delet)
  • برنامه استفاده از دیتابیس ایجاد شده در محیط SQLite به همراه ایجاد فرم برای جستجو، بهنگام سازی و حذف
  • برنامه ایجاد دیتابیس و جدول با کدنویسی

بخش نهم: نخ (Thread)

  • استفاده از نخ در محیط کیوت
  • برنامه تولید کننده – مصرف کننده (استفاده از سمافور)

بخش دهم: QML

  • معرفی QML
  • معرفی و کار با Item,Text, Rectangle و Image
  • نوشتن تابع و ایجاد دکمه (JavaScript)
  • استفاده از Keys OnDigitPressed و Keys OnPressed
  • آشنایی با MouseArea
  • معرفی و کار با Grid
  • کار با KeyNavigation
  • معرفی و کار با Column و Row
  • معرفی و کار با GridLayout
  • معرفی و کار با TextInput
  • معرفی و کار با ListView

این بوت‌کمپ برای چه افرادی مناسب است؟

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

این بوت‌کمپ برای چه افرادی مناسب نیست؟

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

سوالات پر تکرار

برای شرکت در دوره آموزشی سی پلاس پلاس، نیازی به دانش اولیه برنامه‌نویسی وجود ندارد و مباحث از سطح مقدماتی تا پیشرفته آموزش داده می‌شوند.

در صورتی که در طول دوره سی پلاس پلاس حضور فعال داشته باشید، در قالب تیم روی پروژه‌ها کار کنید و از پروژه پایانی خود به درستی دفاع کنید، توسط تیم بامداد به شرکت‌های متقاضی جذب نیروی برنامه‌نویس معرفی می‌شوید.

بله!

گواهینامه مورد تایید سازمان آموزش فنی و حرفه‌ای در صورت قبولی و دفاع موفق از پروژه پایانی برای شما صادر می‌شود.

بله. پس از اتمام دوره، اگر متقاضی دریافت مدرک سازمان آموزش فنی و حرفه ای باشید، برای شرکت در آزمون تئوری و عملی به سازمان آموزش فنی و حرفه ای استان تهران معرفی می‌شوید.

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

فعلاً کلاسی برای ثبت نام در این بوت‌کمپ وجود ندارد. لطفاً برای ثبت نام در لیست رزرو با کارشناسان ما تماس بگیرید.




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