اصول آموزش برنامه‌ نویسی یا چگونه یک غول را آزاد کنیم؟

ما یک روز بدون این که اصلا قصد توضیح اصول آموزش برنامه‌ نویسی را داشته باشیم، وارد دفتر بامداد شدیم و دیدیم، ای بابا! غول چراغ جادویمان گم شده‌است. هر چقدر صدایش زدیم غول جان! کجایی؟ جواب نداد که نداد.
نشستیم پشت کامپیوتر تا یک آگهی به دفتر گمشدگان غول‌ها بدهیم که دیدیم از داخل کامپیوتر صدای غولمان می‌آید.
غول بیچاره حواسش نبوده و همان‌طور که داشته با کامپیوتر بازی می‌کرده‌، وارد سیستم شده‌است. ما هم آستین‌ها را بالا زدیم تا غول مهربانمان را از این شرایط عجیب نجات بدهیم(حالا نه این‌که وجود یک غول یا کامپیوتری که غول خورده به اندازه کافی عجیب نبود!)

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

اصول آموزش برنامه نویسی

 

اگر شما هم دوست دارید در نجات غول مهربان کمکمان کنید و البته کمی هم با اصول اولیه برنامه‌نویسی مثل دستور و انواع آن، انواع سبک‌های برنامه‌نویسی و… آشنا بشوید، تا آخر این مقاله همراه ما باشید.

پیشنهاد مقاله : بوت کمپ آموزش برنامه نویسی

احتیاط! به قلمرو اصطلاحات پایه برنامه‌نویسی وارد می‌شوید!

اگر کلمه‌هایی مثل مشتق و با انتگرال و… را از ریاضی بگیریم، چیزی از این علم باقی می‌ماند؟ (الان یک عده با خوشحالی می‌گویند بله جمع و تفریق می‌مانند که همان هم کافی است) همان‌طور که مشتق و دوستانش یک‌جورهایی روح ریاضی هستد، بعضی اصطلاحات هم روح برنامه‌نویسی هستند و تا آن‌ها را بلد نباشید نمی‌توانید به کدهایتان جان ببخشید، در واقع اصلا کدی وجود نخواهد داشت. در این بخش می‌خواهیم با تعدادی از این اصطلاحات مهم برنامه‌نویسی آشنا بشویم.

 

آشنایی با اصطلاحات اولیه در اصول آموزش برنامه‌ نویسی

اصول آموزش برنامه نویسی

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

حالا کلی از طریق همین اطلاعات اولیه، با کامپیوترتان درد و دل کرده‌اید، کدها برایش نوشته‌اید و حسابی با هم رفیق شده‌اید، این کامپیوتر زبان‌بسته چطور قرار است جوابتان را بدهد؟ جواب کامپیوتر به دستورهایی که شما برایش تعریف کرده‌اید، می‌شود خروجی برنامه. از آن‌جایی که کامپیوترها مغز درست و حسابی ندارند (یعنی دارندها ولی درست ازش استفاده نمی‌کنند) خروجی برنامه را هم برنامه‌نویس از طریق کدهایش تعریف می‌کند. خروجی برنامه می‌تواند جواب یک معادله‌ی ریاضی باشد، یا یک عبارت نوشته‌شده یا حتی اجرای یک برنامه‌ی دیگر.

مثلا شما به کامپیوترتان می‌گویید، هربار ازت پرسیدند: 2+2 چند می‌شود؟ تو بگو چهار. شما این‌جا یک محاسبه‌ی ساده را برای کامپیوتر تعریف کرده‌اید، (ورودی برنامه) چند وقت بعد می‌روید و می‌پرسید: سیستم جان 2+2 چند می‌شود؟ او هم می‌گوید چهار! (خروجی برنامه)

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

شروع
به بخش ورودی سیستم برو
غول بزرگ را پیدا کن
او را به بیرون از سیستم هدایت کن!

به این دستورها در عالم برنامه‌نویسی الگوریتم می‌گویند، البته که همه‌ی دستورها انقدر کوتاه نیستند و برای این که یک برنامه‌ی درست و حسابی بنویسیم باید کلی الگوریتم خوب و بهینه داشته‌باشیم.

حالا فکر کنید قرار است یک برنامه‌ی بزرگ بنویسید، این وسط قرار است با چند برنامه‌نویس دیگر، هر کدامتان بخشی از کدها را بنویسید، چطور مسیر کدنویسی را مشخص می‌کنید؟ نمی‌توانید مثل قالیباف‌ها بنشینید پشت سیستم و هر کدامتان بگویید: دو تا کد نوشتم. بعد رفیقتان از سر سالن داد بزند:«تابع فلان را تعریف کردم.» این‌طوری هم خودتان سرسام می‌گیرید، هم امیدی به آینده‌ی برنامه‌تان نیست.

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

 

