به زبان خیلی ساده، برنامه نویسی عبارت است از نوشتن دستوراتی که یک سیستم -مثل کامپیوتر- آنها را متوجه شده و دستورات ما را یکی پس از دیگری اجرا می کند. حال، یک زبان برنامه نویسی لغات، دستورات و قوانینی را در اختیار ما به عنوان یک برنامه نویس قرار میدهد که از آن طریق میتوانیم با کامپیوترها و سیستمهای کامپیوتری صحبت کنیم (دقیقاً به همان صورت که ما از واژگان زبان شیرین فارسی برای ارتباط با یکدیگر استفاده میکنیم و حرف همدیگر را می فهمیم!)
به خاطر داشته باشید |
به مجموعه دستوراتی که در قالب یک پکیج قرار میگیرند و در اختیار سیستم گذاشته شده و سیستم هم آن را متوجه می شود، نرمافزار یا اپلیکیشن گفته می شود. |
توجه داشته باشیم که یک برنامه ی کامپیوتری چیزی بیش از حل یک مسأله نیست. به عبارت دیگر، نرمافزارها یا اپلیکیشن ها به منظور حل یک مشکل خاص طراحی شده و به بازار عرضه میشوند. حال هرچه این مشکل بزرگتر و جهانی تر باشد، آن نرمافزار هم کاربردیتر و معروف تر خواهد شد.
💎 در این دورهی آموزشی با عنوان آموزش برنامه نویسی، تمامی مباحث و مفاهیم مرتبط با پایهی برنامه نویسی؛ مانند الگوریتم، زبانهای سطح بالا و سطح پایین، برنامه ویسی وب شامل مفاهیم فرانت اند، بک اند و دیتابیس؛ ابزارهای برنامه نویسی و بسیاری اطلاعات مفید دیگر به صورت کامل و رایگان در اختیار شما قرار داده شده که با مراجعه به بخشهای مرتبط با هر مفهوم (انتخاب از سرفصل های موجود در سمت راست صفحه) میتوانید به خوبی با این مفاهیم آشنایی کافی پیدا کنید.
برنامه نویس کیست؟
در حقیقت، کسانی که علاقمند به برنامه نویسی هستند میبایست سعی کنند یکی از دغدغه ها یا مشکلات جامعهی خود را برطرف سازند تا نرمافزار ایشان با اقبال عمومی رو به رو شود. یک برنامه نویس پیش از شروع به کدنویسی و انجام پروژه، دقیقاً میبایست بداند که قرار است چه مشکلی را حل نماید و مهم تر از یافتن مشکل، این مسئله که آیا مشکلی که وی در صدد حل آن است آیا واقعا دغدغه درصد قابل توجهی از جامعه است یا گروهی کوچکی از کاربران را پوشش میدهد.
برنامهنویسان معمولا در شرکتهای نرمافزاری استخدام میشوند. اما امروزه، با گسترش دنیای دیجیتال، بسیاری از شرکتهای دولتی یا خصوصی، شروع به استخدام برنامهنویسان کردهاند. آنها معمولا در بخش فناوری اطلاعات یک سازمان فعالیت میکنند و زیرساختهای محاسباتی و سیستمهای نرمافزاری مختلف را توسعه میدهد و مدیریت میکنند. بررسی برنامههای نرمافزارهای فعلی یک سازمان و بهروزرسانی و بهبود آنها، یافتن نقصهای موجود در یک سیستم و اجرای روشهایی برای حل این مشکلات و ارائه گزارش از آنها، از دیگر وظایف این شغل است.
امروزه با تخصصیتر شدن مشاغل حوزهی برنامه نویسی (همانند مشاغل حوزه های دیگر)؛ برنامه نویس ها پس از یادگیری اصول اولیهی برنامه نویسی با یک زبان برنامه نویسی؛ میتوانند در هر یک از تخصص های این حوزه؛ آموزشهای لازم را فرا گرفته و به عنوان برنامه نویس وب، برنامه نویس فرانت اند، برنامه نویس بک اند یا برنامه نویس موبایل مشغول به فعالیت شوند.
برنامههای کامپیوتری چه کاری انجام می دهند؟
هر برنامه کامپیوتری یا به عبارتی هر نرم افزار مجموعه ای از دستوراتی است که به ترتیب خاصی به کامپیوتر داده میشوند و یکی پس از دیگری اجرا میشوند. به طور مثال یک ویروس -که یک برنامه ی مخرب کامپیوتری است- دستوراتی بر مبنای تخریب و یا از بین بردن بخشی از اطلاعات ذخیره شده روی کامپیوتر را دارا است. برای روشن تر شدن مطلب، نرم افزار را به یک مثال از زندگی روزمره مان تشبیه میکنیم. فرض را بر این بگذاریم که خودروی شخصی شما خراب میشود و شما مجبور میشوید که آن را نزد مکانیکی ببرید. مکانیک پس از عیب یابی خودروی شما از شاگرد خود می خواهد که موارد ذیل را به ترتیب اجرا کند:
اول ماشین را خاموش کند. دوم کاپوت ماشین را بالا بزند. سوم روکش انژکتور را بردارد. چهارم پس از باز کردن انژکتور سوزن سوم آن را تعویض کند. پنجم انژکتور را مجدداً سوار کند. ششم روکش آن را نصب کند. و در نهایت کاپوت ماشین را بسته و استارت بزند.
در مثال فوق مکانیک به منزله برنامه نویس است و شاگرد هم به منزله اجرا کننده و یا همان کامپیوتر. مفهوم تعمیر شدن ماشین را نیز میتوان به عملیاتی تشبیه کرد که یک نرم افزار انجام می دهد. هر یک از دستوراتی را که مکانیک به شاگردش می دهد همانند همان دستوراتی است که ما به عنوان برنامه نویس به کامپیوتر می دهیم تا کاری را انجام دهد. حال اگر این دستورات به نحوی باشند که کار مثبتی صورت گیرد ما یک نرم افزار تولید کرده ایم و چنانچه این دستورات موجب ایجاد خللی در سیستم شوند و به جایی صدمه بزنند ما یک بدافزار یا ویروس طراحی کرده ایم (در مثال تعمیر خودرو، شاگرد مکانیک میتوانست به جای تعوض سوزن انژکتور، نه تنها سوزن را تعویض نکند بلکه از عمد به مابقی سوزن ها هم صدمه بزند!)
در برنامه نویسی اصطلاحاً به هر دستوری که می خواهیم اجرا شود یک Statement گفته می شود. حال برای نوشتن تعدادی Statement ما نیاز به یک ویرایشگر متن داریم تا بتوانیم دستورات مد نظر را در آن وارد سازیم.
نکته |
توجه داشته باشیم که هدف از یادگیری برنامه نویسی، این نیست که ما برنامه نویس زبان پایتون یا برنامه نویس زبان سی شویم بلکه هدف این است که ما یک برنامه نویس خوب شویم و زبانهای برنامه نویسی مختلف صرفاً به مثابه ی ابزاری برای انجام کارهای ما هستند. |
یک برنامه نویس خوب با هر زبانی میتواند یک محصول منحصر به فرد تولید کند اما یک برنامه نویس بد، حتی اگر بهترین و سریعترین زبان برنامه نویسی دنیا را در اختیار وی قرار دهیم، باز هم تضمینی ایجاد نمیکند که برنامه اش اثربخش باشد.
آیا برنامه نویسی نیاز به به دانشگاه دارد؟
خوشبختانه برنامه نویسی مهارتی است که الزاماً نیاز به دانشگاه رفتن ندارد و هر کسی که صرفاً علاقمند به یادگیری آن باشد میتواند ظرف مدت چند ماه -و نهایتاً یک سال- به یک برنامه نویس در حوزه ای که به آن علاقمند است مبدل شود.
برخی از افراد بر این باورند که برای برنامه نویس شدن نیاز است تا تحصیلات دانشگاهی داشت یا یک متخصص علم ریاضیات بود. درست است که داشتن ذهن ریاضیاتی و تحلیلی به هرچه بهتر شدن شما به عنوان یک برنامه نویس کمک می کند، اما این اصلاً بدان معنا نیست که اگر شما متخصص ریاضیات نباشید نمیتوانید به یک برنامه نویس موفق مبدل شوید (در واقع این باور نادرست شبیه به آن است که یک زن و شوهر برای بچهدار شدن، هر دو می بایست لیسانس بیولوژی داشته باشند!)
اولین برنامه نویس دنیا که بود؟
Ada Lovelace به عنوان اولین برنامهنویس تاریخ و پیشگام در رایانش مدرن و از آن مهمتر، اولین برنامهنویس زن جهان شناخته میشود. وی در تاریخ 10 دسامبر سال 1815 میلادی در بریتانیا به دنیا آمد و در 17 سالگی با Analytical Engine (ماشین تحلیلی) آشنا شد و در سال 1842 با مفهومی که امروزه آن را برنامهنویسی کامپیوتری مینامیم، درگیر شد.