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