Skip to content

seifiali84/CppTutorialBeginners

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

127 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

جزوه ی سی پلاس پلاس همراه با مثال های کاربردی برای افرادی که تازه قصد ورود به برنامه نویسی دارند و با سی پلاس پلاس شروع کردند.

در قسمت های ابتدایی مطالب گفته شده ساده سازی شد هستن و شاید از نظر علمی بعضی از کلمات استفاده شده درست نباشد.

ممنون میشم اگر جایی مشکلی وجود داشت داخل بخش issues اطلاع بدید تا مشکل رو رفع کنم.

برای مطالب ارائه شده داخل جزوه در حال تولید ویدئو های آموزشی هستم که هر قسمت که ویدئوش آماده بشه لینکشو براتون داخل همون بخش میزارم تا دوستانی که با ویدئو راحت تر هستن بتونن از این ویدئو ها استفاده کنن. لینک معرفی این سری ویدئو ها یا دوره رو براتون میزارم تا به مرور زمان ویدئوی جلسات هم آماده بشه و داخل همین ریپوی گیت هاب قرار بگیره :
https://youtu.be/umXh5LAefcA

ویدئوی معرفی دوره ی روی یوتیوب :
00 - دوره سی پلاس پلاس دانشگاهی - معرفی دوره

برای دنبال کردن اخبار مربوط به ویدئو ها و در کل کار هایی که انجام میدم هم میتونید کانال تلگرام بنده رو دنبال کنید تا بیشتر باهم دیگه تعامل داشته باشیم :
https://t.me/Norex64Channel

ترتیب جزوه :

قسمت اول : Introduction to Programming

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

ویدئوی مربوط به این جلسه :
01 - مقدمه ای بر برنامه نویسی و نصب نرم افزار های لازم برای برنامه نویسی سی پلاس پلاس

داخل این ویدئو با یه سری مقدمات در مورد برنامه نویسی آشنا میشید و یاد میگیرید که چطور برنامه هایی که برای برنامه نویسی سی پلاس پلاس نیاز دارید رو نصب کنید و این مسیر رو ادامه بدید.

قسمت دوم : First Program

اصول پایه ای سی پلاس پلاس و طریقه ی نوشتن یک برنامه‌ی ساده در سی پلاس پلاس داخل این قسمت گفته میشه :

  • معرفی دستور cout
  • کامنت
  • بررسی دقیق تر ساختار فایل سی پلاس پلاس

ویدئوی مربوط به این جلسه :
02 - نوشتن و اجرا کردن اولین برنامه سی پلاس پلاس

داخل این ویدئو اولین برنامه مون رو مینویسیم و با ساختار کلی برنامه های سی پلاس پلاس آشنا میشیم

قسمت سوم : Variables and Constants

داخل این قسمت با مفهوم متغیر آشنایی پیدا می کنید

  • آشنایی با دیتاتایپ ها و متغیر ها
  • آشنایی با قواعد نام گذاری متغیر
  • آشنایی با ثابت ها

ویدئوی مربوط به این جلسه :
03 - آشنایی با متغیر ها در سی پلاس پلاس

داخل این قسمت با متغیر ها در سی پلاس پلاس آشنا میشید و یاد میگیرید چطور یک دیتا رو موقتا داخل برنامه ذخیره کنید.

قسمت چهارم : Operators and User Inputs

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

  • آشنایی با عملگر ها
  • دریافت ورودی از کاربر
  • نوشتن برنامه ی محاسبه ی شاخص توده بدنی

ویدئوی مربوط به این جلسه :
04 - آشنایی با عملگر ها در سی پلاس پلاس

قسمت پنجم : Conditions in cpp

داخل این قسمت با شرط ها در سی پلاس پلاس آشنا میشید و میتونید به برنامه تون قدرت تصمیم گیری بدید.

  • آشنایی با شرط ها در سی پلاس پلاس
  • آشنایی با عملگر های منطقی
  • آشنایی با switch case
  • پیاده سازی چند تمرین

در انتهای این قسمت با استفاده از شرط ها یک بازی ساده (سنگ کاغذ قیچی) پیاده سازی شده که میتونید ببینید و به عنوان تمرین برای خودتون پیاده سازیش کنید و بهش امکانات دیگه ای اضافه کنید.

