Architecture Decision Record

Active theme: Light

← সিদ্ধান্ত রেকর্ডের উদাহরণ

আর্কিটেকচার সিদ্ধান্ত রেকর্ড: REST API-র জন্য snake_case নাকি camelCase?

সিদ্ধান্ত: REST API এন্ডপয়েন্টের জন্য snake_case নামকরণ রীতি ব্যবহার করা হবে

অবস্থা: গৃহীত

প্রেক্ষাপট

REST API-র নামকরণ রীতিতে দুটি জনপ্রিয় বিন্যাস আছে: snake_case ও camelCase। snake_case বিন্যাসে নামের প্রতিটি শব্দ আন্ডারস্কোর দিয়ে আলাদা করা হয়, আর camelCase-এ নামের প্রথম শব্দ ছোট হাতের অক্ষরে থাকে এবং পরবর্তী শব্দগুলোর প্রথম অক্ষর বড় হাতের হয়। এই সিদ্ধান্ত নির্ধারণ করবে REST API-র জন্য কোন নামকরণ রীতি ব্যবহার করা উচিত।

সিদ্ধান্তের চালিকাশক্তি

  • প্রকল্পের বিদ্যমান নামকরণ রীতির সঙ্গে সামঞ্জস্য

  • API নিয়ে কাজ করতে পারেন এমন যে কারও জন্য পাঠযোগ্যতা ও স্পষ্টতা

  • REST API নামকরণ রীতির জন্য শিল্পের সেরা অনুশীলনের সঙ্গে সামঞ্জস্য

  • বাস্তবায়ন ও রক্ষণাবেক্ষণের সহজতা

সিদ্ধান্ত

REST API এন্ডপয়েন্টের জন্য snake_case নামকরণ রীতি ব্যবহার করা হবে। এই পছন্দ নিম্নলিখিত কারণগুলোর ওপর ভিত্তি করে:

  1. সামঞ্জস্য: প্রকল্পটি ইতিমধ্যে সব এন্ডপয়েন্টের জন্য snake_case নামকরণ রীতি ব্যবহার করে, এবং পুরো প্রকল্পজুড়ে সামঞ্জস্য নিশ্চিত করতে এই রীতি বজায় রাখা উপকারী হবে।

  2. পাঠযোগ্যতা ও স্পষ্টতা: snake_case রীতি বেশি পাঠযোগ্য এবং বোঝা সহজ। আন্ডারস্কোর শব্দগুলোর মধ্যে স্পষ্ট বিভাজন দেয়, ফলে নামের অর্থ বিশ্লেষণ ও বোঝা সহজ হয়।

  3. শিল্পের সেরা অনুশীলনের সঙ্গে সামঞ্জস্য: snake_case রীতি শিল্পে ব্যাপকভাবে ব্যবহৃত এবং REST API-র জন্য সেরা অনুশীলন হিসেবে বিবেচিত, যা একে প্রকল্পের জন্য ভালো পছন্দ করে।

  4. বাস্তবায়ন ও রক্ষণাবেক্ষণের সহজতা: বিদ্যমান নামকরণ রীতি বজায় রাখা বাস্তবায়ন ও রক্ষণাবেক্ষণে সহজ, কারণ নতুন রীতি বেছে নিলে সব বিদ্যমান কোড ও নথি হালনাগাদ করতে হতো।

পরিণতি

এই সিদ্ধান্তের সম্ভাব্য পরিণতি আছে।

  • প্রকল্পে যোগ দেওয়া নতুন দলীয় সদস্যদের কেউ snake_case নামকরণ রীতির সঙ্গে অপরিচিত হলে তা উন্নয়নে বিভ্রান্তি ও ভুলের কারণ হতে পারে। তবে snake_case একটি ব্যাপকভাবে ব্যবহৃত রীতি হওয়ায় এমন ঝুঁকি ন্যূনতম।

  • প্রকল্পে camelCase রীতির ওপর ব্যাপকভাবে নির্ভরশীল অন্য টুল বা ফ্রেমওয়ার্ক ব্যবহৃত হলে নামকরণ রীতির মধ্যে রূপান্তরে বাড়তি প্রচেষ্টা লাগতে পারে। তবে প্রকল্পটি snake_case রীতিতে মান নির্ধারণ করেছে বলে এটি বড় উদ্বেগের বিষয় নয়।

সামগ্রিকভাবে, REST API এন্ডপয়েন্টের জন্য snake_case নামকরণ রীতি ব্যবহারের সিদ্ধান্ত একটি সামঞ্জস্যপূর্ণ, পাঠযোগ্য ও শিল্প-মানসম্মত পদ্ধতি দেয়, পাশাপাশি বাস্তবায়ন ও রক্ষণাবেক্ষণও সহজ।

কৃতজ্ঞতা স্বীকার: এই পৃষ্ঠা ChatGPT দ্বারা তৈরি, পরে স্পষ্টতা ও বিন্যাসের জন্য সম্পাদিত।