متغیر Variable: آن اول ماجرا که غولمان رفته‌بود داخل کامپیوتر، ما هی نگران بودیم آخر این موجود عزیز کجا قرار است بخوابد و راحت باشد؟ تا این‌که برایمان پیام فرستاد که رفته‌است و یکی از خانه‌های حافظه را اشغال کرده‌است و جایش حسابی راحت‌است.
حالا این خانه‌های حافظه چی هستند؟ شما وقتی اطلاعات را وارد سیستم می‌کنید، آن‌ها بخشی از حافظه را می‌گیرند و بساطشان را همان‌جا پهن می‌کنند. از آن‌جایی که اطلاعات و یا DATAها بسیار قانون‌مند هستند. هر کدامشان یک خانه‌ی مخصوص دارند. مثلا اطلاعات عددی و محاسباتی وارد خانه‌های خاص می‌شوند، رشته‌های متنی خانه‌ی خودشان دارند و …
به این خانه‌ها، متغیر می‌گویند. در واقع متغیرها مثل ظر‌ف‌های مختلفی هستند که در آن‌ها اطلاعات مختلفی می‌ریزند و هر وقت برنامه به آن اطلاعات احتیاج داشت به سراغ ظرف مورد نظر می‌رود و یک دل سیر اطلاعات می‌خورد.
دستور STATEMENT و انواع آن: از آنجایی که کامپیوترها یک کم تنبل تشریف دارند و تا زور و دستور بالای سرشان نباشد کاری را درست انجام نمی‌دهند، برنامه‌نویس‌ها مجبور هستند در طول نوشتن یک برنامه دائم به سیستم دستور بدهند. به این دستور بخش قبل دقت کنید:

شروع
به بخش ورودی سیستم برو
غول بزرگ را پیدا کن
او را به بیرون از سیستم هدایت کن
اگر راضی نشد یک مشت به او بزن!
(خب گاهی خشونت لازم است دیگر!)

آن خط آخر دستور را تازه اضافه کرده‌ایم چون معلوم شد غول مهربان ما چندان دوست ندارد از کامپیوتر بیرون بیاید. به این نوع دستورها، دستورهای شرطی CONDITION می‌گویند. دستورهای شرطی یک‌جورهایی پیش‌بینی شرایط هستند. برنامه‌نویس مثل یک پیش‌گو یک موقعیت خاص را پیش‌بینی می‌کند و به سیستم می‌گوید:«فرزندم!اصلا نگران نباش، اگر اتفاقی با این مشخصات در برنامه افتاد(مثل نیامدن غول مهربان) کافی است که این کار خاص را انجام بدهی(با مشت به صورتش بکوبی) تا ادامه‌ی پروژه با موفقیت انجام بشود.»

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

حالا این تکرارها به چه دردی می‌خورند؟ مثلا فکر کنید یک دستور در یک برنامه باید هزار بار اجرا بشود، خب شما که بی‌کار نیستید تا یک کد را هزار بنویسید، به جایش یک دستور حلقه‌ای تعریف می‌کنید و خیالتان راحت است که برنامه‌ی وظیفه‌شناستان یک کار ساده را هزار بار انجام می‌دهد.

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

حالا به جایی این‌که آن خاطره را دوباره و با جزییات تعریف کنند، تنها یک اسم رمز می‌گویند و ذهنشان به شکل خودکار تمام جزییات را به یاد می‌آورد.

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

آرایه ARRAY: آن ماجرای ظرف‌ها و متغیرها را یادتان هست؟ تصور کنید هزار کیلو لوبیا دارید (متغیر همسان) حالا قرار است در ظرف‌های مختلف مقدار مشخصی لوبیا بریزید. به این ظرف‌ها که داده‌های یکسان در آنها قرار گرفته است، آرایه می‌گویند. مثلا فکر کنید قرار است قد نوزادان پسر را وارد یک سیستم کنید، در این حالت به جای تعریف چند متغیر جدا ، یک آرایه (مجموعه‌ای از خانه‌ها) تعریف می‌کنید و بعد عددها را وارد آن‌ها می‌کنید. حالا هر کدام از این خانه‌ها یک پلاک دارند که به آن‌ها اندیس می‌گویند: خانه‌ی شماره‌ی یک و دو و…

