উদাহরণ সহ জাভাতে কম্পোজিশন কীভাবে ব্যবহার করবেন?

Udaharana Saha Jabhate Kampojisana Kibhabe Byabahara Karabena



কম্পোজিশন প্রোগ্রামারদের নতুন ক্লাসে একীভূত করে বিদ্যমান ক্লাসগুলিকে পুনরায় ব্যবহার করতে দেয়। একাধিক ক্লাস থেকে কোড নকল করার পরিবর্তে যা কোড পুনঃব্যবহারযোগ্যতা বাড়ায়। অধিকন্তু, রচনাটি একটি শ্রেণীর প্রাপ্ত প্রয়োজনীয়তার উপর ভিত্তি করে বস্তুগুলিকে একত্রিত করার ক্ষেত্রে নমনীয়তা প্রদান করে। এটি মডুলারিটি প্রচার করে এবং কোডটিকে পরিবর্তনের সাথে আরও মানিয়ে নিতে পারে।

এই নিবন্ধটি উদাহরণের সাহায্যে জাভাতে রচনার একটি বিশদ ব্যাখ্যা প্রদর্শন করে।







উদাহরণ সহ জাভাতে রচনা কীভাবে ব্যবহার করবেন?

কম্পোজিশন ক্লাসের মধ্যে লুজ কাপলিংকে উৎসাহিত করে। রচিত বস্তুগুলি ইন্টারফেস, বিমূর্ত ক্লাস বা সুপার ক্লাসের মাধ্যমে অ্যাক্সেস করা হয়, যা নির্দিষ্ট বাস্তবায়ন থেকে ক্লায়েন্ট ক্লাসকে ডিকপল করে। এটি কোড রক্ষণাবেক্ষণযোগ্যতা বাড়ায় এবং সহজে পরীক্ষা এবং রিফ্যাক্টরিংয়ের অনুমতি দেয়।



জাভাতে রচনা সম্পর্কে আরও ভাল বোঝার জন্য নীচের উদাহরণটি দেখুন:



উদাহরণ: জাভাতে কম্পোজিশন ধারণা বাস্তবায়ন করা





কম্পোজিশন ধারণা বাস্তবায়নের জন্য দুটি বা ততোধিক ক্লাস তৈরি করে শুরু করুন যা ফাংশনকে উত্তরাধিকারী করে এবং সময় এবং কোড জটিলতা কমানোর পদ্ধতিগুলি নীচে দেখানো হয়েছে:

ক্লাস ইঞ্জিন {
ব্যক্তিগত স্ট্রিং প্রকার ;
পাবলিক ইঞ্জিন ( স্ট্রিং প্রকার ) {
this.type = প্রকার ;
}
পাবলিক শূন্যতা শুরু ( ) {
System.out.println ( প্রকার + 'ইঞ্জিন শুরু হয়েছে' ) ;
}
পাবলিক শূন্য স্টপ ( ) {
System.out.println ( প্রকার + 'ইঞ্জিন বন্ধ' ) ;
}
}
ক্লাস বাইক {
ব্যক্তিগত স্ট্রিং সংস্করণ;
ব্যক্তিগত ইঞ্জিন ইঞ্জিন;
পাবলিক বাইক ( স্ট্রিং সংস্করণ, ইঞ্জিন ইঞ্জিন )
{
this.version = সংস্করণ;
this.engn = ইঞ্জিন;
}
সর্বজনীন অকার্যকর স্টার্টবাইক ( ) {
System.out.println ( 'বাইক স্টার্ট করছি' + সংস্করণ ) ;
engn.start ( ) ;
}
পাবলিক অকার্যকর স্টপবাইক ( ) {
System.out.println ( 'বাইক থামাচ্ছি' + সংস্করণ ) ;
eng.stop ( ) ;
}
}



উপরের কোডের ব্যাখ্যা:

  • প্রথমে একটি ক্লাস তৈরি করুন যার নাম “ ইঞ্জিন এবং ডিফল্ট কনস্ট্রাক্টরকে আহ্বান করুন যা 'নামক একটি স্ট্রিং টাইপ প্যারামিটার নিয়ে আসে প্রকার
  • এর পরে, 'নামক দুটি ফাংশন ঘোষণা করুন শুরু() ' এবং ' থামান() ” যে কনসোলে ডামি বার্তা প্রিন্ট করে।
  • তারপর, 'নামক একটি নতুন ক্লাস তৈরি করুন বাইক ” এবং ডিফল্ট কনস্ট্রাক্টর ব্যবহার করা হয় যাতে ভেরিয়েবল এবং উপরের ক্লাসের অবজেক্ট প্যারামিটার হিসেবে থাকে।
  • এছাড়াও, 'বাইক' ক্লাসের ভিতরে তৈরি ভেরিয়েবল এবং বস্তুর মান হিসাবে এই প্যারামিটারগুলি সেট করুন। এটি ক্লাসের ভিতরে মানগুলি অ্যাক্সেসযোগ্য করে তোলে।
  • এর পরে, 'নামক দুটি ফাংশন তৈরি করা হয় স্টার্টবাইক() ' এবং ' স্টপবাইক() ” যে একটি ডামি বার্তা প্রিন্ট করে।
  • শেষ পর্যন্ত, 'এ তৈরি ফাংশনগুলিকে কল করে ইঞ্জিন ' শ্রেণী' নামক বস্তু ব্যবহার করে ইঞ্জিন

