Table of Contents
এই জটিলতার ক্ষেত্রে এই নকশাটি একটি শক্তিশালী নকশার মাধ্যমে তৈরি করা হয়েছে। এতে করে বিভিন্ন ধরনের উপাদানের পরিবার তৈরি করা হয়েছে। তাদের দৃঢ় শ্রেণীর কথা উল্লেখ না করে বিভিন্ন বস্তুর জন্য এটি বিশেষ কার্যকর। এই প্রযুক্তিটি একটি প্রযুক্তিতে পরিণত করা যাবে যা উইন্ডোজ, ম্যাকওএস, লিনাক্স এবং লিনাক্সের মতো একাধিক অপারেটিং সিস্টেমের মতো ব্যবহার করে।
[ পাদটীকা]
এই পদ্ধতিটি অভ্যুত্থানকে বৃদ্ধি করে এবং কোডের গতি বৃদ্ধি করা, বিভিন্ন প্লাটফর্মের জন্য সহজ করে তোলে ।
ক্রস-প্ল্যাটফর্ম GUI ডেভেলপমেন্টের মধ্যে বিন্যাস সমন্বিত করুন
ক্রস-প্লাটফর্ম GUI তৈরি করার সময়, আপনার শুধুমাত্র প্ল্যাটফর্মের নির্দিষ্ট উইজেট, উইন্ডো, এবং মেনুর মত সুনির্দিষ্ট উইজেট তৈরি করতে হবে । এই উইজেটগুলোকে ব্যবহার করে আপনি এই উইজেট নির্মাণের জন্য একটি ইন্টারফেস নির্ধারণ করতে পারেন এবং এরপর প্রতিটি অপারেটিং সিস্টেমের জন্য উপযুক্ত উইজেটের জন্য উপযুক্ত উইজেট তৈরি করতে পারবেন ।
অ্যাবস্ট্র্যাক্ট ফ্যাক্টরি ইন্টারফেস ডেভেলপ করা হচ্ছে
প্রথম ধাপ হল একটি নক্স ফ্যাক্টরি ইন্টারফেস যা প্রতিটি উইজেটের জন্য ব্যবহৃত পদ্ধতি ঘোষণা করে ।
interface GUIFactory {
Button createButton();
Window createWindow();
Menu createMenu();
}
প্রতিটি প্ল্যাটফর্মের জন্য জটিল উত্পাদক তৈরি করা
পরবর্তী প্লাটফর্মে, প্রতিটি প্ল্যাটফর্মের জন্য কনক্রিটডলেট কারখানা চালু করা হবে যেমন উইন্ডোজ ফ্যাক্টরি, ম্যাকফিগরি এবং লিনাক্সফ্যাক্টরি, যা altion প্ল্যাটফর্মের নির্দিষ্ট উইজেট।
class WindowsFactory implements GUIFactory {
public Button createButton() {
return new WindowsButton();
}
public Window createWindow() {
return new WindowsWindow();
}
public Menu createMenu() {
return new WindowsMenu();
}
}
class MacFactory implements GUIFactory {
public Button createButton() {
return new MacButton();
}
public Window createWindow() {
return new MacWindow();
}
public Menu createMenu() {
return new MacMenu();
}
}
Inted প্ল্যাটফর্ম-পরিচ্ছন্ন উইজেট
প্রত্যেক উইজেটের শ্রেণী যেমন উইন্ডোBan or MacBannered একটি সাধারণ ইন্টারফেস প্রয়োগ করে, নিশ্চিত করুন যে এই অ্যাপ্লিকেশনটি কোনো প্ল্যাটফর্মের উইজেটের সঙ্গে ব্যবহারযোগ্য।
interface Button {
void render();
}
class WindowsButton implements Button {
public void render() {
// Windows-specific rendering code
}
}
class MacButton implements Button {
public void render() {
// Mac-specific rendering code
}
}
বিন্যাস ব্যবহার করার উপকারগুলো
- কোডের গতি এবং ক্ষমতা বৃদ্ধি করে.
- ফেসিলিটিট- এর সাথে খুব কম পরিবর্তনসহ নতুন প্লাটফর্ম যোগ করা হয়েছে ।
- এনক্যাপসুলেট প্লাটফর্মের নির্দিষ্ট বিবরণ, সহজ ভাবে রক্ষণাবেক্ষণের জন্য।
অ্যাবস্ট্র্যাক্ট ফ্যাক্টরি বিন্যাস প্রয়োগ করে ডেভেলপারদেরকে নমনীয়, সহ্য করতে, এবং একত্রিত করতে পারেন এমন একটি অ্যাপ্লিকেশন।