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