رشته STRING: از آن‌جایی که وقت ما برای نجات غول مهربان کم است، برای تعریف رشته به سراغ همان مثال قبلی می‌رویم. تصور کنید در همان مثال قبلی هستیم و این‌بار قرار است اسم نوزادان پسر را وارد سیستم کنیم. این‌جا به جای آرایه از رشته استفاده می‌کنیم. رشته‌ یا STRING در واقع مجموعه‌ای از خانه‌هاست که برای ذخیره‌سازی اطلاعاتی که به شکل کاراکتر هستند، استفاده می‌شود.

یک صندوقچه پر از OBJECT یا یک STRUCTURE منظم، کدام را می‌پسندید؟

برنامه‌ها هم مثل هرچیزی در دنیا سبک و سیاق خودشان را دارند، بعضی از آن‌ها عاشق سبک برنامه نویسی ساخت یافته – Structured Programming هستند و بعضی دیگر عاشق اشیا و سبک برنامه نویسی شی گرا – Object Oriented Programming هستند.
خب صدای غول گمشده‌مان درآمد که توضیحاتت زیادی پیچیده‌شد! دوباره توضیح بده! بهتر برویم و با انواع سبک‌های برنامه‌نویسی بیشتر آشنا بشویم.

اصول آموزش برنامه نویسی

پیشنهاد این مقاله : مدت زمان آموزش برنامه نویسی 

آشنایی با انواع سبک‌ها در اصول آموزش برنامه‌ نویسی

برترین آموزش برنامه نویسی در بوت کمپ آموزشی برنامه نویسی

برنامه نویسی ساخت یافته – Structured Programming: فکر کنید می‌خواهید یک خانه بسازید، خیلی طبیعی است که برای ساخت این خانه به چند دیوار احتیاج داشته‌باشید. شما تصمیم می‌گیرید هر کدام از دیوارها را در یک کارگاه جدا بسازید. برای ساخت دیوار به چه چیزی احتیاج دارید؟ معلوم است دیگر آجر!

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

یادتان هست گفتیم هر کدام از دیوارها را در یک کارگاه جدا می‌سازید؟ این یکی از ویژگی‌های اصلی برنامه‌نویسی ساخت یافته‌است. در این نوع برنامه‌نویسی داده‌ها از متدها جدا هستند.

این جدا بودن چند حسن دارد. اول از همه متدهای مختلف به هم وابسته نیستند، در نتیجه اگر بخواهید کار گروهی انجام بدهید، به راحتی هر گروه می‌تواند وظیفه‌‌ی خودش را انجام بدهد و نیاز نیست منتظر کار گروه دیگری بماند، و در نهایت و هنگام اجرا همه‌ی متدها در کنار هم قرار می‌گیرند.

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

از همه مهمتر این نوع برنامه‌نویسی بسیار سریع است، چون چند دیوار به شکل موازی در حال ساخته‌شدن هستند و تازه بخشی از دیوارها هم از قبل (متدهای نوشته شده در برنامه‌های قبلی) نوشته شده‌اند.

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

برنامه نویسی شی گرا – Object Oriented Programming: گروه‌بندی‌های کتاب هری‌پاتر را یادتان هست؟ در آن کتاب هر گروه تعدادی ویژگی اخلاقی داشت، مثلا گریفندوری‌ها شجاع و جسور بودند و صداقت برایشان مهم بود. نویسنده‌ی کتاب به جای این‌که هر پنج دقیقه بگوید گریفندوری‌ها خیلی شجاع بودند، خیلی راحت می‌گفت فلان شخصیت، یک گریفندوری واقعی بود! یعنی خیلی به صداقت اهمیت می‌داد و…!

در برنامه‌نویسی هم برنامه‌نویس‌ها نه وقتش را دارند نه حوصله‌اش را که برای یک دسته‌کد، دائم تعدادی ویژگی را تعریف کنند. برای همین همان اول تکلیفشان را مشخص می‌کنند و مثلا می‌گویند این مجموعه کد چنین ویژگی‌هایی دارد. بعد هم هر وقت به آن مجموعه کد و آن ویژگی‌ها احتیاج داشتند، اسم آن کد را صدا می‌زدند (آهای گریفندوری‌ها) و مجموعه‌ای از کدهای از پیش نوشته شده با ویژگی مشخص جلوی رویشان ردیف می‌شوند.

