আমি পিএইচপি-তে একটি অ্যাপ্লিকেশন তৈরি করছি, জেন্ড ফ্রেমওয়ার্ক 1 এবং ডক্ট্রাইন 2 ওআরএম স্তর হিসাবে ব্যবহার করছি। সব ঠিকঠাক চলছে। এখন, আমি লক্ষ্য করেছি যে জেডএফ 1 এবং ডক্ট্রাইন 2 উভয়ই তাদের নিজস্ব ক্যাশেিং বাস্তবায়ন নিয়ে আসে এবং তার উপর নির্ভর করে। আমি উভয়কেই মূল্যায়ন করেছি এবং প্রত্যেকটির নিজস্ব প্রো এবং কনস রয়েছে, তাদের উভয়ই আমার সাধারণ প্রয়োজনের জন্য অপরের তুলনায় উচ্চতর অবস্থান করে না। দুটি গ্রন্থাগারও তাদের বাস্তবায়নের পরিবর্তে স্ব স্ব ইন্টারফেসের বিরুদ্ধে লেখা বলে মনে হচ্ছে।
যে কারণে আমি এটিকে একটি সমস্যা মনে করি তার কারণগুলি হ'ল আমার অ্যাপ্লিকেশনটি বুটস্ট্র্যাপ করার সময় আমাকে দুটি ক্যাশে ড্রাইভার কনফিগার করতে হবে - প্রত্যেকটির নিজস্ব বাক্য গঠন সহ। একটি অমিল সহজেই এইভাবে তৈরি করা হয় এবং এর কারণে ক্যাচিং ব্যাকএন্ডে দুটি সংযোগ স্থাপনে এটি অক্ষম বোধ করে।
আমি এগিয়ে যাওয়ার সর্বোত্তম উপায়টি কী তা নির্ধারণ করার চেষ্টা করছি এবং আপনি যে কোনও অন্তর্দৃষ্টি সরবরাহ করতে পারবেন তা স্বাগত জানাব।
আমি এতক্ষণ যা ভাবলাম তা চারটি বিকল্প:
- কিছুই করবেন না, ক্যাশ কার্যকারিতা সরবরাহকারী দুটি ক্লাস উপস্থিত রয়েছে তা গ্রহণ করুন।
- জেন্ডসের ইন্টারফেসটি ডক্ট্রাইনের ক্যাশে বাস্তবায়নের জন্য আটকে রাখতে একটি ফেকড ক্লাস তৈরি করুন।
- অপশন 2, অন্য উপায়ে - একটি জেন্ড ফ্রেমওয়ার্ক ব্যাকএন্ডে ডক্ট্রিনের ইন্টারফেসটি মানচিত্রের জন্য একটি মুখোমুখি তৈরি করুন।
- এই সমস্তটি নিয়ন্ত্রণ করতে একটি ইন্টারফেস তৈরি করতে একাধিক ইন্টারফেস-উত্তরাধিকার ব্যবহার করুন এবং প্রার্থনা করুন যে কোনও ওভারল্যাপ নেই (যেমন: উভয়ের যদি "সংরক্ষণ" পদ্ধতি থাকে তবে পিএইচপি'র কারণে তাদের একই ক্রমে প্যারামগুলি গ্রহণ করতে হবে) সঠিক পলিমারফিজমের অভাব)।
কোন বিকল্পটি সবচেয়ে ভাল, বা "উপরের কোনওটিই নয়" বৈকল্পিক যা আমি অবগত নই?