আমি একটি মাইক্রো-পরিষেবা পরিবেশে একটি নতুন পরিষেবা বিকাশ করছি। এটি একটি রেস্ট পরিষেবা। সরলতার জন্য, আসুন যে পথটি: / ইতিহাসপুস্তকগুলি বলা যাক
এবং এই পথটির জন্য পোষ্ট পদ্ধতিটি একটি নতুন ইতিহাসের বই তৈরি করে।
আসুন ধরে নেওয়া যাক ইতিহাসের ইতিহাসে ইতিহাসের এক বা একাধিক যুগের ইতিহাস রয়েছে।
বংশবৃদ্ধির জন্য, ধরে নেওয়া যাক আমাদের কাছে মানব ইতিহাসের কেবল নিম্নলিখিত যুগ রয়েছে:
- প্রাচীন
- ক্লাসিকাল পোস্ট
- আধুনিক
আমার কোডে, আমি তাদের একটিতে উপস্থাপন করতে চাই enum
।
পদ্ধতির বডি (পে-লোড) JSON ফর্ম্যাটে রয়েছে এবং এতে একটি ফিল্ডের নাম অন্তর্ভুক্ত করা উচিত eras
। এই ক্ষেত্রটি era
মানগুলির একটি তালিকা , যা এই বইয়ের অন্তর্ভুক্ত।
শরীর দেখতে দেখতে দেখতে:
{
"name": "From the cave to Einstein - a brief history review",
"author": "Foo Bar",
"eras": ["Ancient", "Post Classical", "Modern"]
}
এই নির্দিষ্ট পরিষেবাটিতে ব্যবসায়ের যুক্তিটি হ'ল:
যদি ইনপুটটিতে কোনও যুগ সরবরাহ না করা হয় তবে এই বইটি সমস্ত যুগকে কভার করে বিবেচনা করা হয় ।
এপিআই পর্যালোচনায়, একটি প্রস্তাব তৈরি করা হয়েছিল:
অন্য মান অন্তর্ভুক্ত করুন, ALL
, যুগের enum জন্য স্পষ্টভাবে করার ইঙ্গিত দেয় যে যুগের সব আচ্ছাদিত করা হয়।
আমি মনে করি এটির কিছু উপকারিতা এবং কনস রয়েছে।
পেশাদাররা:
সুস্পষ্ট ইনপুট
কনস:
তালিকার দুটি আইটেম সরবরাহ করা থাকলে, বলুন ALL
এবং Ancient
- অ্যাপ্লিকেশন থেকে কী নেওয়া হবে? আমার ধারণা ALL
অন্যান্য মানগুলি ওভাররাইড করা উচিত তবে এটি নতুন ব্যবসায়িক যুক্তি।
যদি আমি একটি ক্যোয়ারী চালিত করি তবে নির্দিষ্ট যুগ (গুলি) কভার করে এমন বইগুলির জন্য, আমি কীভাবে সমস্ত যুগের বইয়ের প্রতিনিধিত্ব করব? তাহলে ALL
এছাড়াও আউটপুট (একই যুক্তি ব্যবহার করে) জন্য ব্যবহার করা হয়, তাহলে এটি ব্যাখ্যা করা ক্রেতার দায়িত্ব ALL
যেমন ["Ancient", "Post Classical", "Modern"]
।
আমার প্রশ্ন
আমি মনে করি যে নতুন ALL
হওয়াটি একেবারেই না থাকার চেয়ে আরও বিভ্রান্তির কারণ ঘটায়।
আপনি কি মনে করেন? আপনি কি এই ALL
মানটি যুক্ত করবেন বা আপনার এপিআই ছাড়াই রাখবেন?