به این نوع برنامه‌نویسی، برنامه‌نویسی شی گرا می‌گویند. بیشتر برنامه‌های کاربردی این روزها مثل سی شارپ و… شی‌گرا هستند، زبان‌های شی‌گرا سرعت پردازش خوبی دارند و از آن‌ها می‌شود در پروژه‌های کوچک و بزرگ استفاده کرد. تازه برنامه‌ها گاهی اشیای مختلفشان را (کدهای مختلف با ویژگی‌های تعریف شده) به هم قرض می‌دهند تا زودتر کارشان راه بیفتد.

نرم‌افزارهای پرتوان به کمک غول مهربان می‌آیند

ما هر چقدر که توضیح دادیم، باز هم جناب غول با چشم‌های ورقلمبیده، همین‌طور نگاهمان می‌کرد. ما هم به سراغ چند نرم‌افزار کاربردی یا محیط برنامه‌نویسی رفتیم تا شاید گره کارمان باز بشود.

آشنایی با نرم‌افزارهای کاربردی در برنامه‌نویسی

ECLIPSE: جاوا یکی از زبان‌های محبوب برنامه‌نویسی است که متاسفانه حمایت‌کننده‌ی قوی‌ای ندارد (یک غولی مثل مایکروسافت بالای سر این بچه نیست) خلاصه شرکت‌های برنامه‌نویسی که دیدند جاوا چه بچه‌ی خوبی است، نرم‌افزار EXCLIPSE را برای راحت‌تر کار کردن با این زبان طراحی کردند. ESCLIPSE یک محیط برنامه‌نویسی است که در آن شما به راحتی می‌توانید از کدهای نوشته شده توسط سایر برنامه‌نویس‌ها استفاده کنید، تازه کلی کد پیش‌نویسی شده هم در آن وجود دارد که می‌توانید برای طراحی وب از آن‌ها کمک بگیرید.

آن اوایل ECLIPSE فقط با جاوا می‌پرید و سایر زبان‌های برنامه‌نویسی را نمی‌فهمید، اما حالا کلی درس‌خوانده و پیشرفت کرده و می‌تواند با زبان‌هایی مثل اندروید، پرل، روبی، پایتون و سی هم معاشرت کند و کدهای نوشته شده با این زبان‌ها را مثل آب خوردن بخواند.
ECLIPSE داستان ما خیلی درگیر سیستم عامل هم نیست و به راحتی می‌تواندکدها را در سیستم‌ عامل‌های مختلف اجرا کند، از طرف دیگر OPEN SOURCE است و به راحتی می‌شود به آن افزونه اضافه کرد و یا از افزونه‌های قبلیش استفاده کرد.

XCOD: نرم‌افزار XCODE جعبه ابزار نویسندگان اپلیکیشن‌های اپل است (خومان می‌دانیم جمله‌مان خیلی طولانی است). حالا XCODE چه ویژگی‌هایی دارد؟ جعبه ابزار اپل دوستان خیلی دست پر به میدان آمده‌است و دارای بخش‌هایی Project Navigator است در این تب بخش‌هایی مثل عکس‌ها، سورس کدها، فایل‌های ویدیویی و… وجود دارد که قرار است به برنامه‌نویس در توسعه اپلیکیشن حسابی کمک کند.
از آن‌جایی که پیدا کردن یک کد در میان هزاران کد نوشته‌شده، دست کمی از پیدا کردن سوزن در انبار کاه ندارد، در XCODE بخشی وجود دارد به نام Search Navigato که وظیفه‌اش پیدا کردن کدهای مختلف از میان کوه کدهاست.
این نرم‌افزار البته کلی قابلیت ریز و درشت دیگر هم دارد. مثلا می‌تواند کدها و متن‌ها را ویراش کند، اشکالات برنامه را پیدا کند و …با تمام این ویژگی‌ها XCODE یک‌جورهایی نقش آچار فرانسه را برای برنامه‌نویس‌های اپل دارد و می‌تواند مثل یک دونده‌ی دو امدادی بار کدهای آن‌ها را خیلی زود به مقصد برساند.

.NET: زبان C# یک بابای قدرتمند و قوی به نام مایکروسافت دارد. از آن‌جایی که این پدر مهربان هر کاری برای زبان عزیز دردانه‌اش می‌کند، همان اوایل یک محیط یک‌پارچه برای این زبان تعریف کرد به نام .NET محیط دات نت مجموعه‌ای از ابزارهای ویرایشگر متن، سورس کدهای کاربردی مختلف و البته ابزارهای DEBUG برنامه است.
دات نت هم مثل ECLIPSE آن اوایل فقط با خانواده‌ی سی رفت و آمد می‌کرد، اما کم کم دید انقدر محدودیت در رفت و آمدهای خانوادگی چندان هم خوب نیست، برای همین هم خیلی زود با سایر زبان‌ها دوست شد و راه را برای برنامه‌نویس‌های زبان جاوا و… هم باز کرد.

