سلام ، منو امیر معصوم بیگی هستم و میخوام تو این سری آموزش ها بهتون بگم چطوری میتونید برنامه نویسی رو درک کنید و با مبانی اون آشنا باشید :)
واقعیت اینه خیلیا که وارد حوزه برنامه نویسی میشن ابتدا خیلی سردرگم میشن ! دلیلش اینه که هیچ چیزی درمورد این دنیای جدید نمیدونن ، و وقتی شروع میکنن حس میکنن که هیچ چیزی از اون نمیفهمن و این باعث میشه که از برنامه نویسی زده بشن ! برای همین خیلیا توصیه میکنن که قبل از برنامه نویسی واقعیه فلوچارت و تفکر الگوریتمی رو یاد بگیرن که خود اون باز یادگیریش واسه خیلیا مشکله و اصلا نمیفهمن استادشون منظورش چیه !
خب همین باعث شد که من این مقاله رو بنویسم ! مقاله ای که اصن شما درک کنین یعنی چی برنامه نویسی و اصول اولیش چیه !
برخلاف ریاضی و فیزیک و ... که ما خیلی ساله خوندیم و هیچی نفهمیدیم و فقط یادگرفتیم و نوشتیم ، برنامه نویسی اصلا اینجوری نیست ! ابتدا باید بفهمیم که اصن لغت برنامه نویسی یعنی چی و چرا نیازه که برنامه بنویسیم ، در نتیجه کاملا عملیه !
برنامه نویسی : فکر کنین شما از یک فروشگاه خرید میکنین ، وارد فروشگاه میشید و کالای مورد نظرتون رو انتخاب میکنین و بعد هم به محل پرداخت میرید و مبلغ کالا رو پرداخت میکنید ! خب تبریک میگم شما یک برنامه نوشتید ! شاید گیج شده باشید که این یعنی چی ! درواقع برنامه نویسی به همین سادگیه ، شما میخواید یه کاری رو انجام بدید ولی با کامپیوتر ، در نتیجه بهش میگید که اینکارو بکن ، مثلا بهش میگید برو اون کالا رو انتخاب کن و بعد بخرش ! بر خلاف وقتی که خودتون اینکارو میکنید حالا کامپیوتر اینکارو میکنه ! پس وقتی که ما یک کاری رو میخوایم کامپیوتر واسمون انجام بده ، درواقع برنامه نویسی انجام دادیم ! پس تا الان فهمیدم اصن یعنی چی برنامه نویسی !
خب ما فهمیدیم که باید به کامپیوتر بگیم که یه کاری رو واسمون انجام بده ! اما چطور !
اینجاست که زبان های برنامه نویسی متولد میشن ! این زبان ها یا بهتره بگم ابزارها به ما کمک میکنن که بتونیم باهشون به کامپیوتر بفهمونیم چی میخوایم ! حالا فرض کنید میخواید یک میخ رو وارد دیوار کنید ! خب برای اینکار از چه ابزاری استفاده میکنین ؟ آیا با دستمال کاغدی میخ رو به دیوار میکوبید ؟! احتمالا نه :) ، یه ابزار خوب واسه اینکار چکشه ! و شما اون رو انتخاب میکنین و احتمالا بهترین گزینس اما صبر کنین ، آیا نمیشه با آچار فرانسه هم اینکارو کرد ؟! احتمالا واسه بعضی از میخ ها بشه ! و خب بهترین گزینه ما نیست :) حالا برگردیم به زبان های برنامه نویسی ! شما میخواید یه برنامه رو بنویسید ، در دنیای برنامه نویسی هم واسه نوشتن برنامه های مختلف ما ابزار های مختلفی داریم ، که واسه کار های مختلفی ساخته شدن ! و ما از این ابزار استفاده میکنیم که یک برنامه رو بنویسیم ! مثلا نمیایم واسه کوبیدن رو میخ از دستمال کاغذی استفاده کنیم و ابزار خودش رو انتخاب میکنیم :)
خب حالا وقتشه که یک زبان برنامه رو انتخاب کنیم و شروع و نوشتن برنامه خودمون کنیم !
اما نگران نباشید ما قرار نیست کد بنویسیم ! قراره درک کنیم که زبان برنامه نویسی چیکار میکنه !
میخوام یک سناریو رو تو ذهنتون تصور کنید !
سوال : علی میخواد بره خونه ! اون رو به خونه برسونید ! اما دقت کنید ، نمیدونیم که علی پول داره یا نه ، از جایی که وایساده تا خونشون یک کیلومتر راهه ، اون چطوری در راحت ترین راه میتونه به خونشون برسه ؟! علی فقط میتونه پیاده بره یا با ماشین !
خب واسه جواب به این سوال ، باید اول سوال رو تحلیل کنیم و ببینیم که چی میگه !
خب حالا با توجه به اطلاعاتی که داریم باید سناریو خودمون رو بنویسیم !
سناریو : خب اگر راحت ترین رو نظر بگیریم علی یک ماشین میگیره و میره خونشون و کاره ما تموم میشه ! اما اگه پول نداشت چی ؟ اون موقع باید علی پیاده به خونشون بره ، و چون مسیر زیاد نیست میتونه اینکارو بکنه و به خونه برسه !
خب تبریک میگم شما یک برنامه نوشتین !
شاید واستون عجیب باشه ، ولی برنامه نویسی همینه ! برنامه نویسی اینه که شما بفهمید که چه کاری باید انجام بدید ، محدودیت هاتون رو درک کنید و به کاری که میخواید رو انجام بدید !
اما اگه بخوایم کد این رو بنویسیم مثلا یه چیزی مثل زیر میشه
اگر (علی پول داشت) : با ماشین به خونه میره .
در غیر این صورت : پیاده میره به خونه میره.
پس قدم اول در برنامه نویسی اینه بفهمید که چکاری میخواید انجام بدید ! بعد قسمت های کلیدی اون مثل سوال قبل داشتن پول رو در بیارید و حالا با استفاده ابزارتون اون رو پیاده کنید !
حالا در هر زبان برنامه نویسی ای برای فهموندن این قوائد مثل همین داشت پول برای علی دستوراتی داریم که به کامپیوتر بفهمونیم ، مثلا در زبان سی پلاس پلاس (در محیط کنسول) به شکل زیر مینویسیم
if(aliHaveMonny) { cout << "با ماشین میره" ; }else { cout << "پیاده میره" ; }
اول بیایم معنی کلمات انگلیسی که نوشتم رو بفمیم
if : اگر
aliHaveMonny : علی پول داشت
cout : دستوری برای چاپ کردن نتیجه یا نشان دادن نتیجه
else : در غیر این صورت
خب حالا که معنی رو فهمیدیم میبینم که چیزی که نوشتیم خیلی با چیزی که بالاتر به زبان فارسی نوشته بودیم تفاوتی نمیکنه ، در برخی از زبان ها خیلی به زبان انسان نزدیکه ، در نتیجه همونجوری که میبیند اگر مفهوم رو ببنید دقیقا جوری نوشته میشه که ما حرف میزنیم و به کامپیوتر توضیح میدیم که چه کاری انجام بده
امیدوارم که این مقاله تا اینجای کار به شما کمک کرده باشه ، به امید دیدار : )