본문 바로가기

2016/12

[Effective Java] item 2 Item 2 : consider a builder when faced with many constructor parameters - static factories, constructor는 같은 한계를 가진다. => large number of optional parameters에 대응하기 어렵다. => 대안 1) - parameter마다 생성자를 달리 할 수 있지만, 늘어나는 parameter에 대응하기 어렵고, 가독성도 매우 떨어진다. => 대안 2) - parameterless 생성자를 호출 후, setter를 통해서 parameter setting.- 대응에는 용이하지만, 생성 방식이 일관되지 못해서 (여기저기서 각자 생성하므로) state가 불안정함.- immutable class를 불가능하게 만.. 더보기
Spring annotation Spring Annotationupdated 2016.12.19 @component클래스에 사용한다.해당 클래스를 빈(객체)로 만든다. default scope는 singleton @required @autowired다른 의존 객체를 사용할 때 타입을 기반으로 빈을 찾아서 주입시켜준다. 동일한 타입의 빈이 2개 이상 존재하면 예외 발생 -> qualifier로 특정 빈으로 한정시킬 수 있다. @service @requestmapping @requestparam @requestbodyannotation이 적용된 파라미터에 HTTP Request Body의 내용이 전달된다. @responsebodyannotation을 사용 후 string값을 반환하면, 해당 값은 http response body에 쓰여진다.. 더보기
[Effective Java] item 1 생성자 대신 static factory method를 고려하라updated 2016.12.19 [static factory method]- 해당 class의 instance를 반환. - design pattern의 factory method와는 다르다! - 단순히 생성자의 매개변수 list를 다르게 하여 여러 생성자를 두는 것은 좋지 못하다! 그러면 코드를 읽는 사람은 단순히 코드만 보고서는 이 생성자가 무엇을 의미하는지 알지 못한다.이럴때에 추가적으로 class documentation을 봐야 알 수 있다. - immutable class를 가능케함. - **장점**- 생성자와는 달리 static factory method는 이름을 가진다. - 생성자와 달리 해당 class가 필요할 때 마다 새로운 객.. 더보기
Linux Install NodeJS https://github.com/nodesource/distributions 더보기
홍콩 야경 홍콩 빅토리아 피크 더보기