COMMAND:
বেসিক উপাদান:
- কমান্ড বিমূর্ত কমান্ডের মত একটি ইন্টারফেস ঘোষণা করে
execute()
- রিসিভার কীভাবে একটি নির্দিষ্ট কমান্ড কার্যকর করতে হয় তা জানে
- Invoker ঝুলিতে ConcreteCommand , যা মৃত্যুদন্ড কার্যকর করা হয়েছে
- ক্লায়েন্ট সৃষ্টি ConcreteCommand এবং বরাদ্দ রিসিভার
- কংক্রিট কম্যান্ড কম্যান্ড এবং রিসিভারের মধ্যে বাইন্ডিং নির্ধারণ করে
কর্মধারা:
ক্লায়েন্ট কল Invoker => Invoker আহ্বান ConcreteCommand => ConcreteCommand আহ্বান রিসিভার পদ্ধতি, যা কার্যকরী বিমূর্ত কমান্ড পদ্ধতি।
সুবিধা : ক্লায়েন্ট কমান্ড এবং রিসিভারে পরিবর্তনগুলি প্রভাবিত করে না। চালক ক্লায়েন্ট এবং রিসিভারের মধ্যে আলগা সংযোগ সরবরাহ করে। আপনি একই ইনভোকার দিয়ে একাধিক কমান্ড চালাতে পারেন।
কমান্ড প্যাটার্ন আপনি বিভিন্ন একটি কমান্ডটি ব্যবহার করতে পারবেন রিসিভার একই ব্যবহার করে Invoker । ইনভোকার এর ধরণের সম্পর্কে অবগত নয় রিসিভারের
ধারণার ভাল করে বুঝতে জন্য, এই JournalDev কটাক্ষপাত আছে নিবন্ধটি দ্বারা পঙ্কজ কুমার এবং dzone নিবন্ধ দ্বারা জেমস Sugrue উইকিপিডিয়া লিংক ছাড়াও।
আপনি কমান্ড প্যাটার্নটি ব্যবহার করতে পারেন
চালক এবং কমান্ডের গ্রহণকারীকে দ্বিগুণ করুন
কলব্যাক প্রক্রিয়া প্রয়োগ করুন
পূর্বাবস্থায় ফিরিয়ে আনুন এবং কার্যকারিতা আবার করুন
কমান্ডের ইতিহাস বজায় রাখুন
java.lang.Thread
কমান্ড প্যাটার্নের একটি ভাল বাস্তবায়ন । আপনি বিবেচনা করতে পারেন থ্রেড invoker & বর্গ বাস্তবায়নে যেমন runnable যেমন ConcreteCommonad / রিসিভার এবং run()
যেমন পদ্ধতি কমান্ড ।
কমান্ড প্যাটার্নটির পূর্বাবস্থা / পূর্বাবস্থায় ফিরিয়ে আনা হবে থিয়োডোর নরভেলের নিবন্ধে
কৌশল:
কৌশল প্যাটার্ন বুঝতে খুব সহজ। যখন এই প্যাটার্ন ব্যবহার করুন
আপনার কাছে একটি অ্যালগোরিদমের জন্য একাধিক বাস্তবায়ন রয়েছে এবং নির্দিষ্ট অবস্থার উপর নির্ভর করে অ্যালগরিদমের প্রয়োগটি রান সময়ে পরিবর্তিত হতে পারে ।
এয়ারলাইন বুকিং সিস্টেমের ভাড়ার উপাদানটির একটি উদাহরণ নিন
এয়ারলাইনস বিভিন্ন সময়কাল - পিক এবং অফ পিক মাসে বিভিন্ন ভাড়া সরবরাহ করতে চায়। অফ শূন্য ভ্রমণের দিনগুলিতে, এটি আকর্ষণীয় ছাড়ের মাধ্যমে চাহিদা উত্সাহিত করতে চাই।
কৌশল প্যাটার্নের মূল গ্রহণযোগ্যতা :
- এটি একটি আচরণগত প্যাটার্ন
- এটি প্রতিনিধি উপর ভিত্তি করে
- এটি পদ্ধতির আচরণ পরিবর্তন করে অবজেক্টের সাহস পরিবর্তন করে
- এটি অ্যালগোরিদমের পরিবারের মধ্যে পরিবর্তন করতে ব্যবহৃত হয়
- এটি রান সময় অবজেক্টের আচরণ পরিবর্তন করে
কোড উদাহরণ সহ সম্পর্কিত পোস্ট:
কমান্ড ডিজাইনের প্যাটার্ন ব্যবহার করে
কৌশল প্যাটার্ন রিয়েল ওয়ার্ল্ড উদাহরণ