আমি বুঝতে পারি যে ওওপি-তে কী রচনা রয়েছে, তবে সমষ্টি কী তা সম্পর্কে আমি পরিষ্কার ধারণা পেতে পারছি না। কেউ কি ব্যাখ্যা করতে পারেন?
আমি বুঝতে পারি যে ওওপি-তে কী রচনা রয়েছে, তবে সমষ্টি কী তা সম্পর্কে আমি পরিষ্কার ধারণা পেতে পারছি না। কেউ কি ব্যাখ্যা করতে পারেন?
উত্তর:
সাধারণ নিয়ম:
উদাহরণ 1:
একটি সংস্থা হ'ল জনগণের সমষ্টি। একটি সংস্থা অ্যাকাউন্টগুলির একটি সংমিশ্রণ। যখন কোনও সংস্থা ব্যবসা বন্ধ করে দেয় তখন তার অ্যাকাউন্টগুলির অস্তিত্ব বন্ধ হয়ে যায় তবে এর লোকেরা অস্তিত্ব রাখে।
উদাহরণ 2: (খুব সরলীকৃত)
একটি পাঠ্য সম্পাদক একটি বাফার (রচনা) এর মালিক। একটি পাঠ্য সম্পাদক একটি ফাইল (সমষ্টি) ব্যবহার করে। পাঠ্য সম্পাদকটি বন্ধ হয়ে গেলে, বাফারটি ধ্বংস হয়ে যায় তবে ফাইলটি নিজেই ধ্বংস হয় না।
Http://en.wikedia.org/wiki/Object_composition থেকে
সমষ্টি সাধারণ রচনা থেকে পৃথক যে এটি মালিকানা বোঝায় না। সংমিশ্রণে, যখন মালিকানাধীন বস্তুটি নষ্ট হয়ে যায়, তেমনি থাকা বস্তুগুলিও থাকে। সমষ্টিগতভাবে, এটি অগত্যা সত্য নয়। উদাহরণস্বরূপ, একটি বিশ্ববিদ্যালয় বিভিন্ন বিভাগের (যেমন, রসায়ন) মালিকানাধীন, এবং প্রতিটি বিভাগে বেশ কিছু অধ্যাপক থাকে। বিশ্ববিদ্যালয়টি বন্ধ হলে বিভাগগুলি আর বিদ্যমান থাকবে না, তবে departments বিভাগগুলিতে অধ্যাপকগণের অস্তিত্ব থাকবে। সুতরাং, কোনও বিশ্ববিদ্যালয়কে বিভাগগুলির একটি রচনা হিসাবে দেখা যেতে পারে, যেখানে বিভাগগুলিতে অধ্যাপকদের সমষ্টি রয়েছে। এছাড়াও একজন অধ্যাপক একাধিক বিভাগে কাজ করতে পারতেন, তবে একটি বিভাগ একাধিক বিশ্ববিদ্যালয়ের অংশ নিতে পারেননি।
সুতরাং - যখন আপনি রচনাটির সাথে মালিকানার সম্পর্ক রাখেন মালিকের মালিকানাধীন বস্তুটিও ধ্বংস হয়ে যায় - একটি সমষ্টি (এবং অন্তর্ভুক্ত বস্তুগুলি) স্বাধীনভাবে থাকতে পারে।
-
আপডেট: ক্ষমা প্রার্থনা - এই উত্তরটি পশ্চাদ্দেশের ক্ষেত্রে অনেক সরল।
সি.বাট তার উত্তরে একটি দুর্দান্ত সংজ্ঞা প্রদান করে: সমষ্টি বনাম রচনা
কোন একক ব্যাখ্যা নেই। বিভিন্ন লেখক একত্রিত হয়ে বিভিন্ন জিনিস বোঝায়। বেশিরভাগই এর দ্বারা নির্দিষ্ট কোনও অর্থ বোঝায় না।
রচনা একটি সমিতি
সমষ্টি একটি সমিতি
সংমিশ্রণ একটি শক্তিশালী সমিতি (যদি ধারণকৃত বস্তুর জীবন পুরোপুরি ধারক বস্তুর উপর নির্ভর করে তবে এটিকে দৃ strong় সমিতি বলা হয়)
সমষ্টিটি একটি দুর্বল সমিতি (যদি ধারণকৃত বস্তুর জীবন ধারক বস্তুর উপর নির্ভর না করে তবে এটিকে দুর্বল সংযুক্তি বলা হয়)
উদাহরণ:
class Contained {
public void disp() {
System.out.println("disp() of Contained A");
}
}
public class Container {
private Contained c;
//Composition
Container() {
c = new Contained();
}
//Association
public Contained getC() {
return c;
}
public void setC(Contained c) {
this.c = c;
}
public static void main(String[] args) {
Container container = new Container();
Contained contained = new Contained();
container.setC(contained);
}
}
রচনা (মিশ্রণ) একটি সহজ উপায় যা সাধারণ জটিল জিনিস বা ডেটা ধরণেরকে আরও জটিল বিষয়গুলিতে একত্রিত করে। রচনাগুলি অনেকগুলি বুনিয়াদি ডেটা স্ট্রাকচারের সমালোচনাপূর্ণ বিল্ডিং ব্লক
সমষ্টি (সংগ্রহ) সাধারণ রচনা থেকে পৃথক যে এটি মালিকানা বোঝায় না। সংমিশ্রণে, যখন মালিকানাধীন বস্তুটি নষ্ট হয়ে যায়, তেমনি থাকা বস্তুগুলিও থাকে। সমষ্টিগতভাবে, এটি অগত্যা সত্য নয়
╔═══════════╦═════════════════════════╦═══════════════════════╗
║ ║ Aggregation ║ Composition ║
╠═══════════╬═════════════════════════╬═══════════════════════╣
║ Life time ║ Have their own lifetime ║ Owner's life time ║
║ Relation ║ Has ║ part-of ║
║ Example ║ Car has driver ║ Engine is part of Car ║
╚═══════════╩═════════════════════════╩═══════════════════════╝
উভয়ই বস্তুর মধ্যে সম্পর্ককে বোঝায় এবং কেবল তাদের শক্তিতে পৃথক।
দুটি শ্রেণীর মধ্যে বিভিন্ন ধরণের নির্ভরতার জন্য ইউএমএল স্বরলিপিগুলি
রচনা : ইঞ্জিন যেহেতু গাড়ির অংশ, তাই তাদের মধ্যে সম্পর্ক রচনা। এগুলি জাভা ক্লাসগুলির মধ্যে কীভাবে প্রয়োগ করা হয় তা এখানে।
public class Car {
//final will make sure engine is initialized
private final Engine engine;
public Car(){
engine = new Engine();
}
}
class Engine {
private String type;
}
সমষ্টি : যেহেতু সংস্থার কর্মচারী হিসাবে ব্যক্তি রয়েছে তাই তাদের মধ্যে সম্পর্ক একত্রিতকরণ। জাভা ক্লাসগুলির ক্ষেত্রে তারা দেখতে কেমন তা এখানে Here
public class Organization {
private List employees;
}
public class Person {
private String name;
}
সমষ্টি এক মার্বেলের ব্যাগের মতো একটি সাধারণ সংগ্রহ
রচনাটি অভ্যন্তরীণ / কার্যকরী নির্ভরতা বোঝায়, যেমন কোনও বাক্সের কব্জাগুলি
গাড়ি মোট যাত্রী; তারা গাড়ির কার্যকারিতা ভঙ্গ না করে ভিতরে প্রবেশ করে
টায়ার উপাদান হয়; একটি সরান এবং গাড়ি আর সঠিকভাবে কাজ করে না functions
[দ্রষ্টব্য: অতিরিক্ত টায়ার সমষ্টিগত!)
আমি সবসময় রচনাটিকে 'একটি প্রয়োজন', যেমন একটি গাড়ীর ইঞ্জিনের প্রয়োজন হিসাবে দেখি এবং আমি "উদ্দেশ্য সম্পর্কিত জিনিস" হিসাবে সমষ্টিকে দেখি। সুতরাং গাড়ির সাদৃশ্যটির সাথে থাকা, আমার সমষ্টি হতে পারে এমন কোনও যাত্রার প্রতিনিধিত্ব করা যা কোনও গাড়ি এবং যাত্রীদের একসাথে আনতে জড়িত হতে পারে। যাত্রাটি গাড়ি বা যাত্রীদের নিজস্ব নয়, আমি একটি নির্দিষ্ট দৃশ্যের সাথে সম্পর্কিত ডেটা সংগ্রহ করছি। যাত্রা সমাপ্ত হলে গাড়ী এবং যাত্রীরা এগিয়ে যান। যখন কোনও গাড়ি শেষ হয়, গাড়ি এবং তার ইঞ্জিন সাধারণত একসাথে ধ্বংস হয়ে যায়।
শব্দার্থকভাবে, সমস্ত সেটগুলি সাবসেট দিয়ে তৈরি, তাই না? অতএব:
সমষ্টিটি যখন পিতা সেট থেকে পৃথকভাবে সাবসেটগুলি উপস্থিত থাকে। যেহেতু একটি মনিটর অন্য কম্পিউটারে সংযুক্ত হওয়ার জন্য কম্পিউটার থেকে আনপ্লাগড করা যায়।
সংমিশ্রণটি যখন সেই সাবসেটগুলি পিতা সেট অস্তিত্বের উপর নির্ভর করে। যেমন একটি গাছ গাছের একটি অংশ বা লিভার একটি দেহের অঙ্গ a
এই ধারণাগুলি ধারণাগতভাবে দুটি বস্তু বা শ্রেণীর মধ্যে নির্ভরশীলতার ধরণের কথা বলে। সরাসরি কোনও প্রোগ্রামে, একটি সমষ্টিতে, যখন পিতা আপত্তি নিষ্পত্তি করেন, সমষ্টিগত বিষয়গুলিও নিষ্পত্তি করা উচিত। কোনও সংমিশ্রণের জন্য একই দৃশ্যে, যৌগিক পুত্র অবজেক্টগুলি অবিরত থাকবে তবে পিতা অবজেক্টগুলি বিতরণ করবে।
এই সহজ উদাহরণ সম্পর্কে:
বস্তুর একটি অ্যারে একটি রচনা। বস্তুর প্রতি পয়েন্টারের একটি অ্যারে একটি সমষ্টি।
আমি যদি প্রথমটি মুছতে পারি তবে এর সামগ্রীগুলি এটি দিয়ে মুছে যাবে। অন্যদিকে, দ্বিতীয়টি তার সদস্যদের অস্তিত্বকে প্রভাবিত না করে অদৃশ্য হয়ে যেতে পারে যদি না কোনও নির্দিষ্ট পদ্ধতি না থাকে যা প্রতিটি পয়েন্টটিকে তার পয়েন্টার মোছার সাথে মুছে ফেলা হয়।