Kahibaro
Discord Login Register

برنامهٔ کامپیوتری چیست؟

تعریف سادهٔ برنامهٔ کامپیوتری

«برنامهٔ کامپیوتری» در ساده‌ترین شکل یعنی:

مجموعه‌ای از دستورها که به کامپیوتر می‌گوید دقیقاً چه کارهایی را، با چه ترتیبی انجام دهد.

کامپیوتر خودش «فقط» می‌تواند کارهای بسیار ساده انجام دهد:
جمع‌زدن، مقایسه‌کردن، جابه‌جا کردن داده‌ها، خواندن و نوشتن روی حافظه و…
برنامه این کارهای ساده را به شکل یک «دستورالعمل مرحله‌به‌مرحله» کنار هم می‌چیند تا یک کار پیچیده انجام شود؛ مثل:

کامپیوتر بدون برنامه، فقط یک جعبهٔ سخت‌افزاری است که کاری بلد نیست؛
این برنامه‌ها هستند که به آن «هوش ظاهری» و کارکرد می‌دهند.


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

برای درک بهتر، برنامهٔ کامپیوتری را مثل یک «دستور پخت غذا» تصور کنید:

مثلاً:

  1. ۲ لیوان برنج را بشور.
  2. ۳ لیوان آب در قابلمه بریز.
  3. برنج را به آب اضافه کن.
  4. ۱۰ دقیقه روی حرارت ملایم بپز.

اگر شما این مراحل را به دقت انجام دهید، نتیجهٔ قابل پیش‌بینی است.

برنامهٔ کامپیوتری هم دقیقاً همین است:

تفاوت مهم این است که:

از دید کامپیوتر برنامه چه شکلی است؟

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

نمونهٔ خیالی (فقط برای تصور):

$$
10110011\ 01001010\ 00001111\ 11001001
$$

اما نوشتن مستقیم صفر و یک برای انسان:

برای همین، زبان‌های برنامه‌نویسی مثل پایتون به‌وجود آمده‌اند تا ما بتوانیم با جملات شبیه زبان انسان، به کامپیوتر دستور بدهیم.

مثلاً در پایتون می‌نویسیم:

print("سلام")

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


اجزای اصلی یک برنامه (در سطح خیلی مقدماتی)

در این مرحله فقط به شکل کلی با چند «فکر اصلی» آشنا می‌شویم. هرکدام بعداً فصل جدا دارد.

یک برنامهٔ ساده معمولاً شامل این بخش‌هاست:

  1. داده (Data)
    چیزهایی که برنامه با آن‌ها کار می‌کند؛ مثل:
    • عدد (سن، قیمت، امتیاز بازی)
    • متن (نام کاربر، پیام خوش‌آمد)
    • وضعیت‌ها (روشن/خاموش، True/False)
  2. دستورها (Instructions)
    قدم‌به‌قدم به کامپیوتر می‌گویند:
    • «این عدد را با آن عدد جمع کن»
    • «اگر سن بیشتر از ۱۸ بود، این پیام را چاپ کن»
    • «این متن را در فایل ذخیره کن»
  3. ساختار یا ترتیب اجرای دستورها
    همهٔ دستورها به صورت ساده و پشت سر هم اجرا نمی‌شوند.
    مثلاً گاهی می‌گوییم:
    • «اگر شرطی برقرار بود این قسمت را اجرا کن، وگرنه آن یکی را»
    • «این کار را ۱۰ بار تکرار کن»

این‌ها همان چیزهایی هستند که وقتی به فصل‌های بعدی برسیم، با جزئیات یاد می‌گیرید.


چه چیزی باعث می‌شود یک برنامه «خوب» باشد؟

همهٔ برنامه‌ها فقط «مجموعه‌ای از دستورها» هستند، اما برنامهٔ خوب چند ویژگی دارد:

  1. مشکل مشخصی را حل می‌کند
    مثلاً:
    • حساب کردن معدل
    • مدیریت فهرست کارهای روزانه
    • محاسبهٔ کرایهٔ تاکسی
  2. نتیجهٔ قابل پیش‌بینی می‌دهد
    اگر همان ورودی را دوباره به آن بدهید، همان خروجی را می‌گیرید.
  3. واضح و قابل‌خواندن برای انسان است
    چون برنامه‌ها را معمولاً انسان‌ها می‌نویسند و انسان‌های دیگر هم باید آن را:
    • بفهمند
    • تغییر دهند
    • بهتر کنند
  4. قابل‌اعتماد است
    سعی می‌کند در شرایط مختلف:
    • خطا ندهد
    • حداقل رفتار قابل قبولی داشته باشد

چند مثال از برنامه‌های روزمره

برای اینکه در ذهنتان جا بیفتد که «تقریباً همه‌جا برنامه هست»، این چند نمونه را در نظر بگیرید:

در همهٔ این‌ها، پشت‌صحنه فقط برنامه‌هایی هستند که کسانی نوشته‌اند که «برنامه‌نویس» نامیده می‌شوند.


چرا برنامه‌ها دقیق و بدون ابهام هستند؟

فرق بزرگ برنامه با دستورهای روزمرهٔ انسانی همین «بدون ابهام بودن» است.

به انسان می‌گوییم:
«برو یک لیوان آب بیار»
انسان خودش می‌فهمد:

اما برای کامپیوتر:

برای همین برنامه‌نویس باید:

این مهارت «تجزیهٔ مسئله به مراحل کوچک و قابل‌اجرا» از مهم‌ترین چیزهایی است که در مسیر یادگیری برنامه‌نویسی به دست می‌آورید.


جمع‌بندی

در این بخش یاد گرفتید که:

در بخش‌های بعدی فصل، با پایتون آشنا می‌شوید و قدم‌به‌قدم اولین برنامه‌های واقعی خودتان را می‌نویسید.

Views: 8

Comments

Please login to add a comment.

Don't have an account? Register now!