مبانی برنامه نویسی بدون یاد گیری فلوچارت به زبان ساده با مثال از دنیای واقعی

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