سلام دوستان!
امروز می خواهیم در مورد یک مفهوم مهم در برنامه نویسی به اسم "کارگزار درخواست شیء" یا ORB (Object Request Broker) صحبت کنیم. شاید اسمش یکم ترسناک به نظر بیاد، ولی نگران نباشید، خیلی ساده توضیحش میدم.
تصور کنید که شما دو تا برنامه دارید. یکی برنامه "الف" هست و دیگری برنامه "ب". این دو برنامه در واقع دو تا کامپیوتر جداگانه هستند (یا حتی ممکنه روی یک کامپیوتر باشن، مهم نیست). برنامه "الف" یه سری اطلاعات داره و برنامه "ب" هم یه سری اطلاعات دیگه. حالا، برنامه "ب" نیاز داره به اطلاعاتی که توی برنامه "الف" هست، اما نمیتونه مستقیم بهش دسترسی پیدا کنه. اینجا دقیقا جاییه که ORB وارد عمل میشه!
ORB مثل یه پیک یا یه پستچی عمل میکنه. برنامه "ب" یه درخواست میفرسته پیش ORB و میگه "من این اطلاعات رو از برنامه 'الف' میخوام". ORB این درخواست رو میگیره، میره پیش برنامه "الف"، اطلاعات رو ازش میگیره، و میاره میده به برنامه "ب".
به عبارت دیگه، ORB به برنامه ها کمک میکنه تا با همدیگه ارتباط برقرار کنن و اطلاعات رو به اشتراک بزارن، بدون اینکه نیاز باشه برنامه ها جزئیات پیچیده ارتباطی رو بدونن. این خیلی مهمه، چون باعث میشه برنامه نویس ها بتونن روی اصل کار برنامه تمرکز کنن و نگران نحوه رد و بدل شدن اطلاعات نباشن.
یه مثال ساده:
فرض کنید شما یک برنامه دارید که اطلاعات آب و هوا رو نشون میده (برنامه "ب"). این برنامه برای اینکه اطلاعات هواشناسی رو بدست بیاره، نیاز داره به یه برنامه دیگه که این اطلاعات رو از منابع مختلف جمع آوری میکنه (برنامه "الف"). این دو برنامه از طریق ORB با هم ارتباط برقرار میکنن. برنامه "ب" یه درخواست به ORB میفرسته و میگه "من دمای هوای امروز رو میخوام". ORB این درخواست رو به برنامه "الف" میفرسته، برنامه "الف" اطلاعات دما رو پیدا میکنه و از طریق ORB به برنامه "ب" برمیگردونه. به این ترتیب، برنامه "ب" میتونه دمای هوای امروز رو به شما نشون بده، بدون اینکه اصلا بدونه برنامه "الف" دقیقا چطوری اطلاعات رو جمع آوری میکنه.
مزایای استفاده از ORB:
یه جدولی براتون آماده کردم که نشون میده ORB چه کاری انجام میده:
نقش | توضیح |
---|---|
مشتری (Client) | برنامه ای که درخواست اطلاعات میکنه (مثلا برنامه "ب" در مثال بالا). |
کارگزار درخواست شیء (ORB) | واسط بین مشتری و سرور. درخواست ها رو میگیره و به سرور میفرسته، و جواب ها رو به مشتری برمیگردونه. |
سرور (Server) | برنامه ای که اطلاعات رو فراهم میکنه (مثلا برنامه "الف" در مثال بالا). |
مثال کد:
متاسفانه نوشتن کد کامل ORB در این مقاله خیلی طولانیه و نیاز به دانش برنامه نویسی بیشتری داره. اما یه مثال خیلی ساده از نحوه استفاده از ORB براتون مینویسم (به زبان شبه کد):
# در طرف مشتری (برنامه "ب") orb = ایجاد_ORB() شیء_مورد_نظر = orb.دریافت_شیء_از_سرور("آب_و_هوا") # درخواست اطلاعات آب و هوا دما = شیء_مورد_نظر.دریافت_دما() چاپ("دمای هوا:", دما) # در طرف سرور (برنامه "الف") orb = ایجاد_ORB() orb.ثبت_شیء("آب_و_هوا", شیء_آب_و_هوا) # ثبت شیء برای ارائه اطلاعات آب و هوا # شیء_آب_و_هوا یک تابع برای دریافت دما دارد تابع دریافت_دما(): # دریافت اطلاعات دما از منبع بازگشت دمای_هوا
این کد خیلی ساده شده است و فقط برای نشان دادن مفهوم استفاده از ORB هستش. در واقعیت، پیاده سازی ORB خیلی پیچیده تر از اینه.
چنتا از ORB های معروف:
جمع بندی:
ORB یه تکنولوژی خیلی مفید هستش که به برنامه ها کمک میکنه تا با هم به راحتی ارتباط برقرار کنن و اطلاعات رو به اشتراک بزارن. این کار باعث میشه که برنامه نویس ها بتونن برنامه های پیچیده تری رو به راحتی بنویسن و توسعه بدن. امیدوارم این توضیح ساده براتون مفید بوده باشه.
اگر سوالی دارین، خوشحال میشم جواب بدم.
با ارزوی موفقیت برای همه!
کلمات کلیدی: کارگزار درخواست شیء، ORB، برنامه نویسی توزیع شده، CORBA، DCOM، RMI، ارتباط بین برنامه ها.
وقتی به ORB به عنوان مخفف Object Request Broker اشاره می کنیم، منظور این است که ORB با گرفتن حروف اولیه هر کلمه مهم در Object Request Broker تشکیل می شود. این فرآیند عبارت اصلی را به شکلی کوتاه تر و قابل مدیریت تر فشرده می کند و در عین حال معنای اصلی خود را حفظ می کند. بر اساس این تعریف، ORB مخفف Object Request Broker است.
امتیاز شما به این مطلب
امتیاز: 5 از 5 (مجموع 1 رای)
اولین نفری باشید که در مورد این مقاله نظر می دهید!
techfeed.ir© 2024 All rights reserved