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