일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 | 31 |
- Head First Design Pattern
- 오라클
- 후기
- Oracle
- JPA
- javascript
- Design Pattern
- 에러
- 알고리즘
- 자바
- 독서
- 카카오톡1차
- spring
- 회고
- 인프런
- 람다
- math
- 이펙티브자바
- 프로그래머스
- 인강리뷰
- Java
- 우아한테크코스
- Eclipse
- 인코딩
- Singleton
- 공부
- study
- 매핑
- 디자인패턴
- 독서리뷰
- Today
- Total
목록Design Pattern (10)
Lee's Grow up
이전에 JAVA 언어로 배우는 디자인 패턴 입문 이라는 책을 공부하면서 말그대로 입문 서적이였기 때문에 가끔 부족한 설명이 느껴져서 매번 관련 래퍼런스를 검색해가며 공부를 병행했었다 자주 방문한 래퍼런스는 https://refactoring.guru/design-patterns Design Patterns refactoring.guru 각종 찬사들 스콧 맥닐리, 썬 마이크로시스템즈 회장 : 자바 기술은 모든 곳에 쓰입니다..... 켄 아놀드, 썬 마이크로시스템즈 시니어 엔지니어 : 빠르고 재미있고 정신없는 책입니다...... 로스 골드버그 : 정말 놀라운 학습법입니다. 도저히 책을 내려놓을 수 없었어요..... 폴로이드 존슨 : 너무 좋아서 눈물이 막 나오려고 해요.... 위와같은 인용구로 책을 시작합니..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문],[Head First Design Pattern]의 내용을 참고해서 정리한 글입니다. 잘못된 부분은 댓글로 피드백 부탁드립니다. 1. Flyweight 패턴이란? 어떤 클래스의 인스턴스 한 개만 가지고 여러 개의 "가상 인스턴스"를 제공하고 싶을 때 사용하는 패턴입니다. 즉 인스턴스를 가능한 대로 공유시켜 쓸데없이 new연산자를 통한 메모리 낭비를 줄이는 방식입니다. 2. Flyweight 패턴의 등장인물 Flyweight(플라이급)의 역할 공유에 사용할 클래스들의 인터페이스(API)를 선언합니다. ConcreteFlyweight(구체적인 플라이급)의 역할 Flyweight의 내용을 정의합니다. 실제 공유될 객체입니다. FlyweightFactory(..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문],[Head First Design Pattern]의 내용을 참고해서 정리한 글입니다. 잘못된 부분은 댓글로 피드백 부탁드립니다. 1. Chain of Responsibility 패턴이란? 요청이 주어질때, 사슬에 속해있는 각 객체는 자기가 받은 요청을 검사하여 직접 처리하거나 사슬에 들어있는 다른 객체에 넘기게 되는 방식. 즉 책임을 넘기는 구조입니다. 2. Chain of Responsibility 패턴의 등장인물 Handler(처리자)의 역할 요구를 처리하는 인터페이스(API)를 결정하는 역할을 합니다. ConcreteHandler(구체적인 처리자)의 역할 요구를 처리하는 구체적인 역할을 합니다. Clinet(요구자)의 역할 최초의 Concrete..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문],[Head First Design Pattern],[Effective Java 3 개정판]의 내용을 참고해서 정리한 내용입니다. 잘못된 부분은 댓글로 피드백 부탁드립니다. 1. Builder 패턴이란? 객체의 생성 단계들을 캡슐화 하여 객체의 생성을 유연하게 해주는 패턴입니다. 즉 객체의 생성과정과 객체의 표현 방법을 분리합니다. 2. Builder 패턴의 등장인물 Builder(건축자)의 역할 인스턴스 생성을 위한 인터페이스(API)를 선언합니다. ConcreteBuilder(구체적인 건축자)의 역할 Builder 인터페이스를 구현하는 역할을 합니다. Director(감독자)의 역할 Builder 인터페이스(API)를 사용해 인스턴스를 사용합니다. ..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문],[Head First Design Pattern]의 내용을 참고해서 정리한 내용입니다. 잘못된 부분은 댓글로 피드백 부탁드립니다. 1. Bridge 패턴이란? '기능 클래스 계층'과 '구현 클래스 계층'을 연결해주는 패턴입니다. 기능 클래스 계층이란 ? A라는 상위 클래스를 상속받는 B라는 하위 클래스에서 새로운 기능을 추가하는 계층을 말합니다. 구현 클래스 계층이란 ? A라는 인터페이스(API)를 구현한 B라는 객체가 존재할 때 구현 클래스 계층이라고 말합니다. 2. Bridge 패턴의 등장인물 Abstraction(추상화)의 역할 기능 클래스 계층의 상위 클래스입니다. 기본 기능만 정의되어 있습니다. RefinedAbstaction(개선된 추상화)..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문],[Head First Design Pattern] 의 내용을 정리해서 작성한 내용입니다. 잘못된 부분이 있으면 댓글로 알려주시면 감사하겠습니다. 1. Observer 패턴이란? 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들에게 변화를 알려주고 자동으로 내용이 갱신되는 방식으로 일대다의 의존성을 정의합니다. 즉 상태 변화에 따른 처리를 기술할 때 사용합니다. 또한 느슨한 결합을 통해 의존성을 제거해줍니다. 2. Observer 패턴의 등장 인물 Subject(관찰 대상자)의 역할 '관찰되는 대상'을 관리하는 요소 ConcreteSubject(구체적인 관찰 대상자)의 역할 구체적으로 Subject를 표현하는 역할이며, 통보하는 클..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문] 이라는 책의 공부 내용을 개인적으로 정리한 내용입니다. 처음 배우는 부분이기 때문에 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 1. Factory Method 패턴이란? 상위 클래스에 알려지지 않은 구체 클래스를 생성하는 패턴이며, 하위 클래스가 어떤 객체를 생성할지 결정하도록 하는 패턴입니다. 또한 부모 클래스 코드에 구체 클래스 이름을 감추기 위한 방법으로도 사용합니다. Factory Method라는 패턴 이름 때문에 객체를 생성하는 메소드라고 오해할 수 있지만, Template Method의 생성 버전이라고 볼 수 있다. 상속을 사용하지만 상위 클래스를 전혀 확장하지 않기 때문에 extends의 관계를 잘못 이용한 것처럼 보여질 수 있다. ..
관련 내용은 [자바 언어로 배우는 디자인 패턴 입문] 이라는 책의 공부 내용을 개인적으로 정리한 내용입니다. 처음 배우는 부분이기 때문에 틀린 부분이 있다면 지적해주시면 감사하겠습니다. 1. Template Method 패턴이란? 동작 상의 알고리즘의 프로그램 뼈대를 정의하는 행위 디자인 패턴으로써, 알고리즘의 구조를 변경하지 않고 알고리즘의 특정 단계를 다시 정의할 수 있게 해주는 패턴방식. 즉, 공통되는 부분은 추상클래스로 정의된 상위 클래스에서 구현을하고, 재정의가 필요한 부분은 추상메소드로 선언합니다. 2. Template Method 패턴의 등장 인물 이번 포스팅에서 사용될 요소들의 역할입니다. AbstractClass ( 추상 클래스 ) 의 역할 템플릿 메소드를 구현하고, 그 템플릿 메소드에서..