টি এল; ডিআর:
একটি ডিটিও রাজ্য স্থানান্তরের প্যাটার্ন বর্ণনা করে। একটি পোকো কিছুই বর্ণনা করে না। এটি ওওপিতে "অবজেক্ট" বলার আর একটি উপায়। এটি পজো (জাভা) এর কাছ থেকে এসেছে, যা মার্টিন ফাউলারের দ্বারা নির্মিত, তিনি আক্ষরিকভাবে এটিকে 'অবজেক্ট' এর অনুরাগী নাম হিসাবে বর্ণনা করেছেন কারণ 'অবজেক্ট' খুব সেক্সি নয়।
ডিটিও হ'ল উদ্বেগের স্তরগুলির মধ্যে স্থিতি স্থানান্তর করতে ব্যবহৃত একটি অবজেক্ট প্যাটার্ন। তাদের আচরণ থাকতে পারে (অর্থাত্ প্রযুক্তিগতভাবে পোকো হতে পারে) যতক্ষণ না সেই আচরণটি রাষ্ট্রকে পরিবর্তিত করে। উদাহরণস্বরূপ, এটির একটি পদ্ধতি থাকতে পারে যা নিজেই সিরিয়ালিকৃত হয়।
একটি পোকো একটি সরল বস্তু, তবে 'প্লেইন' বলতে যা বোঝায় তা হ'ল এটি বিশেষ নয়। এর ঠিক অর্থ এটি কোনও সিএলআর অবজেক্ট যার সাথে এতে কোনও নিহিত প্যাটার্ন নেই। একটি সাধারণ শব্দ। এটি অন্য কোনও কাঠামোর সাথে কাজ করার জন্য তৈরি করা হয়নি। সুতরাং [JsonProperty]
উদাহরণস্বরূপ, যদি আপনার পোকোর সমস্ত বৈশিষ্ট্য জুড়ে বা EF সজ্জা থাকে তবে আমি যুক্তি দেব যে এটি কোনও পোকো নয়।
বিভিন্ন ধরণের বস্তুর নিদর্শনগুলির তুলনা করার জন্য এখানে কয়েকটি উদাহরণ:
- মডেল দেখুন : দেখার জন্য ডেটা মডেল করতে ব্যবহৃত। বাঁধাই এবং বৈধতা সহায়তা করার জন্য সাধারণত ডেটা টীকা থাকে। এমভিভিএম-তে এটি নিয়ামক হিসাবেও কাজ করে। এটি একটি ডিটিওর চেয়ে বেশি
- মান অবজেক্ট : মান উপস্থাপন করতে ব্যবহৃত
- সমষ্টিগত রুট : রাষ্ট্র এবং আক্রমণকারীদের পরিচালনা করতে ব্যবহৃত হয়
- হ্যান্ডলারগুলি : একটি ইভেন্ট / বার্তায় প্রতিক্রিয়া জানাতে ব্যবহৃত হয়
- বৈশিষ্ট্য : ক্রস কাটিয়া উদ্বেগ মোকাবেলায় সজ্জা হিসাবে ব্যবহৃত হয়
- পরিষেবা : জটিল কাজ সম্পাদন করতে ব্যবহৃত
- নিয়ামক : অনুরোধ এবং প্রতিক্রিয়াগুলির প্রবাহ নিয়ন্ত্রণ করতে ব্যবহৃত
- কারখানা : কোন কনস্ট্রাক্টর যথেষ্ট ভাল না হলে ব্যবহারের জন্য জটিল বস্তুগুলি কনফিগার করতে এবং / অথবা একত্রিত করতে ব্যবহৃত হয়। রানটাইমে কোন জিনিস তৈরি করতে হবে তা সিদ্ধান্ত নিতেও ব্যবহৃত হত used
- সংগ্রহস্থল / ডিএও : ডেটা অ্যাক্সেস করতে ব্যবহৃত
এগুলি সমস্ত ন্যায়সঙ্গত বস্তু, তবে লক্ষ্য করুন যে তাদের বেশিরভাগই সাধারণত একটি প্যাটার্নের সাথে আবদ্ধ। সুতরাং আপনি তাদের "অবজেক্টস" বলতে পারেন অথবা আপনি এর উদ্দেশ্য সম্পর্কে আরও সুনির্দিষ্ট হতে পারেন এবং এটি যা কল করে তা কল করতে পারেন। আমাদের নকশার নিদর্শনগুলিও এ কারণেই; কয়েকটি কাজ জটিল ধারণা বর্ণনা। ডিটিও একটি নিদর্শন is সমষ্টিগত মূলটি একটি নিদর্শন, ভিউ মডেল একটি প্যাটার্ন (যেমন এমভিসি এবং এমভিভিএম)। পোকো কোনও প্যাটার্ন নয়।
একটি পোকো কোনও প্যাটার্ন বর্ণনা করে না। এটি ওওপি-তে শ্রেণি / অবজেক্টের উল্লেখ করার এক অন্যরকম উপায়। এটি একটি বিমূর্ত ধারণা হিসাবে ভাবেন; তারা কিছু উল্লেখ করা যেতে পারে। আইএমও, একমুখী সম্পর্ক রয়েছে যদিও কোনও জিনিস যখন এমন এক জায়গায় পৌঁছে যায় যেখানে এটি কেবল একটি উদ্দেশ্যে পরিষ্কারভাবে পরিবেশন করতে পারে, এটি আর কোনও পোকো নয়। উদাহরণস্বরূপ, একবার আপনি যদি আপনার কাঠামোটি কোনও কাঠামোর সাথে কাজ করার জন্য সজ্জা দিয়ে চিহ্নিত করেন তবে এটি আর কোনও পোকো নয়। অতএব:
- একটি ডিটিও একটি পোকো
- একটি পোকো একটি ডিটিও নয়
- একটি ভিউ মডেল একটি পোকো
- একটি পোকো কোনও ভিউ মডেল নয়
দুজনের মধ্যে পার্থক্য করার বিষয়টি হ'ল উদ্বেগকে অতিক্রম না করার এবং কঠোর সংযোগের দিকে পরিচালিত করার প্রয়াসগুলিতে স্বচ্ছ ও ধারাবাহিকতা রক্ষা করা। উদাহরণস্বরূপ যদি আপনার কোনও ব্যবসায়িক অবজেক্ট থাকে যাতে অবস্থার পরিবর্তনের পদ্ধতি রয়েছে তবে এসকিউএল সার্ভার এবং জসনপ্রপার্টি সংরক্ষণের জন্য EF সজ্জা দ্বারা এটি জাহান্নামে সজ্জিত রয়েছে যাতে এটি এপিআই এর শেষ পয়েন্টে ফেরত পাঠানো যায়। এই অবজেক্টটি পরিবর্তন করতে অসহিষ্ণু হবে এবং সম্ভবত বৈশিষ্ট্যের বিভিন্নরূপে লিখিত হবে (যেমন ইউজারআইডি, ইউজারপিকে, ইউজারকি, ইউজারগুইড, যেখানে তাদের কিছুকে ডিবিতে সংরক্ষণ না করার জন্য চিহ্নিত করা হয়েছে এবং অন্যরা সিরিয়াল হিসাবে চিহ্নিত না করে চিহ্নিত করা হয়েছে) এপিআই শেষ পয়েন্টে জেএসএন)।
সুতরাং আপনি যদি আমাকে কোনও ডিটিও বলে থাকেন তবে আমি সম্ভবত এটি নিশ্চিত করতাম যে এটি কখনও কখনও চলমান অবস্থা ছাড়া অন্য কোনও কিছুর জন্য ব্যবহৃত হয় না। যদি আপনি আমাকে বলেছিলেন যে কোনও কিছু ভিউ মডেল ছিল, তবে আমি সম্ভবত এটি নিশ্চিত করতাম যে এটি কোনও ডাটাবেজে সংরক্ষণ করা হচ্ছে না। যদি আপনি আমাকে কোনও কিছু ডোমেন মডেল বলে থাকেন তবে আমি সম্ভবত এটি নিশ্চিত করতাম যে এটির ডোমেনের বাইরের কোনও কিছুর উপর নির্ভরতা নেই। তবে আপনি যদি আমাকে কিছুটা পোকো বলে থাকেন তবে আপনি সত্যিই আমাকে কিছু বলবেন না।