এখন, সন্নিবেশ করান ' প্রধান() 'উপরে বর্ণিত কোড কাজ করার পদ্ধতি:

পাবলিক ক্লাস রচনা {
পাবলিক স্ট্যাটিক অকার্যকর প্রধান ( স্ট্রিং [ ] args ) {
ইঞ্জিন কেউ না = নতুন ইঞ্জিন ( 'YBR' ) ;
বাইক বাইক = নতুন বাইক ( 'ভারী বাইক' , কেউ না ) ;
bik.startBike ( ) ;
bik.stopBike ( ) ;
}
}

উপরের কোডের ব্যাখ্যা:

  • প্রথমত, এর বস্তু ' ইঞ্জিন 'ক্লাসটি নাম দিয়ে তৈরি করা হয়েছে' কেউ না ” এবং একটি র্যান্ডম স্ট্রিং টাইপ মান এর কনস্ট্রাক্টরের কাছে পাঠানো হয়।
  • এর পরে, 'এর জন্য একটি বস্তু তৈরি করুন বাইক 'শ্রেণীর নাম' বিশেষ ” এর পরে, 'ইঞ্জিন' ক্লাস অবজেক্ট বরাবর স্ট্রিং টাইপ মানটি তার কনস্ট্রাক্টরের কাছে একটি আর্গুমেন্ট হিসাবে পাস করুন।
  • শেষ পর্যন্ত, কল করুন ' স্টার্টবাইক() ' এবং ' স্টপবাইক() ' ব্যবহার করে ফাংশন ' বিশেষ বস্তু।

উপরের কোড স্নিপেট কার্যকর করার পরে:

উপরের স্ন্যাপশট দেখায় যে কম্পোজিশন ধারণা ব্যবহার করে ডেটা পুনরুদ্ধার করা হয়েছে।

রচনার রিয়েল-টাইম ব্যবহার

অনেক রিয়েল-টাইম অ্যাপ্লিকেশন রয়েছে যেখানে রচনার ধারণা একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। এর মধ্যে কিছু

ব্যবহারগুলি নীচে লেখা আছে:

  • ভিতরে ' GUI উন্নয়ন ”, রচনাটি সাধারণত জটিল UI উপাদান তৈরি করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, একটি উইন্ডো ক্লাস বোতাম, লেবেল এবং টেক্সট ফিল্ডের মতো বস্তু রচনা করতে পারে।
  • দ্য ' ইনজেকশন নির্ভরতা ” ফ্রেমওয়ার্ক, যেমন স্প্রিং, বস্তুর মধ্যে নির্ভরতা ইনজেকশন করার জন্য কম্পোজিশনকে ব্যাপকভাবে ব্যবহার করে।
  • রচনা ব্যাপকভাবে ব্যবহৃত হয় ' অ্যাপ্লিকেশন ডিজাইন গ্রাহক, লেনদেন এবং ব্যালেন্সের মতো বস্তুর মধ্যে জটিল সম্পর্কের মডেল তৈরি করতে যাতে সংশ্লিষ্ট কার্যকারিতা সহ একটি ব্যাঙ্ক অ্যাকাউন্টের প্রতিনিধিত্ব করা যায়
  • রচনা 'এ মৌলিক উপাদান ভিত্তিক উন্নয়ন ”, যেখানে পুনঃব্যবহারযোগ্য উপাদানগুলি বৃহত্তর সিস্টেম তৈরি করতে গঠিত হয়।
  • বিভিন্ন ডেটা স্ট্রাকচারে কম্পোজিশন ব্যবহার করা হয় সহজ ডাটা স্ট্রাকচারকে একত্রিত করে আরও জটিল তৈরি করতে।

উপসংহার

সাধারণ বস্তুকে একত্রিত করে জটিল বস্তু তৈরি করতে কম্পোজিশন ব্যবহার করা হয়। এটি প্রোগ্রামারদের ক্লাসের মধ্যে সম্পর্ক স্থাপন করতে সক্ষম করে ' আছে ” সম্পর্ক, যেখানে প্রথম শ্রেণীতে দ্বিতীয় শ্রেণীর একটি উদাহরণ রয়েছে। রচনা ধারণা ব্যবহার করে, প্রোগ্রামার নির্দিষ্ট আচরণের সাথে বস্তু রচনা করে মডুলার, পুনঃব্যবহারযোগ্য এবং নমনীয় ডিজাইন অর্জন করতে পারে।