যখন আমি এই জাতীয় কোড লিখি, যেখানে আপত্তি একটি স্থানীয় ভেরিয়েবল:
if (obj is IMyInterface)
{
var result = (IMyInterface)obj;
// ....
}
রিশার্পার এটিকে কোডগুলিতে পরিবর্তিত করার প্রস্তাব দেয়:
var result = obj as IMyInterface;
if (result != null)
{
// ...
}
আমি পূর্বেরটিকে পছন্দ করি, কারণ এটি দুর্ঘটনাজনিত নাল রেফারেন্স ব্যতিক্রমগুলির জন্য কোনও সুযোগ দেয় না। অন্যান্য ফর্মকে প্রাধান্য দেওয়ার কী কারণ রয়েছে?
রেশার্পার কেন এটি সুপারিশ করে?