ویدئوی مربوط به توضیحات شرط ها :
05 - آشنایی با شرط ها در سی پلاس پلاس

و داخل قسمت بعدی یکسری مثال برای بهتر جا افتادن مبحث شرط ها حل می کنیم :
06 - بررسی تعدادی مثال از شرط ها در سی پلاس پلاس

در نهایت برای اتمام حجت و تکمیل مبحث اومدیم و یک بازی سنگ کاغذ قیچی رو پیاده سازی کردیم که میتونید داخل ویدئوی زیر ببینید :
07 - ساختن بازی سنگ کاغذ قیچی در سی پلاس پلاس (مبحث شرط ها)

در ادامه هم داخل این بخش از جزوه به توضیح مبحث Switch داخل سی پلاس پلاس پرداختیم که میتونید داخل این ویدئو ببینید :
08 - آشنایی با سوییچ کیس (Switch Case) در سی پلاس پلاس

قسمت ششم : Arrays and Strings

داخل این قسمت با آرایه ها آشنا میشید و میفهمید که string ها هم در واقع آرایه هایی از char هستند.

  • آشنایی با آرایه ها
  • معرفی ویژگی های آرایه ها
  • ارتباط string و Array
  • معرفی آرایه های چند بعدی

برای این بخش هم مثل باقی بخش ها ویدئوی یوتیوب آماده شده که میتونید از لینک زیر اون ویدئو رو مشهاده کنید :
09 - آشنایی با مقدمات آرایه ها (Arrays) در سی پلاس پلاس

ویدئوی مربوط به کار کردن با string ها (بخش اول) :
15 - کار کردن با string ها در سی پلاس پلاس (بخش اول)

ویدئوی مربوط به کار کردن با string ها (بخش دوم) :
16 -کار کردن با string ها در سی پلاس پلاس (بخش دوم)

در ادامه برای تسلط بیشتر به string ها این ویدئوی تکمیلی آماده شده که میتونید داخلش ببینید چطور باید بخش های مختلف یک متن رو پیدا کنید و روی داده ی متنی تحلیل انجام بدید :
17 - معرفی حلقه ی for-each در سی پلاس پلاس - تبدیل متن به عدد و Split کردن داده ی متنی

ویدئوی مربوط به آرایه های چند بعدی :
18 - بررسی آرایه های چند بعدی(Multi-Dimensional Arrays) در سی پلاس پلاس

قسمت هفتم : Loops and Lists

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

  • آشنایی با انواع حلقه ها
  • آشنایی با حلقه های تو در تو
  • رسم اشکال هندسی با استفاده از حلقه های تو در تو
  • تفکیک کردن ورودی های کاربر و تبدیل اونا به یک آرایه
  • آشنایی با وکتور ها

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

ویدئوی مربوط به آشنایی با حلقه ها (حلقه while) :
10 - آشنایی با حلقه ها در سی پلاس پلاس (while)

ویدئوی مربوط به آشنایی با حلقه ها (حلقه for) :
11 - آشنایی با حلقه ها در سی پلاس پلاس (for)

ویدئوی مربوط به پیمایش روی آرایه ها با استفاده از حلقه ها :
12 - پیمایش روی آرایه ها با استفاده از حلقه ها در سی پلاس پلاس

ویدئوی حل تمرین مربوط به حلقه ها (رسم اشکال هندسی با علامت *) :
13- حل مثال های مربوط به حلقه ها در سی پلاس پلاس (کشیدن اشکال هندسی با کارکتر * در ترمینال)

ویدئوی ارتقاء بازی سنگ کاغذ قیچی و معرفی کلمات کلیدی continue و break :
14 - ارتقاء بازی سنگ کاغذ قیچی و معرفی دستور های break و continue در حلقه ها

قسمت هشتم : Math in cpp

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

  • آشنایی با توابع پر استفاده
  • آشنایی با توابع مثلثاتی
  • آشنایی با توابع معکوس مثلثاتی
  • آشنایی با توابع هایپربولیک

قسمت نهم : Referencing and Pointers

داخل این قسمت با مفهومی به اسم پوینتر آشنا میشید و درک بهتری از طریقه ی کارکرد متغیر ها و ارتباط اونا با رم پیدا خواهید کرد.

  • آشنایی با متغیر مرجع
  • مشاهده ی آدرس متغیر داخل رم
  • آشنایی با پوینتر و استفاده از پوینتر ها
  • پوینتر در آرایه ها

