এটি একটি গৌণ নিগল, তবে প্রতিবারই আমাকে এই জাতীয় কিছু কোড করতে হবে, পুনরাবৃত্তি আমাকে বিরক্ত করে, তবে আমি নিশ্চিত নই যে সমাধানগুলির কোনওটি আরও খারাপ নয়।
if(FileExists(file))
{
contents = OpenFile(file); // <-- prevents inclusion in if
if(SomeTest(contents))
{
DoSomething(contents);
}
else
{
DefaultAction();
}
}
else
{
DefaultAction();
}
- এই জাতীয় যুক্তির নাম আছে কি?
- আমি কি খুব ওসিডি বাচ্চা?
আমি কৌতূহলের জন্য যদি অশুভ কোড পরামর্শের জন্য উন্মুক্ত ...
make sure I have valid data for DoSomething(), and then DoSomething() with it. Otherwise, take DefaultAction()
। ডসোমিংথিং () এর জন্য আপনার কাছে ডেটা রয়েছে তা নিশ্চিত করার কৌতূহলপূর্ণ বিশদ বিবরণগুলি নিম্ন বিমূর্ত স্তরে রয়েছে এবং তাই অন্য কোনও ফাংশনে থাকা উচিত। এই ফাংশনটির উচ্চতর বিমূর্তকরণ স্তরে একটি নাম থাকবে এবং এর বাস্তবায়ন হবে নিম্ন-স্তরের। নীচের ভাল উত্তরগুলি এই সমস্যাটিকে সম্বোধন করে।
DefaultAction
কল DRY নীতি লঙ্ঘন করেছে