تابع (علوم رایانه): تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
RKouch (بحث | مشارکت‌ها)
بدون خلاصۀ ویرایش
RKouch (بحث | مشارکت‌ها)
بدون خلاصۀ ویرایش
خط ۱:
'''زیرروال''' در [[برنامه نویسی کامپیوتر]]، به دنباله ای از دستورالعمل ها گفته می‌شود که به صورت یک واحد بسته بندی شده، یک کار خاص([[Task (computing)|task]]) را برای یک برنامه انجام میدهد. این واحد درآینده می تواند هر کجا که آن کار خاص باید انجام شود استفاد یا فراخوانی شود.
 
زیربرنامه ممکن است داخل یک برنامه و یا به طور جداگانه داخل [[کتابخانه (رایانه)]] ای تعریف شده باشد که می تواند توسط برنامه های مختلف مورد استفاده قرار گیرد. در زبان های برنامه نویسی مختلف، زیرروال(subroutine) ممکن است با نام های مختلف [[اسلوب (برنامه‌نویسی شیءگرا)|اسلوب]](method)، تابع(function)، روال(routine)، یا زیر برنامه(subprogram) شناخته شود. گاهی اوفات اصطلاح عمومی "واحد قابل فراخوانی" نیز استفاده می شود.
<ref>{{cite web
|author= U.S. Election Assistance Commission
|title= Definitions of Words with Special Meanings
|work= [[Voluntary Voting System Guidelines]]
|year= 2007
|url= http://www.eac.gov/vvsg/glossary.aspx
|accessdate= 2013-01-14
|authorlink= Election Assistance Commission}}</ref>
 
نام زیربرنامه نشان می دهد یک زیرروال رفتاری مشابه یک برنامه کامپیوتری دارد که به عنوان یک گام در یک برنامه بزرگتر یا زیربرنامه دیگر استفاده می‌شود. زیرروال اغلب کد می‌شود تا بتوان آن را چند بار و از مکان های مختلف در طول یک اجرای برنامه (از جمله در میان دیگر زیرروالهای کد شده) مورد استفاده قرار داد (به اصطلاح call کرد). پس از صدا کردن زیرروال و اجرای آن، برنامه به دستور بعدی پس از زیرروال برمی‌گرد.
[[موریس ویلکس]]، [[David Wheeler (British computer scientist)|دیوید ویلر]]، و [[Stanley Gill|استنلی گیل]] مخترعین این مفهوم شناخته شده اند که آن را زیرروال بسته (در تقابل با زیرروال باز یا [[ماکرو]])<ref>{{cite نامیدهweb|last=Dainith|first=John|title="open اندsubroutine." A Dictionary of Computing. 2004..|url=http://www.encyclopedia.com/doc/1O11-opensubroutine.html|work=Encyclopedia.com|accessdate=January 14, 2013}}</ref>
) نامیده اند.
زیربرنامه ها از ابزار های قدرتمند [[برنامه نویسی]] هستند و قواعد نوشتاری ([[syntax (programming languages)|syntax]]) بسیاری از [[زبان های برنامه نویسی|زبان برنامه‌نویسی]]، استفاده از آنها را پشتیبانی می‌کند. استفاده از زیربرنامه اغلب موجب کاهش هزینه های توسعه و نگه داری برنامه های بزرگ میشود. همچنین میزان کیفیت و اعتبار برنامه را افزایش می دهد. زیربرنامه ها که می‌توانند در کتاب خانه ها جمع آوری شوند، روش مهمی برای اشتراک یا تجارت نرم افزار ها به حساب می‌آیند.
<ref>{{Cite conference | last1 = Wheeler | first1 = D. J.| authorlink1 = David Wheeler (computer scientist) | chapter = The use of sub-routines in programmes | doi = 10.1145/609784.609816 | title = Proceedings of the 1952 ACM national meeting (Pittsburgh) on - ACM '52 | pages = 235 | year = 1952 | pmid = | pmc = | url = http://www.laputan.org/pub/papers/wheeler.pdf}}</ref><ref>{{cite book
|last1= Wilkes
|first1= M. V.
|last2= Wheeler |first2= D. J. |last3= Gill |first3=S.
|title= Preparation of Programs for an Electronic Digital Computer
|publisher= Addison-Wesley
|year= 1951
}}</ref>
 
زیربرنامه ها از ابزار های قدرتمند [[برنامه نویسی]] هستند<ref name="knuth1">{{cite book |title= The Art of Computer Programming, Volume I: Fundamental Algorithms |author= Donald E. Knuth |authorlink= Donald Knuth |publisher= Addison-Wesley |isbn=0-201-89683-4}}</ref> و قواعد نوشتاری ([[syntax (programming languages)|syntax]]) بسیاری از [[زبان های برنامه نویسی|زبان برنامه‌نویسی]]، استفاده از آنها را پشتیبانی می‌کند. استفاده از زیربرنامه اغلب موجب کاهش هزینه های توسعه و نگه داری برنامه های بزرگ میشود. همچنین میزان کیفیت و اعتبار برنامه را افزایش می دهد.<ref name="structprog">{{cite book |author= O.-J. Dahl |author2=E. W. Dijkstra |author3=C. A. R. Hoare |title= Structured Programming |publisher= Academic Press |year= 1972 |ISBN= 0-12-200550-3}}</ref> زیربرنامه ها که می‌توانند در کتاب خانه ها جمع آوری شوند، روش مهمی برای اشتراک یا تجارت نرم افزار ها به حساب می‌آیند.