قسمت دهم : Functions in cpp

داخل این قسمت با مفهومی به اسم تابع آشنا میشید و یاد میگیرید که یک تابع تعریف کنید و ازش استفاده کنید. (یک کد رو یک بار بنویسید و هرجایی که خواستید اون رو اجرا کنید.)

  • تعریف تابع
  • تقسیم کردن توابع به دو دسته
  • گرفتن ورودی در تابع
  • گذاشتن مقدار پیشفرض برای ورودی های تابع
  • دریافت یک آرایه به عنوان ورودی در تابع

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

  • پاس دادن ورودی با رفرنس
  • استفاده از Method Overloading و ساختن تابع چند کاره
  • آشنایی با مفهوم تابع بازگشتی
  • پیاده سازی تابع فاکتوریل با استفاده از تابع بازگشتی

قسمت دوازدهم : Structures in Cpp

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

  • تعریف کردن Named Structure
  • تعریف کردن Not Named Structure
  • ساختن چند متغیر از استراکچر بدون نام
  • اضافه کردن تابع به استراکچر

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

  • ماهیت شی گرایی
  • تعریف کلاس و آبجکت
  • مثال هایی از کلاس ها و آبجکت ها در واقعیت
  • مثال هایی از کلاس ها و آبجکت ها در دنیای نرم افزار ها

قسمت چهاردهم : Classes and Objects in Cpp

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

  • کلاس و آبجکت ها در سی پلاس پلاس
  • پیاده سازی مثال میوه
  • پیاده سازی مثال حیوان
  • پیاده سازی مثال فروشگاه کامپیوتر
  • آشنایی با Class Methods
  • آشنایی با static Attributes
  • شناخت کلید واژه ی this

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

  • آشنایی با متد سازنده
  • پیاده سازی مثال قلمچی
  • آشنایی با Class Declaration
  • اعلان کردن توابع داخل کلاس
  • ساختن آبجکت و مقدار دهی اون داخل یک خط
  • آشنایی با Access Specifiers

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

  • مفهوم کپسوله کردن
  • مفهوم وراثت و ارث بری
  • وراثت چند مرحله ای
  • ارث بری از چند کلاس
  • آشنایی با کلید واژه ی protected
  • پیاده سازی Polymorphism با استفاده از Method Overloading
  • پیاده سازی Polymorphism با استفاده زا Method Overriding

💰 You can help me by Donating

در نهایت اگر جزوه واقعا براتون مفید بود و خودتون هم مایل بودید میتونید از طریق لینک های زیر از من حمایت کنید. البته جزوه کاملا رایگانه و هیچ الزامی برای دونیت وجود نداره.

Ko-Fi

قسمت های باقی مانده و نقشه ی راه این جزوه

  • قسمت اول : مقدمه ای بر برنامه نویسی
  • قسمت دوم : اولین برنامه
  • قسمت سوم : متغیر ها و ثابت ها
  • قسمت چهارم : عملگر ها و دریافت ورودی از کاربر
  • قسمت پنجم : شرط ها
  • قسمت ششم : آرایه ها و استرینگ ها
  • قسمت هفتم : حلقه ها
  • قسمت هشتم : ریاضیات در سی پلاس پلاس
  • قسمت نهم : پوینتر ها و رفرنس ها
  • قسمت دهم : توابع در سی پلاس پلاس
  • قسمت یازدهم : توابع و پوینتر ها + function Overloading
  • قسمت دوازدهم : استراکچر ها در سی پلاس پلاس
  • قسمت سیزدهم : مقدمه ای بر شی گرایی
  • قسمت چهاردهم : کلاس ها و آبجکت ها در سی پلاس پلاس
  • قسمت پانزدهم : کانستراکتور ها و سطوح دسترسی در کلاس
  • قسمت شانزدهم :مفاهیم پیشرفته ی شی گرایی (Encapsulation , Inheritance , Polymorphism)
  • قسمت هفدهم : کار کردن با فایل ها در سی پلاس پلاس
  • قسمت هجدهم : Exception Handling در سی پلاس پلاس

About

جزوه ی سی پلاس پلاس همراه با مثال های کاربردی برای افرادی که تازه قصد ورود به برنامه نویسی دارند و با سی پلاس پلاس شروع کردند.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages