زیرروال Subroutine

زیرروال یا Subroutine چیست؟

در زبان‌های برنامه نویسی، زیرروال (Subroutine) به دنباله‌ای از دستورات گفته می‌شود که در قالب یک قطعه کد واحد بسته‌بندی شده است و بنا به نیاز برنامه به آن می تواند از مکان‌های مختلفی در برنامه فراخوانی (Call) و مورد استفاده قرار بگیرد. معمولا در برخی زبان‌ها و یا در حالات خاصی از نام‌های روال (Routine)، رویه (Procedure)، متد (Method) و تابع (Function) به عنوان معادل‌هایی برای Subroutine استفاده می‌شود.

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

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

فواید استفاده از زیرروال‌ها

از جمله فواید استفاده از Subroutine ها می‌توان به موارد مهم زیر اشاره نمود:

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

با این حال استفاده از زیرروال‌ها منجربه ایجاد سربار محاسباتی در فرایند فراخوانی نیز می‌شود.

مثالی از یک زیرروال

در مثال زیر، تابعی به نام add به زبان C++ نوشته شده است که برای جمع دو عدد استفاده می‌شود. این تابع دارای دو پارامتر a و b از نوع int (عدد صحیح) و یک خروجی از نوع int می‌باشد. مجموع a و b در یک متغیر به نام r ذخیره می‌شود و مقدار آن به عنوان خروجی برگردانده می‌شود.

تابع دیگری که در این مثال دیده می‌شود main نام دارد. شروع هر برنامه در C++ با فراخوانی این تابع شروع می‌شود و در این تابع نیز با فراخوانی تابع add مجموع دو مقدار 15 و 13 (به عنوان مقادیر پارامترها) محاسبه و با دستور cout مقدار حاصل یعنی 28 نمایش داده می‌شود.

#include <iostream>
using namespace std;
int add (int a, int b)
{
  int r;
  r = a + b;
  return r;
}
int main ()
{
 int c;
 c = add (15, 13);
 cout << c;
}

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

واژه‌های مرتبط

پشته Stack پشته یا Stack چیست؟ پشته (Stack) در علوم رایانه، به ساختمان داده‌ای گفته می‌شود که مجموعه‌ای از المان‌ها را براساس اصل LIFO (اولویت خروج با عناصر تاز...
اسکریپت Script اسکریپت یا Script چیست؟ اسکریپت (Script) به مجموعه‌ای از دستورات گفته می‌شود که برای یک محیط معین نوشته می‌شوند و معمولا برای اجرا باید تفسیر شوند. ا...
اسپاگتی کد Spaghetti Code اسپاگتی کد یا Spaghetti Code چیست؟ اسپاگتی کد (Spaghetti Code) یا کد درهم تنیده اصطلاحی در حوزه برنامه نویسی رایانه ای است و به سورس کدهایی گفته می‌ش...
سوپریوزر Superuser سوپریوزر یا Superuser چیست؟ سوپریوزر (Superuser) یا ابرکاربر نوع خاصی از حساب کاربری است که در سیستم‌عامل‌ها برای مدیریت و اعمال تغییرات سیستمی استفا...
میزبانی وب اشتراکی Shared web hosting... میزبانی وب اشتراکی یا Shared web hosting چیست؟ خدمات میزبانی وب اشتراکی (Shared web hosting) نوعی از خدمات میزبانی وب می‌باشد که در آن تعدادی وبسایت ...
صفحه نتایج موتور جستجو Search Engine Results Page ... صفحه نتایج موتور جستجو یا Search Engine Results Page چیست؟ صفحه نتایج موتور جستجو (Search Engine Results Page یا به اختصار SERP) به صفحات وبی گفته می...

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *