আমি জানি এটি খুব ব্যবহারের ক্ষেত্রে সুনির্দিষ্ট হতে পারে তবে আমি নিজেকে এটি প্রায়শই ভাবছি ering একটি সাধারণত পছন্দসই বাক্য গঠন আছে?
আমি কোনও ফাংশনে যখন সবচেয়ে ভাল পন্থাটি জিজ্ঞাসা করছি না, আমি জিজ্ঞাসা করছি আমার তাড়াতাড়ি প্রস্থান করা উচিত বা আমি কেবল ফাংশনটি কল না করা উচিত।
ফাংশন কল কাছাকাছি যদি মোড়ানো
if (shouldThisRun) {
runFunction();
}
আছে যদি ( গার্ড ) ফাংশনে
runFunction() {
if (!shouldThisRun) return;
}
এই ফাংশনটিকে একাধিকবার বলা হয়ে থাকলে অবশ্যই পরবর্তী বিকল্পটিতে কোড ডুপ্লিকেশন হ্রাস করার সম্ভাবনা রয়েছে তবে কখনও কখনও আপনি এখানে ফাংশনটির একক-দায়িত্ব-নেস হারাতে পারেন বলে এটি এখানে যুক্ত করা ভুল মনে করে।
এখানে একটি উদাহরণ
আমার যদি একটি আপডেটস্ট্যাটাস () ফাংশন থাকে যা কেবল কোনও কিছুর স্থিতি আপডেট করে। আমি কেবল তখনই স্থিতি আপডেট করতে চাই যদি স্থিতি পরিবর্তিত হয়। আমি আমার কোডের সেই জায়গাগুলি জানি যেখানে স্ট্যাটাসটি পরিবর্তনের সম্ভাবনা রয়েছে এবং আমি অন্যান্য স্থানগুলিও জানি যেখানে এটির তীব্র পরিবর্তন হয়েছে।
আমি নিশ্চিত যে এটি কেবল আমার কিনা তবে আমি এই ফাংশনটিকে যথাসম্ভব খাঁটি রাখতে চাইলে এই অভ্যন্তরীণ ফাংশনটি পরীক্ষা করতে কিছুটা নোংরা লাগে - যদি আমি এটি কল করি তবে আমি স্থিতিটি আপডেট হওয়ার প্রত্যাশা করব। তবে আমি জানাতে পারছি না যে কয়েকটি জায়গা যেখানে আমি জানি যে এটির পরিবর্তিত না হওয়ার সম্ভাবনা রয়েছে সেখানে চেক করে কলটি लपेटানোর চেয়ে আরও ভাল।