본문 바로가기
728x90
반응형

디자인패턴7

[Java] 옵저버 패턴 (Observer pattern) 옵저버 패턴 (Observer pattern, 콜백 메서드) - 한 객체의 상태가 변하면 그 객체에 의존하는 다른 객체들에게 통지되고, 자동으로 내용이 갱신됨 - 호출이 되면 돌아감 - 구현한 기능은 필요에 따라 가져와서 사용할 수 있게 됨 - 예시] Swing의 이벤트 리스너 : https://young0105.tistory.com/83 예제 코드 1. 인터페이스 선언 더보기 HTML 삽입 미리보기할 수 없는 소스 2. 인터페이스를 포함 관계로 갖는 클래스 생성 더보기 HTML 삽입 미리보기할 수 없는 소스 3. 옵저버 패턴 설계 및 사용하기 더보기 HTML 삽입 미리보기할 수 없는 소스 2023. 4. 11.
[Java] 전략 패턴 (Strategy pattern) 전략 패턴 (Strategy pattern) - 행위를 클래스로 캡슐화해서, 동적으로 행위를 자유롭게 변환할 수 있게 함 - '구조' 디자인 패턴 - Spring의 의존성 주입 (DI)을 전략 패턴을 이용해서 구현할 수 있음 절차 1. 인터페이스 선언 더보기 HTML 삽입 미리보기할 수 없는 소스 2. 선언한 인터페이스의 구현 클래스 생성 더보기 HTML 삽입 미리보기할 수 없는 소스 3. 중간 클래스 생성 - 사용자는 중간 클래스만 알고 있으면 기능을 이용할 수 있음 (내부 알고리즘을 알지 못해도 됨) 더보기 HTML 삽입 미리보기할 수 없는 소스 4. Main에서 사용하기 더보기 HTML 삽입 미리보기할 수 없는 소스 2023. 4. 11.
[Java] 싱글톤 패턴 (Singleton pattern) # 관련 포스팅 - Static 키워드 : https://young0105.tistory.com/40 싱글톤 패턴 (Singleton pattern) - 모든 프로그램을 통틀어서, 해당 클래스의 객체가 단 한 개만 생성되어야 하는 경우 사용하는 디자인 패턴 - '생성' 디자인 패턴 - static 키워드를 활용하여 구현 가능 - 코딩 컨벤션 : 싱글톤 패턴을 구현하기 위한 메서드 이름은 'getInstance'를 자주 사용함 - 한 번 생성되면, 어떤 java 파일에서든 동일한 객체 하나만 공유하며 사용하게 됨 → 항상 같은 객체임을 보장함 // 예시 // public class Company { // 1. 생성자를 private으로 선언함 private Company() {} // 2. private,.. 2023. 4. 10.
[Java] 어댑터 패턴 (Adapter pattern) 어댑터 패턴 (Adapter pattern) - 호환되지 않는 클래스들을 함께 이용할 수 있도록 타 클래스의 인터페이스를 기존 인터페이스에 덧씌움 - 기존의 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할을 하는 인터페이스를 생성함 ⇒ 인터페이스를 이용하면 코드를 좀 더 유연하게 설계할 수 있음 HTML 삽입 미리보기할 수 없는 소스 HTML 삽입 미리보기할 수 없는 소스 2023. 3. 27.
[Java] 디자인 패턴 정리 디자인 패턴 - 공통적으로 발생하는 문제에 대해 자주 쓰이는 설계 방법을 정리한 패턴 - 장점 · 개발자 간에 원활한 소통 가능 · 소프트웨어 구조 파악 용이 · 재사용성 UP → 개발 시간 단축 · 설계 변경 요청에 대한 유연한 처리 - 단점 · 객체 지향 설계/구현에 대한 지식이 필요함 · 초기 투자 비용에 대한 부담 생성 패턴 - 객체를 생성하는 것과 관련된 패턴 # 싱글톤 패턴 (Singleton) - https://young0105.tistory.com/186 # 빌더 패턴 (Builder) - https://young0105.tistory.com/159 # 프로토타입 패턴 (Prototype) - 원본 객체를 새로운 객체에 복사하고, 필요에 따라 수정해서 사용하는 패턴 # 그 외 : Facto.. 2023. 3. 27.
728x90
반응형