আমি মনে করি এটি নির্দিষ্ট প্রকল্পের উপর নির্ভর করে।
উদাহরণস্বরূপ, যদি বিভিন্ন ব্যবসায়িক ডোমেন একে অপরের থেকে সম্পূর্ণ স্বতন্ত্র থাকে তবে আমি ব্যবসায় ডোমেন দ্বারা সংগঠিত করব।
তবে যদি ব্যবসায় ডোমেনগুলির মধ্যে ভাগ করা কোড থাকে, বা বরং, ব্যবসার ডোমেনগুলি একই কোড বেসের বিভিন্ন রূপ , তবে প্রযুক্তিগত ডোমেন দ্বারা সংগঠিত করা এটি আরও যৌক্তিক বলে মনে হয়। এবং যদি আপনি কোনও ধরণের অবজেক্ট ওরিয়েন্টেড ভাষা ব্যবহার করেন তবে আপনি সম্ভবত আপনার ব্যবসায়-নির্দিষ্ট ফাইলগুলিতে আপনার জেনেরিক কন্ট্রোলার, মডেল ইত্যাদি সাবক্লাস করতে পারেন যাতে তাদের আরও পাতলা করা যায়।
দু'জনের মধ্যে একটি (সোনালী) মাঝপথে রয়েছে - এর নিজস্ব ডোমেনের মধ্যে ভাগ করা কোডটি ফেলা এবং অন্য ডোমেনে এটি ব্যবহার করুন। এটি আপনাকে আপনার অন্ত্রে অনুভূতি চালিত বিন্যাস দেয়, তবে ব্যবসায়িক ডোমেনগুলির মধ্যে ভাগ করা কোডটিকে মঞ্জুরি দেয়।
Domain1 # This domain changes bits of standard MVC code
controllers
models
views
Domain2 # this domain only modifies views, all else is standard
views
Shared # Here is the better part of code base
controllers
models
views
পুনশ্চ. আমি মনে করি যে বেশিরভাগ ফ্রেমওয়ার্কগুলি প্রযুক্তিগত ডোমেন দ্বারা সংগঠিত হয় কারণ তারা আশা করে যে আপনি বিভিন্ন ব্যবসায়িক ডোমেনগুলি একক প্রকল্পের সাথে মিশ্রিত করেন তবেই যদি আপনার কোড ভাগ করা থাকে এবং অন্যথায় পৃথক প্রকল্প তৈরি করা হয়।
সম্পাদনা করুন:
উদাহরণস্বরূপ, ধরুন কোনও ওয়েব অ্যাপ রয়েছে যা কোনও সংস্থার গুদাম পরিচালনা করে। জেনেরিক আকারে এটি অনেক সংস্থার ক্ষেত্রে প্রযোজ্য হতে পারে তবে তাদের প্রত্যেকেরই কিছু নির্দিষ্ট বৈশিষ্ট্য থাকতে পারে যা পূরণ না করে এবং তাদের কিনতে নিষেধ করে Eg দুটি ডিফল্ট পরিবর্তে আইটেমটি তিন স্তরে সংগঠিত করতে।
আপনি অবশ্যই এই সংস্থার প্রত্যেকটির জন্য প্রকল্পটি কাঁটাচামচ করতে পারেন। তবে যদি কাঠামো / ভাষা মঞ্জুরি দেয় তবে আপনি প্রতিটি গ্রাহকের প্রয়োজন অনুসারে জেনেরিক প্রকল্পের বিট এবং টুকরোগুলি কাস্টমাইজ করতে এবং ব্যবসায় ডোমেন বিন্যাসে তাদের সংগঠিত করতে সাবক্লাসিং বা প্লাগইন ইত্যাদি ব্যবহার করতে পারেন।
উদাহরণস্বরূপ, যদি জেনেরিক প্রকল্পটি কেবল JSON এ কেবল আইটেমকে রপ্তানি করে তবে ডোমেন 1 নিয়ামককে সাবক্লাস করতে পারে এবং এটি সাম্প্রতিক সরবরাহের সমস্যাগুলিও রফতানি করতে পারে।
এবং আপনি যদি পরে দেখতে পান যে ডোমেন 1 এর এমন একটি উপাদান রয়েছে যা ডোমেন 2 এর জন্যও বৈধ, আপনি এর জেনেরিক সংস্করণটি ভাগ করে নিতে পারেন।
যেমনটি আপনি বলেছেন, অনেকগুলি ফ্রেমওয়ার্ক প্রযুক্তিগত ডোমেন দ্বারা সংগঠিত হয় এবং এটি আমি আপাতত ব্যবহার করেছি, কেবল আমার পছন্দসই এফডব্লিউটি আরও সহজ করে তোলে। তবে কিছুটা কনুই-গ্রিজ দিয়ে, আমি মনে করি আমি বিজনেস ডোমেন লেআউটটিকে সমর্থন করার জন্য অন্তর্ভুক্ত পাথগুলি আবারও লিখতে পারি।