কীভাবে তা বোঝা যায়?
সংক্ষিপ্ত উত্তর: এটি না ।
দীর্ঘ উত্তর: একটি ডোমেন মডেল বিকাশের জন্য ভারী ওজনের নিদর্শনগুলি আপনার সমাধানের সেই অংশগুলিতে প্রযোজ্য না যা কেবলমাত্র একটি ডাটাবেস।
উদী দাহানের একটি আকর্ষণীয় পর্যবেক্ষণ ছিল যা এটি পরিষ্কার করতে সহায়তা করতে পারে
দহন বিবেচনা করে যে একটি পরিষেবাদির মধ্যে কিছু প্রকারের কার্যকারিতা এবং কিছু ডেটা থাকতে হবে। যদি এটিতে ডেটা না থাকে তবে এটি কেবল একটি ফাংশন। যদি এটি যা কিছু করে তা ডেটাতে সিআরইউডি অপারেশন করে তবে এটি ডাটাবেস।
ডোমেন মডেলটির মূল বিষয় হল সর্বোপরি, ডেটাতে আপডেট হওয়া সমস্তগুলি বর্তমান ব্যবসায়িক আগ্রাসনটি বজায় রাখা নিশ্চিত করে। অথবা, অন্যভাবে বলতে গেলে, ডোমেন মডেলটি এটি নিশ্চিত করার জন্য দায়বদ্ধ যে রেকর্ডের সিস্টেম হিসাবে কাজ করে এমন ডাটাবেস সঠিক কিনা correct
আপনি যখন কোনও সিআরইউডি সিস্টেমের সাথে কাজ করছেন, আপনি সাধারণত ডেটার জন্য রেকর্ডের ব্যবস্থা নন। বাস্তব জগতে রেকর্ডের বই, এবং আপনার ডাটাবেস বাস্তব জগতে শুধু একটি স্থানীয়ভাবে ক্যাশে উপস্থাপনা।
উদাহরণস্বরূপ, বেশিরভাগ তথ্য যা ব্যবহারকারীর প্রোফাইলে প্রদর্শিত হয় যেমন ইমেল ঠিকানা, বা সরকার জারি করা শনাক্তকরণ নম্বর, এমন সত্যের উত্স রয়েছে যা আপনার ব্যবসায়ের বাইরে থাকে - এটি অন্য কারও মেল প্রশাসক যা ইমেল ঠিকানা বরাদ্দ করে এবং প্রত্যাহার করে, না আপনার অ্যাপ্লিকেশন এটি সরকার যা আপনার অ্যাপ্লিকেশনকে নয়, এসএসএনকে নিয়োগ দেয়।
সুতরাং আপনি সাধারণত বাইরের বিশ্ব থেকে আপনার কাছে আসা ডেটাতে কোনও ডোমেন বৈধতা যাচ্ছেন না ; তথ্যটি সঠিকভাবে তৈরি এবং সঠিকভাবে স্যানিটাইজড হয়েছে তা নিশ্চিত করার জন্য আপনার কাছে চেক থাকতে পারে ; তবে এটি আপনার ডেটা নয় - আপনার ডোমেন মডেল কোনও ভেটো পাবে না।
স্তরগুলি ব্যবহার করে কোনও ডিডিডি পদ্ধতির ক্ষেত্রে দেখে মনে হয় সিআরইউডি অপারেশনগুলি ডোমেন স্তরটির মধ্য দিয়ে চলেছে। তবে কমপক্ষে আমাদের ক্ষেত্রে এটি বোধগম্য মনে হয় না।
এটি সেই ক্ষেত্রে ঠিক যেখানে ডাটাবেসটি রেকর্ডের বই ।
ওউয়ারজি এইভাবে রাখুন ।
প্রচুর লিগ্যাসি কোডে কাজ করা সত্ত্বেও, আমি ডোমেনের ভিতরে কী আছে এবং এর বাইরে কী তা সনাক্ত করতে সাধারণ ভুলগুলি লক্ষ্য করি।
ডেটা মডেলটির আশেপাশে কোনও ব্যবসায়িক যুক্তি না থাকলেই একটি অ্যাপ্লিকেশন সিআরইউডি হিসাবে বিবেচনা করা যেতে পারে। এমনকি এই (বিরল) ক্ষেত্রে, আপনার ডেটা মডেলটি আপনার ডোমেন মডেল নয়। এটির অর্থ কেবল, কোনও ব্যবসায়িক লজিক জড়িত না হওয়ায় এটি পরিচালনা করতে আমাদের কোনও বিমূর্ততা প্রয়োজন হয় না এবং এইভাবে আমাদের কোনও ডোমেন মডেল নেই।
আমরা ডোমেনের অভ্যন্তরে থাকা ডেটা পরিচালনা করতে ডোমেন মডেলটি ব্যবহার করি; ডোমেনের বাইরের ডেটা ইতিমধ্যে অন্য কোথাও পরিচালিত হয়েছে - আমরা কেবল একটি অনুলিপি ক্যাশে করছি।
গ্রেগ ইয়ং গুদাম সিস্টেমগুলি সমাধানের প্রাথমিক চিত্র হিসাবে ব্যবহার করে যেখানে রেকর্ডের বইটি অন্য কোথাও রয়েছে (যেমন: গুদাম মেঝে)। তিনি যে বাস্তবায়ন বর্ণনা করেছেন তা অনেকটা আপনার মতো - গুদাম থেকে প্রাপ্ত বার্তাগুলি ক্যাপচারের জন্য একটি লজিক্যাল ডাটাবেস এবং তারপরে সেই বার্তাগুলির বিশ্লেষণ থেকে প্রাপ্ত সিদ্ধান্তে ক্যাশ করার জন্য একটি পৃথক যৌক্তিক ডাটাবেস।
সুতরাং সম্ভবত আমাদের এখানে দুটি সীমাবদ্ধ প্রসঙ্গ আছে? প্রতিটি জন্য একটি বিভিন্ন মডেলinvestment account
হতে পারে. আমি এটিকে বাউন্ডেড প্রসঙ্গ হিসাবে ট্যাগ করতে অনিচ্ছুক হব কারণ এটি অন্যান্য জিনিসপত্রের সাথে কী আসে তা পরিষ্কার নয়। আপনার দুটি প্রসঙ্গ হতে পারে এটি সর্বব্যাপী ভাষায় সূক্ষ্ম পার্থক্যের সাথে একটি প্রসঙ্গ হতে পারে যা আপনি এখনও গ্রহণ করেন নি।
সম্ভাব্য লিটমাস পরীক্ষা: এই বর্ণালীটি কভার করার জন্য আপনার কতজন ডোমেন বিশেষজ্ঞের প্রয়োজন, বা বিভিন্ন উপায়ে উপাদানগুলির বিষয়ে কথা বলছেন এমন একজন। মূলত, আপনি কনওয়ের আইনকে পিছনের দিকে কাজ করে কতটা সীমাবদ্ধ প্রসঙ্গটি অনুমান করতে পারবেন।
আপনি যদি সীমাবদ্ধ প্রসঙ্গগুলি পরিষেবাগুলির সাথে একত্রিত হওয়ার বিষয়টি বিবেচনা করেন তবে এটি আরও সহজ হতে পারে: আপনি কি এই দুটি কার্যকারিতা স্বাধীনভাবে স্থাপন করতে সক্ষম হবেন? হ্যাঁ দুটি সীমাবদ্ধ প্রসঙ্গে পরামর্শ দেয়; তবে তাদের যদি সিঙ্ক্রোনাইজ করে রাখা দরকার হয় তবে এটি কেবলমাত্র একটি।