ব্যতিক্রম হ্যান্ডলিং এবং লগ ইন উভয়ই ক্রস কাটিয়া উদ্বেগের উদ্বেগের মধ্যে আমি খুব একটা পার্থক্য দেখছি না। আপনি কি মনে করেন? কোনও পদ্ধতি বাস্তবায়িত করছে এমন মূল যুক্তির সাথে আন্তঃবাহিত হওয়ার চেয়ে এটিকে আলাদা করে পরিচালনা করা উচিত নয়?
সম্পাদনা : আমি যা বলতে চাইছি তা হ'ল আমার মতে একটি পদ্ধতি বাস্তবায়নের ক্ষেত্রে কেবল কার্যকর করার পথে যুক্তি থাকা উচিত এবং ব্যতিক্রমগুলি অন্য কোথাও পরিচালনা করা উচিত। এটি চেক / চেক করা ব্যতিক্রমগুলি সম্পর্কে নয়।
উদাহরণস্বরূপ, কোনও ভাষা এই জাতীয় নির্মাণ ব্যবহার করে সম্পূর্ণ পরীক্ষিত উপায়ে ব্যতিক্রমগুলি পরিচালনা করতে পারে:
class FileReader {
public String readFile(String path) {
// implement the reading logic, avoid exception handling
}
}
handler FileReader {
handle String readFile(String path) {
when (IOException joe) {
// somehow access the FileInputStram and close it
}
}
}
উপরের ধারণাগত ভাষায়, প্রোগ্রামটি FileReader
হ্যান্ডলারের অনুপস্থিতিতে সংকলন করবে না , কারণ FileReader
শ্রেণীর পাঠ্য ফাইলটি ব্যতিক্রম ছোঁড়াচ্ছে না। সুতরাং FileReader
হ্যান্ডলারটি ঘোষণার মাধ্যমে, সংকলকটি নিশ্চিত হতে পারে যে এটি পরিচালনা করা হচ্ছে এবং প্রোগ্রামটি সংকলন করে।
এইভাবে আমাদের চেকড এবং চেক না করা উভয় ব্যতিক্রম সমস্যা: দৃust়তা এবং পঠনযোগ্যতা সর্বোত্তম।