برنامه: مجموعه دستورهایی که رایانه را به کار میاندازد
برنامه چیست و از چه بخشهایی تشکیل شده است؟
برنامه، یک مجموعهٔ منظم از دستورالعملهاست که به رایانه میگوید یک کار مشخص را انجام دهد. این دستورالعملها به زبانی نوشته میشوند که رایانه بتواند آن را بفهمد (پس از تبدیل به زبان ماشین). هر برنامه برای حل یک مسئله یا انجام یک کار خاص طراحی شده است. برای مثال، برنامهٔ ماشینحساب برای محاسبهٔ اعداد، برنامهٔ ویرایشگر متن برای نوشتن و ویرایش متن، و برنامهٔ مرورگر برای مشاهدهٔ صفحات وب ساخته شدهاند.
یک برنامه معمولاً از چند بخش اصلی تشکیل شده است. بخش «ورودی» که دادهها را از کاربر یا منبع دیگر دریافت میکند، بخش «پردازش» که دادهها را بر اساس دستورالعملها تغییر میدهد و تبدیل میکند، و بخش «خروجی» که نتیجه را به کاربر یا سیستم دیگر نشان میدهد. مثلاً در یک برنامهٔ جمعکننده، ورودی دو عدد، پردازش جمع کردن آنها، و خروجی نمایش حاصلجمع است.
| نوع برنامه | کار اصلی | مثال معروف |
|---|---|---|
| برنامههای کاربردی | انجام کارهای روزمره | مرورگر، ویرایشگر متن، ماشینحساب |
| برنامههای سیستمی | مدیریت سختافزار و سیستمعامل | ویندوز، درایورها، آنتیویروس |
| برنامههای آموزشی | یادگیری و آموزش | بازیهای آموزشی، تمرین ریاضی |
| برنامههای ارتباطی | ارتباط با دیگران | پیامرسان، ایمیل، شبکههای اجتماعی |
برنامهها چگونه ساخته و اجرا میشوند؟
ساخت یک برنامه با «کدنویسی» شروع میشود. برنامهنویس با استفاده از یک زبان برنامهنویسی (مثل پایتون) دستورالعملها را مینویسد. این دستورالعملها در یک فایل متنی ذخیره میشوند و سپس توسط مفسر یا کامپایلر به زبان ماشین (صفر و یک) تبدیل میشوند تا رایانه بتواند آنها را اجرا کند. نتیجهٔ نهایی، برنامهای است که کاربر میتواند از آن استفاده کند.
برنامهها به دو شکل اجرا میشوند: برخی بهصورت «مفسری» که خط به خط اجرا میشوند (مثل پایتون) و برخی بهصورت «کامپایلری» که یکبار کامل به زبان ماشین تبدیل میشوند و سپس اجرا میشوند (مثل سیپلاسپلاس). در هر دو روش، هدف نهایی اجرای دستورالعملها توسط پردازنده و انجام کار مورد نظر است. برنامههای بزرگ ممکن است از هزاران یا حتی میلیونها خط کد تشکیل شوند.
برنامهها میتوانند ساده یا پیچیده باشند. یک برنامهٔ ساده مثل یک ماشینحساب ممکن است فقط ۲۰ خط کد داشته باشد، اما یک برنامهٔ پیچیده مثل یک بازی سهبعدی ممکن است میلیونها خط کد داشته باشد و تیمی از برنامهنویسان ماهر ماهها روی آن کار کنند. در هر صورت، همهٔ برنامهها از دستورالعملهای کوچکی تشکیل شدهاند که در کنار هم یک کار بزرگ را انجام میدهند.
پرسشهای کلیدی دربارهٔ برنامه
آیا هر نرمافزاری یک برنامه است؟
بله، در برنامهنویسی، به هر مجموعهای از دستورالعملها که روی رایانه اجرا میشود، برنامه میگوییم. نرمافزار واژهٔ عمومیتری است که به برنامهها و دادههای مرتبط با آنها اشاره دارد. اما در گفتگوی روزمره، این دو کلمه اغلب به جای یکدیگر استفاده میشوند.
آیا برنامهها همیشه روی رایانه شخصی اجرا میشوند؟
خیر، برنامهها روی انواع مختلف دستگاهها اجرا میشوند: تلفن همراه، تبلت، کنسول بازی، ماشینهای لباسشویی و حتی اجاقهای هوشمند. هر جایی که یک پردازنده وجود دارد، برنامهای برای کنترل آن نوشته شده است.
چرا بعضی برنامهها روی بعضی رایانهها کار نمیکنند؟
این مشکل معمولاً به سه دلیل است: سیستمعامل متفاوت (برنامههای ویندوز روی لینوکس کار نمیکنند)، معماری متفاوت (برنامه ۶۴ بیتی روی ۳۲ بیت اجرا نمیشود)، یا نیاز به سختافزار خاص (مثل کارت گرافیک قدرتمند برای بازیهای سهبعدی).