0. 복습
  • 리팩토링이란?
    기존의 코드를 외부의 동작방식에는 변화 없이 내부 구조를 변경해서 재구성하는 작업 또는 기술
 
  • 템플릿 메소드 패턴?
    상속을 통해 슈퍼클래스의 기능을 확장할 때 사용하는 패턴
 
  • 팩토리 메소드 패턴?
    상속을 통해 슈퍼클래스의 기능을 확장할 때 사용하는 패턴. 서브클래스에서 구현할 메소드를 슈퍼클래스에서 호출해서 사용
 
  • 개방 폐쇠 원칙?
    클래스나 모듈은 확장에는 열려 있어야 하고 변경에는 닫혀 있어야 한다.
 
  • 높은 응집도?
    변화가 일어날 때 해당 모듈에서 변하는 부분이 큰 것.
 
  • 낮은 결합도?
    서로 다른 오브젝트나 모듈간의 느슨하게 연결된 형태.
 
  • 전략 패턴?
    자신의 context에서 필요에 따라 변경이 필요한 알고리즘을 인터페이스를 통해 통째로 외부로 분리시키고, 이를 구현한 구체적인 알고리즘 클래스를 필요에 따라 바꿔서 사용할 수 있게 하는 디자인 패턴.
 
  • 제어의 역전(IoC)?
    오브젝트가 자신이 사용할 오브젝트를 스스로 생성하지 않고 모든 제어권한을 자신이 아닌 다른 대상에게 위임하는 것.
 
  • 스프링 IoC 용어정리
    1. 빈(bean) : 스프링이 IoC 방식으로 관리하는 오브젝트
    2. 빈 팩토리(bean factory) : 스프링의 IoC를 담당하는 핵심 컨테이너
    3. 애플리케이션 컨텍스트 : 빈 팩토리를 확장한 IoC 컨테이너
    4.  설정정보 : 애플리케이션 컨텍스트가 IoC를 적용하기 위해 사용하는 메타정보
  • 싱글톤 레지스트리
    싱글톤 형태의 오브젝트를 만들고 관리
    thread-safe한 코드 작성을 해야함.(예: 변하는 값은 로컬변수나 파라미터로 처리) 
 
  • DI(Dependency Injection) : 의존관계 주입

  • DL(Dependency Lookup) : 의존관계 검색

  • JUnit 프레임워크
    • @Test 어노테이션 : 테스트용 메소드 앞에 붙인다. 테스트용 메소드는 public 접근자가 있으며 리턴값이 void형이고 파라미터가 없어야 한다.
    • 다양한 matcher들 : is(), not(), either(), or() 등
    • @Before 어노테이션 : 여러 테스트 메소드들이 실행되기 앞서 실행되는 메소드에  붙인다.
    • @After 어노테이션 : 여러 테스트 메소드들이 실행된 후 실행되는 메소드에  붙인다.
    • @RunWith(SpringJUnit4ClassRunner.class) : 스프링의 컨텍스트 프레임워크의 JUnit 확장기능 지정
    • @ContextConfiguration(locations="/applicationContext.xml")
    • @Autowired 어노테이션 : 변수 타입과 일치하는 컨텍스트 내의 빈을 자동으로 찾아 DI 해줌
    • @DirtiesContext 어노테이션 : 스프링의 컨텍스트 프레임워크에 애플리케이션 컨텍스트의 상태를 변경한다는 것을 알려줌

1. 본 학습
JDBC 예외처리


분리와 재사용을 위한 디자인 패턴 적용


템플릿메소드패턴의 적용

전략패턴의 적용 

DI 적용을 위한 클라이언트/컨텍스트 분리

중첩 클래스 - 로컬 클래스

중첩 클래스 - 익명 내부 클래스

JdbcContext의 분리

템플릿과 콜백 - 콜백의 분리와 재활용

템플릿과 콜백 - 콜백과 템플릿의 결합

 템플릿/콜백의 응용


 템플릿/콜백의 재설계


 제네릭스를 이용한 콜백 인터페이스


 스프링의 JdbcTemplate


신고

'자바 > 스프링' 카테고리의 다른 글

엄마가 공부하래 제 3탄  (0) 2011.12.13
Posted by eunwoogi

댓글을 달아 주세요