Defensive Programing라는 단어를 보는 순간 어떤 생각이 드는가?
다른 사람이 만든 API를 믿을 수 있는가? 그리고, 자신이 만든 API를 신뢰를 할수 있는가?

특히 객체지향으로 개발을 하다보면 무심코 넘어가기 쉬운 것중의 하나가 객체의 null값 체크이다. 이것은 잘해주면, 좀더 견고한 코드가 될 것이다.
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/NullPointerException.html

만약, properties라는 객체가 있다면,
if(properties == null){
  throw new NullPointerException("properties  is null");
}

properties.get("name");

이게 바로 Defensive Programing이다. 코드가 좀 길어지는 단점이 있고, 널패턴이 적용된 것을 인지하고 있지않다면, API를 사용하는 클래스에서는 반드시 체크하는 로직을 넣어주자.

수많은 오류들을 미연해 방지할 수 있고, 디버깅하느라 고생을 안해도 된다.

P.464 Defensive Programing


Posted by ologist

블로그 이미지
ologist

공지사항

Yesterday221
Today25
Total34,406

달력

 « |  » 2012.02
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      

최근에 받은 트랙백

글 보관함