다음과 같이 나타낼 수있는 코드가 있습니다.
public class ItemService {
public void DeleteItems(IEnumerable<Item> items)
{
// Save us from possible NullReferenceException below.
if(items == null)
return;
foreach(var item in items)
{
// For the purpose of this example, lets say I have to iterate over them.
// Go to database and delete them.
}
}
}
이제 이것이 올바른 접근법인지 또는 예외를 던져야하는지 궁금합니다. 반환은 빈 컬렉션을 반복하는 것과 동일하기 때문에 예외를 피할 수 있습니다. 즉, 중요한 코드는 실행되지 않지만 다른 한편으로는 코드의 어딘가에 문제가 숨어있을 수 있습니다. DeleteItems
와 null
매개 변수? 코드 어딘가에 문제가 있음을 나타낼 수 있습니다.
이것은 대부분 서비스에서 메소드와 관련하여 발생하는 문제입니다. 대부분이 무언가를하고 결과를 반환하지 않기 때문에 누군가가 잘못된 정보를 전달하면 서비스가 수행 할 작업이 없으므로 반환됩니다.