Encapsulation (كپسوله كردن)

کنار هم قرار دادن دو یا چند چیز متفاوت و در عین حال مرتبط و گنجاندن آن‌ها در یک موجودیت به اصطلاح کپسول؛ به طوری که سطح دسترسی به برخی ویژگی‌های اشیاء گنجانده‌شده در آن محدود شده باشد.

- در برنامه‌نویسی شیئ‌گرا(OOP)، کپسوله کردن به معنی مکانیزم گنجاندن یک آبجکت و تمام منابع موردنیاز آن از جمله متدها و داده‌ها در یک تابع است. مفهوم اصلی چنین آبجکتی این است که سایر آبجکت‌ها می‌توانند به اینترفیس آن متصل شده و از ویژگی‌های آن (توابع، داده‌ها و غیره) استفاده کنند؛ بدون آنکه نیازی به اطلاع از ساختار درونی این آبجکت داشته باشند. ایدۀ اصلی کپسوله کردن این است «به من نگو چگونه این کار را انجام می‌دهی؛ فقط آن را انجام بده». در این مکانیزم یک شیئ را می‌توان به عنوان یک اتم مستقل در نظر گرفت و اینترفیس آن شامل برخی متدهای پابلیک و داده‌های نمونه خواهد بود.

- در ارتباطات شبکه نیز مفهوم کپسوله کردن عبارت است از کپسوله کردن دو ساختار داده در کنار یکدیگر، به طوری که دسترسی به همۀ ویژگی‌های دیتااستراکچرها امکان‌پذیر نباشد. برای مثال یک پکت دادۀ با فرمت TCP/IP می‌تواند در فریم‌های یک پَکِت با فرمت ATM(نوع دیگری از واحد انتقال برای داده) گنجانده شود. در حوزۀ انتقال و دریافت فریم‌های ATM، پَکِت کپسوله‌شده، جریانی از بیت‌ها بین داده‌های ATM خواهد بود.

online-support-icon