2016년 3월 11일 금요일

2016년 3월 8일 화요일

Adapter 패턴 vs. Facade 패턴 vs. Decorator 패턴

1) 어댑터 패턴1-1. 정의한 클래스의 인터페이스를 클라이언트에서 사용하고자 하는 다른 인터페이스로 변환합니다.어댑터를 이용하면 인터페이스 호환성 문제 때문에 같이 쓸 수 없는 클래스들을 연결해서 쓸 수 있습니다.1-2. 클래스 어댑터 패턴단점: 상속(Generalzation)을 활용하기때문에 유연하지 못하다.장점: 어댑터(Adapter)를 전체를 다시 구현할 필요가 없다.(빠르다)주의: 클래스 어댑터에서는 다중상속을 이용하기 때문에 자바에서는 쓸 수 없습니다.쓸수있습니다.(간접적 다중상속 지원)- 코드public class Adaptee...
Share:

logback을 사용해야 하는 이유

“Log4j” (현재는 Apache Logging Service라는 Top Project)는  “Ceki G?lc?“라는개발자가 최초로 만들었습니다.“Log4J“는 java world에서 “가장 많이 사용하고 있는 logger“라고 감히 말씀 드릴수 있습니다.이러한 성공에 힘을 입어 “Ceki G?lc?“는 좀더 “Logger“에 대해서 깊은 프로젝트를 시작했고,그것이 바로 “SLF4J” 와 “LOGBack” 입니다.“SLF4J“는 “로깅 구현체“라기 보다는 “Logging Facade” 입니다.(※ facade pattern...
Share:

2016년 3월 7일 월요일

자바 제네릭(Generics)

1) Generics제너릭 타입(Generic Types)은 주로 자바 컬렉션에서 많이 사용되고 있다. 컬렉션은 자료구조이다. 컬렉션에는 어떤 자료를 담을지 알 수 없으므로 최상위 객체인 Object형태로 저장되고 관리되도록 설계되어 있다. 하지만, 의도하지 않은 자료형이 담기는 경우도 발생하게 된다. 이 때의 오류는 컴파일시에는 알 수가 없고 실행을 시켜보아야만 알 수 있다는 것이 문제점이었다. 제너릭 타입을 사용하면 프로그래머가 원하는 객체의 타입을 명시해서 의도하지 않은 객체는 저장될 수 없도록 컴파일시에 오류를 확인할 수있게 된다.2) 제너릭클래스 정의하기제네릭 클래스를 정의하는 방법은 일반적인 클래스를 정의하는 것과 동일하다. 다만, 클래스명 뒤에 <제너릭타입, ...>이라고 덧붙여...
Share: