تابع لفاف‌پیچی

تابع لفاف‌پیچی (به انگلیسی: wrapper function) نوعی زیرروال (یا تابع) است که در یک کتابخانه نرم‌افزاری یا یک برنامه رایانه‌ای قرار دارد، و هدف اصلی آن «تماس‌گرفتن به یک زیرروال ثانویه»[۱] یا یک «تماس‌گیری با سامانه» است، این تابع، محاسبات اضافی ندارد یا مقدار آن کم است. از توابع لفاف‌پیچی برای ساده‌سازی نوشتن برنامه‌های رایانه‌ای استفاده می‌شود، این کار از طریق انتزاعی‌سازی جزئیات پیاده‌سازی زیربنایی یک زیرروال انجام می‌شود.

هدف ویرایش

توابع لفاف‌پیچی، روشی برای واگذاری هستند و برای چند هدف می‌توان از آن استفاده کرد:

راحت‌تر کردن نوشتن برنامه‌های رایانه‌ای ویرایش

از توابع لفاف‌پیچی برای ساده‌سازی نوشتن برنامه‌های رایانه‌ای می‌توان استفاده کرد. یک مثال از آن MouseAdapter است مثال دیگر کلاس‌های مشابه در کتابخانه Java AWT است.[۲]

سازگارسازی واسط‌های کلاس/شیء ویرایش

توابع لفاف‌پیجی را می‌توان برای سازگارسازی یک کلاس یا شیء موجود برای داشتن واسط جداگانه، استفاده کرد. این موضوع مخصوصاً موقعی مفید است که از کد کتابخانه موجود استفاده می‌شود.

آزمون کد ویرایش

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

وراثت چندگانه ویرایش

در زبان‌های برنامه‌نویسی که از وراثت چندگانه کلاس‌های مبنا پشتیبانی نمی‌کنند، از توابع لفاف‌پیچی برای شبیه‌سازی آن می‌توان استفاده کرد. در زیر یک مثال از بخشی از یک کلاس جاوا آمده‌است که هم از LinkedList و هم از HashSet ارث‌بری می‌کند. شگرد را برای جزئیات پیاده‌سازی بیشتر ببینید.

public class Test implements LinkedList, HashSet{

@Override
//contains data members and data methods
//covariant return

}

پانویس ویرایش

  1. Reselman, Bob; Peasley, Richard; Pruchniak, Wayne (1998). Using Visual Basic 6. Que. p. 446. ISBN 978-0-7897-1633-0.
  2. The Java Tutorials
  3. Stevens, Richard; Fenner, Bill; Rudoff; Andrew M. (2003). UNIX Network Programming. Addison-Wesley. pp. 5–6, 29. ISBN 978-0-13-141155-5.

عنوان‌ها ویرایش