ওএসজি এর উপাদান সিস্টেম আপনাকে কী সুবিধা দেয়?
ঠিক আছে, এখানে বেশ কয়েকটি তালিকা রয়েছে:
হ্রাস জটিলতা - ওএসজিআই প্রযুক্তির বিকাশ মানে বান্ডিলগুলি বিকাশ করা: ওএসজি উপাদানগুলি। বান্ডিলগুলি মডিউল। তারা তাদের গোপনীয়তাগুলি অন্য বান্ডিল থেকে আড়াল করে এবং সংজ্ঞায়িত পরিষেবার মাধ্যমে যোগাযোগ করে। ইন্টার্নাল লুকানো মানে পরে পরিবর্তনের আরও স্বাধীনতা। এটি কেবল ত্রুটির সংখ্যা হ্রাস করে না, এটি বান্ডিলগুলি বিকাশকে আরও সহজ করে তোলে কারণ সঠিক আকারের আকারের বান্ডিলগুলি সুস্পষ্ট সংজ্ঞায়িত ইন্টারফেসের মাধ্যমে কার্যকারিতার একটি অংশ প্রয়োগ করে। একটি আকর্ষণীয় ব্লগ রয়েছে যা ওএসজিআই প্রযুক্তি তাদের বিকাশের প্রক্রিয়াটির জন্য কী করেছিল তা বর্ণনা করে।
পুনঃব্যবহার - ওএসজিআই উপাদান মডেলটি একটি অ্যাপ্লিকেশনটিতে তৃতীয় পক্ষের অনেকগুলি উপাদান ব্যবহার করা খুব সহজ করে। ওপেন সোর্স প্রকল্পগুলির একটি ক্রমবর্ধমান সংখ্যক ওএসজিআইয়ের জন্য প্রস্তুত তাদের জেআর সরবরাহ করে। তবে বাণিজ্যিক গ্রন্থাগারগুলি প্রস্তুত বান্ডিল হিসাবেও উপলব্ধ হয়ে উঠছে।
বাস্তব জগতে -ওএসজি কাঠামোটি গতিশীল। এটি ফ্লাইতে বান্ডিলগুলি আপডেট করতে পারে এবং পরিষেবাগুলি আসতে এবং যেতে পারে। আরও traditionalতিহ্যবাহী জাভা ব্যবহার করে বিকাশকারীরা এটিকে একটি খুব সমস্যাযুক্ত বৈশিষ্ট্য হিসাবে দেখেন এবং সুবিধাটি দেখতে ব্যর্থ হন। তবে, দেখা যাচ্ছে যে আসল বিশ্বটি অত্যন্ত গতিশীল এবং গতিশীল পরিষেবাদি রয়েছে যা আসতে এবং যেতে পারে সেগুলি পরিষেবাগুলিকে অনেকগুলি বাস্তব বিশ্বের পরিস্থিতিগুলির জন্য এক নিখুঁত ম্যাচ করে তোলে। উদাহরণস্বরূপ, কোনও পরিষেবা নেটওয়ার্কের কোনও ডিভাইসকে মডেল করতে পারে। ডিভাইসটি সনাক্ত করা থাকলে পরিষেবাটি নিবন্ধভুক্ত। যদি ডিভাইসটি চলে যায় তবে পরিষেবাটি নিবন্ধভুক্ত। এই গতিশীল পরিষেবাদির মডেলটির সাথে মেলে এমন এক বিস্ময়কর বাস্তব বিশ্বের পরিস্থিতি। অ্যাপ্লিকেশনগুলি তাই তাদের নিজস্ব ডোমেনে পরিষেবা নিবন্ধের শক্তিশালী আদিমগুলিকে পুনরায় ব্যবহার করতে পারে (নিবন্ধভুক্ত করুন, পাবেন, একটি অভিব্যক্তিপূর্ণ ফিল্টার ভাষার সাথে তালিকা তৈরি করুন, এবং পরিষেবাগুলি প্রদর্শিত হবে এবং অদৃশ্য হওয়ার জন্য অপেক্ষা করুন) domain এটি কেবল লেখার কোড সংরক্ষণ করে না, এটি একটি উত্সর্গীকৃত সমাধানের জন্য কার্যকর করার চেয়ে বিশ্বব্যাপী দৃশ্যমানতা, ডিবাগিং সরঞ্জামগুলি এবং আরও কার্যকারিতাও সরবরাহ করে। এই জাতীয় গতিশীল পরিবেশে রাইটিং কোডগুলি দুঃস্বপ্নের মতো শোনাচ্ছে তবে ভাগ্যক্রমে এমন কিছু সমর্থন ক্লাস এবং ফ্রেমওয়ার্ক রয়েছে যা এখানকার ব্যথা সর্বাধিক গ্রহণ করে না if
সহজ স্থাপনা - ওএসজিআই প্রযুক্তি উপাদানগুলির জন্য কেবল একটি মান নয়। এটি কীভাবে উপাদানগুলি ইনস্টল এবং পরিচালনা করা হয় তাও নির্দিষ্ট করে। এই এপিআই ম্যানেজমেন্ট এজেন্ট সরবরাহ করতে অনেকগুলি বান্ডিল ব্যবহার করেছে। এই ম্যানেজমেন্ট এজেন্টটি কমান্ড শেল, একটি টিআর -69 ম্যানেজমেন্ট প্রোটোকল ড্রাইভার, ওএমএ ডিএম প্রোটোকল ড্রাইভার, অ্যামাজনের ইসি 2 এর জন্য ক্লাউড কম্পিউটিং ইন্টারফেস, বা আইবিএম টিভোলি ম্যানেজমেন্ট সিস্টেমের মতো সহজ হতে পারে। স্ট্যান্ডার্ডাইজড ম্যানেজমেন্ট এপিআই বিদ্যমান এবং ভবিষ্যতের সিস্টেমে ওএসজিআই প্রযুক্তি সংহত করতে খুব সহজ করে তোলে।
গতিশীল আপডেট - ওএসজিআই উপাদান মডেল একটি গতিশীল মডেল। পুরো সিস্টেমটি নামিয়ে না দিয়ে বান্ডিলগুলি ইনস্টল করা, শুরু, থামানো, আপডেট এবং আনইনস্টল করা যায়। অনেক জাভা বিকাশকারী বিশ্বাস করেন না এটি নির্ভরযোগ্যভাবে করা যেতে পারে এবং তাই প্রাথমিকভাবে এটি উত্পাদনে ব্যবহার করবেন না। যাইহোক, কিছু সময়ের জন্য এটি বিকাশে এটি ব্যবহার করার পরে, বেশিরভাগই বুঝতে শুরু করে যে এটি কার্যত কার্যকারী সময়কে উল্লেখযোগ্যভাবে হ্রাস করে।
অভিযোজিত - ওএসজিআই উপাদানটি মডেলগুলি উপাদানগুলির মিশ্রণ এবং মেলানোর জন্য গ্রাউন্ড আপ থেকে ডিজাইন করা হয়েছে। এটির জন্য প্রয়োজনীয় উপাদানগুলির নির্ভরতা নির্দিষ্ট করা দরকার এবং এমন পরিবেশে বাস করার জন্য উপাদানগুলির প্রয়োজন যেখানে তাদের alচ্ছিক নির্ভরতা সবসময় পাওয়া যায় না। ওএসজিআই সার্ভিস রেজিস্ট্রি হ'ল একটি গতিশীল রেজিস্ট্রি যেখানে বান্ডিলগুলি পরিষেবাগুলি নিবন্ধন করতে, পেতে এবং শুনতে পারে। এই গতিশীল পরিষেবা মডেলটি বান্ডিলগুলিকে সিস্টেমে কী ক্ষমতা উপলব্ধ তা নির্ধারণ করতে এবং তারা যে কার্যকারিতা সরবরাহ করতে পারে তা খাপ খাইয়ে নিতে সহায়তা করে। এটি কোডকে আরও নমনীয় এবং পরিবর্তনগুলিতে স্থিতিস্থাপক করে তোলে।
স্বচ্ছতা - বান্ডিল এবং পরিষেবাগুলি ওএসজি পরিবেশে প্রথম শ্রেণির নাগরিক। পরিচালনা এপিআই একটি বান্ডিলের অভ্যন্তরীণ অবস্থার পাশাপাশি এটি অন্যান্য বান্ডেলের সাথে কীভাবে সংযুক্ত তা অ্যাক্সেস সরবরাহ করে। উদাহরণস্বরূপ, বেশিরভাগ ফ্রেমওয়ার্কগুলি একটি কমান্ড শেল সরবরাহ করে যা এই অভ্যন্তরীণ অবস্থাটি দেখায়। অ্যাপ্লিকেশনগুলির অংশগুলি একটি নির্দিষ্ট সমস্যা ডিবাগ করার জন্য বন্ধ করা যেতে পারে, বা ডায়াগনস্টিক বান্ডিলগুলি আনা যেতে পারে millions লগিং আউটপুট এবং লম্বা পুনরায় বুটবারের কয়েক মিলিয়ন লাইনের দিকে না তাকানোর পরিবর্তে ওএসজিআই অ্যাপ্লিকেশনগুলি প্রায়শই একটি লাইভ কমান্ড শেল দিয়ে ডিবাগ করা যায়।
সংস্করণ - ওএসজিআই প্রযুক্তি জার নরকে সমাধান করে। জেআর হেল একটি সমস্যা যা লাইব্রেরি এ লাইব্রেরি বি; সংস্করণ = 2 নিয়ে কাজ করে তবে লাইব্রেরি সি কেবল বি; সংস্করণ = 3 নিয়ে কাজ করতে পারে। স্ট্যান্ডার্ড জাভাতে আপনি ভাগ্যের বাইরে রয়েছেন। ওএসজিআই পরিবেশে, সমস্ত বান্ডিলগুলি সাবধানে সংস্করণযুক্ত এবং কেবলমাত্র বান্ডিলগুলি যা সহযোগীতা করতে পারে একই শ্রেণীর জায়গাতে একসাথে তারযুক্ত হয়। এটি উভয় বান্ডিল এ এবং সি তাদের নিজস্ব লাইব্রেরির সাথে কাজ করতে দেয়। যদিও এই সংস্করণ ইস্যু সহ সিস্টেমগুলি ডিজাইন করার পরামর্শ দেওয়া হয়নি তবে এটি কিছু ক্ষেত্রে জীবন রক্ষাকারী হতে পারে।
সরল - ওএসজিআই এপিআই আশ্চর্যজনকভাবে সহজ। মূল এপিআই হ'ল একটি প্যাকেজ এবং 30 টিরও কম ক্লাস / ইন্টারফেস। এই মূল APIটি বান্ডিলগুলি লিখতে, সেগুলি ইনস্টল করতে, শুরু করতে, থামাতে, আপডেট করতে এবং আনইনস্টল করার জন্য যথেষ্ট এবং এতে সমস্ত শ্রোতা এবং সুরক্ষা শ্রেণি অন্তর্ভুক্ত। খুব কম এপিআই রয়েছে যে এত কম এপিআইয়ের জন্য এত কার্যকারিতা সরবরাহ করে।
ছোট - ওএসজিআই রিলিজ 4 ফ্রেমওয়ার্ক প্রায় 300KB জার ফাইলটিতে প্রয়োগ করা যেতে পারে। ওএসজি অন্তর্ভুক্ত করে কোনও অ্যাপ্লিকেশনটিতে যুক্ত কার্যকারিতার পরিমাণের জন্য এটি একটি ছোট ওভারহেড। OSGi অতএব ডিভাইসগুলির একটি বিশাল পরিসরে চালিত করে: খুব ছোট থেকে ছোট থেকে মেনফ্রেমে। এটি কেবলমাত্র একটি সর্বনিম্ন জাভা ভিএম চালানোর জন্য বলে এবং এর উপরে খুব সামান্য যোগ করে।
দ্রুত - ওএসজিআই কাঠামোর একটি প্রাথমিক দায়িত্ব বান্ডিল থেকে ক্লাসগুলি লোড করা। Traditionalতিহ্যগত জাভাতে, জারগুলি সম্পূর্ণরূপে দৃশ্যমান হয় এবং একটি রৈখিক তালিকায় থাকে। শ্রেণি অনুসন্ধানের জন্য এই (সাধারণত খুব দীর্ঘ, 150 টি অস্বাভাবিক নয়) তালিকার মাধ্যমে অনুসন্ধান করা প্রয়োজন। বিপরীতে, ওএসজি প্রি-ওয়্যারগুলি বান্ডিল দেয় এবং প্রতিটি বান্ডিলের জন্য জানে যে কোন বান্ডিলটি ক্লাস সরবরাহ করে। অনুসন্ধানের এই অভাবটি প্রারম্ভকালে একটি উল্লেখযোগ্য গতি বাড়ানোর কারণ।
অলস - সফ্টওয়্যারটিতে অলস ভাল এবং ওএসজিআই প্রযুক্তির কেবল তখনই প্রয়োজন হয় যখন জিনিসগুলি প্রয়োজন হয় কেবল তখন করার জন্য অনেকগুলি প্রক্রিয়া রয়েছে। উদাহরণস্বরূপ, বান্ডিলগুলি আগ্রহের সাথে শুরু করা যেতে পারে, তবে অন্যান্য বান্ডিলগুলি সেগুলি ব্যবহার করা হয় তখনই সেগুলি শুরু করতে কনফিগার করা যায়। পরিষেবাগুলি নিবন্ধভুক্ত করা যেতে পারে, তবে কেবলমাত্র সেগুলি ব্যবহৃত হয় তখনই তৈরি হয়। এই ধরণের অলস পরিস্থিতিতে যে অসাধারণ রানটাইম ব্যয় বাঁচাতে পারে তার জন্য বিশেষত্বগুলি বেশ কয়েকবার অনুকূলিত করা হয়েছে।
সুরক্ষিত - জাভার নীচে একটি খুব শক্তিশালী সূক্ষ্ম দানযুক্ত সুরক্ষা মডেল রয়েছে তবে এটি অনুশীলনে কনফিগার করতে খুব শক্ত হয়ে গেছে। ফলস্বরূপ যে সর্বাধিক সুরক্ষিত জাভা অ্যাপ্লিকেশনগুলি বাইনারি পছন্দ নিয়ে চলছে: কোনও সুরক্ষা বা খুব সীমাবদ্ধ ক্ষমতা নেই। ওএসজিআই সুরক্ষা মডেল সূক্ষ্ম দানাযুক্ত সুরক্ষা মডেলটিকে উপস্থাপন করে তবে বান্ডেল বিকাশকারীকে সহজেই অডিট করা ফর্মের মধ্যে অনুরোধ করা সুরক্ষা বিবরণ নির্দিষ্ট করে যখন পরিবেশের অপারেটর পুরোপুরি দায়িত্বে থাকে তার ব্যবহারযোগ্যতা উন্নত করে। সামগ্রিকভাবে, ওএসজি সম্ভবত সর্বাধিক সুরক্ষিত অ্যাপ্লিকেশন পরিবেশ সরবরাহ করে যা এখনও হার্ডওয়্যার সুরক্ষিত কম্পিউটিং প্ল্যাটফর্মের অল্প ব্যবহারযোগ্য।
ওএসজিআই পরিবেশে নন ইন্ট্র্রুসিভ - অ্যাপ্লিকেশন (বান্ডিলগুলি) তাদের নিজস্ব ছেড়ে দেওয়া হয়েছে। ওএসজিআইকে সীমাবদ্ধ না করে তারা ভিএমের কার্যত কোনও সুবিধা ব্যবহার করতে পারে। ওএসজির সেরা অনুশীলন হ'ল প্লেইন ওল্ড জাভা অবজেক্ট লিখতে এবং এই কারণে ওএসজি পরিষেবাগুলির জন্য কোনও বিশেষ ইন্টারফেসের প্রয়োজন নেই, এমনকি জাভা স্ট্রিং অবজেক্ট ওএসজি পরিষেবা হিসাবে কাজ করতে পারে। এই কৌশলটি অ্যাপ্লিকেশন কোডটিকে অন্য একটি পরিবেশে পোর্ট করা সহজ করে।
সর্বত্র চালায় - ঠিক আছে, এটি নির্ভর করে। জাভার মূল লক্ষ্য ছিল যে কোনও জায়গায় চালানো। স্পষ্টতই, সব জায়গাতেই সমস্ত কোড চালানো সম্ভব নয় কারণ জাভা ভিএম এর ক্ষমতা পৃথক। একটি মোবাইল ফোনের একটি ভিএম সম্ভবত কোনও ব্যাংকিং অ্যাপ্লিকেশন চালিত আইবিএম মেইনফ্রেমের মতো একই লাইব্রেরিগুলিকে সমর্থন করবে না। যত্ন নিতে দুটি সমস্যা আছে। প্রথমত, ওএসজিআই এপিআইগুলিতে এমন ক্লাস ব্যবহার করা উচিত নয় যা সমস্ত পরিবেশে উপলব্ধ নয়। দ্বিতীয়ত, যদি একটি বান্ডেলটি কোড থাকে যা কার্যকর করা পরিবেশে উপলব্ধ না হয় তবে এটি আরম্ভ করা উচিত নয়। ওএসজি স্পেসিফিকেশনগুলিতে এই দুটি বিষয়ই যত্ন নেওয়া হয়েছে।
সূত্র: www.osgi.org/ প্রযুক্তিবিদ / WYOSGi