دات نت آن اوایل خیلی منزوی هم بود، برای همین به OPEN SOURCE بودن چندان اعتقادی نداشت، و هر کدی را به کتاب‌خانه‌هایش راه نمی‌داد. اما کم‌کم دید دارد بازی را به رقبا واگذار می‌کند(هر چند چیزی از ارزش‌هایش کم نشده‌بود) خلاصه دست به کار شد و درهای کتاب‌خانه‌ها را باز کرد و وارد دنیای OPEN SOURCE ها شد.

.NET تازه به همین حد از پیشرفت هم قانع نشد و هوس کرد سری به دنیای اپلیکشن‌ها بزند، برای همین هم خیلی زود یک فرزند جدید پیدا کرد به نام ASP.NETCORE که یک‌جورهایی مثل یک ماشین سنگین راه را برای برنامه‌نویس‌ها و توسعه دهنده‌های اپلیکیشن موبایل باز می‌کرد.

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

سایر برنامه‌های کاربردی مهربان: نرم‌افزارهای برنامه‌نویسی خیلی زیاد هستند و اگر بخواهیم همه‌شان را معرفی کنیم، احتمالا غول بیچارمان مجبور به وداع با دارفانی می‌شود. بنابراین فعلا اسم نرم‌افزارهایی مثل اندروید استودیو برای توسعه‌ی اپلیکیشن‌های اندروید، نرم‌افزارهای Code::Blocks و Visual Studio ویژه‌ی زبان‌های خانواده‌ی سی و… را گوشه‌ی ذهنتان داشته‌باشید، تا بعدا ودر مقاله‌های بعدی بامداد با خیال راحت به سراغشان برویم.

C# برای بامداد رفاقت به خرج می‌دهد
میان همه‌ی زبان‌های برنامه‌نویسی، ما دست آخر به سراغ سی شارپ رفتیم تا با کمکش بتوانیم آقای غول را نجات بدهیم. حالا چرا سی شارپ؟ عرض می‌کنیم.

معرفی C#: این شما و این سی شارپ

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

اصول آموزش برنامه نویسی

پیشنهاد مقاله : آموزش برنامه نویسی سی شارپ در ویژیوال استادیو

آیا یک رزومه‌ی درخشان تنها دلیل انتخاب C# بود؟

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

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

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

غول آزاد شده از اصول برنامه‌نویسی می‌گوید

غول ما به آغوش گرم دفتر بامداد برگشت. این وسط کلی هم راجع به اصول برنامه‌نویسی اطلاعات کسب کرد. این هم خلاصه‌ی مطالبی که دوستمان یاد گرفته‌است.

نگاهی به تمام فوت و فن‌های برنامه‌نویسی در یک دقیقه

1.الگوریتم و فلوچارت، ورودی و خروجی برنامه، تابع، دستور و انواع آن، متغیر، رشته و آرایه تعدادی از مفاهیم اولیه‌ی برنامه‌نویسی هستند که هر برنامه‌نویسی باید با آن‌ها آشنایی داشته‌باشد.
2. سبک‌های برنامه‌نویسی به دو دسته‌ی شی‌گرا و ساخت یافته تقسیم می‌شوند.
3.نرم‌افزارهای کاربردی مثل ویژوال استدیو، XCODE و … از محیط‌های اصلی توسعه‌ی یک‌پارچه‌ی کدها هستند که در برنامه‌نویسی نقش بسیار مهمی دارند.
4.زبان C# یک زبان کاربردی، کامپایلر و چند سکویی است که برای توسعه‌ی نرم‌افزارهای تحت ویندوز و مایکروسافت طراحی شده‌است.
5. فریم ورک دات نت و ASP.NET محیط‌های اصلی کار با C# هستند که از طریق آن‌ها می‌توان با سایر زبان‌ها هم برای مایکروسافت کد نوشت و به زبان میانی ترجمه کرد.

ما و غول جان از این ماجرای عجیب کلی درس ریز و درشت گرفتیم، مهم‌ترینش این بود که سر به سر کامپیوترها و برنامه‌ها نگذاریم، شما چطور؟ از اصول برنامه‌نویسی‌ای که گفتیم چیزی در خاطرتان مانده‌است؟ کدام قسمت برایتان راحت‌تر بود و کجاها حسابی مکث کردید؟!