분류 전체보기692 [Design Patterns] Singleton Pattern : 싱글턴 패턴 Head First Design Patterns 책을 읽으며 정리한 내용입니다. 문제가 될 시 글을 내리도록 하겠습니다! Singleton Pattern 이란? 싱글턴 패턴은 간단히 말하면 특정 클래스에 대해서 객체 인스턴스를 하나만 만드는 패턴입니다. 어디서든지 그 인스턴스에 접근할 수 있도록 하기 위한 패턴입니다. 또한 이 패턴을 이용하면 필요할때만 객체를 만들어 사용하기 때문에 자원낭비를 막을 수 있습니다. 우선 간단한 구조를 살펴봅시다! 이 말이 무슨 의미인지 다음 단락부터 예시를 통하여 설명해 보겠습니다! 패턴 소개 우선 고전적인 싱글턴 패턴은 다음과 같습니다. public class Singleton { private static Singleton uniqueInstance; // Single.. BackEnd/Design Patterens 2022. 1. 13. [Design Patterns] Factory Pattern : 팩토리 패턴 Head First Design Patterns 책을 읽으며 정리한 내용입니다. 문제가 될 시 글을 내리도록 하겠습니다! Factory Pattern 이란? " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 팩토리 메소드 패턴 객체를 생성하기 위한 인터페이스 정의하는데, 어떤 클래스의 인스턴스를 만드는지는 서브클래스에서 결정하게 만듭니다. 이 패턴을 사용하면 클래스의 인스턴스를 만드는 일을 서브클래스에서 책임지는 것입니다. 위의 다이어그램을 보면 Creator에는 제품을 갖고 원하는 일을 하기 위한 메소드 들이 구현되어 있습니다. 하지만 제품을 만들어주는 FactoryMethod()는 추상 메소드로 정의되어 있을 뿐 구현되어 있지는 않습니다. 따라서 모든 서브클래스 에.. BackEnd/Design Patterens 2022. 1. 13. [Design Patterns] Decorator Pattern : 데코레이터 패턴 Head First Design Patterns 책을 읽으며 정리한 내용 입니다. 문제가 될시 글을 내리도록 하겠습니다! Decorator Pattern 이란? Decorator Pattern - 객체에 추가적인 요건을 동적으로 첨가한다. 데코레이터는 서브클래스를 만드는 방식을 통하여 유연하게 확장하는 방법을 제공한다. 커피 한잔을 주문할때 단순 커피만이 아닌 모카시럽, 휘핑크림 등 을 추가하고 싶을 수 있습니다. 데코레이터 패턴 에서는 우선 커피 객체를 만들고, 이 만들어진 커피 객체를 Mocha 객체로 감싸고, 다시 이 모카커피 객체를 휘핑크림 객체로 감싸면서 Wrapper 형태로 만들어 집니다. 다음 그림과 같이 말이죠! 이제 커피의 가격을 측정하고 싶다면 가장 외각의 Whip 객체의 Cost() .. BackEnd/Design Patterens 2022. 1. 12. [Design Patterns] Observer Pattern : 옵저버 패턴 Head First Design Patterns 책을 읽으며 정리한 내용 입니다. 문제가 될시 글을 내리도록 하겠습니다! Observer Pattern 란? Observer Pattern - 한 객체의 상태가 바뀌면 그 객체에 의존하는 다른 객체들한테 연락이 가고 자동으로 내용이 갱신되는 방식으로 일대다 의존성을 정의합니다. 옵저버 패턴에서는 일대다 관계로, 1개의 Subject 와 여러개의 Observer로 구성됩니다. 또한 Observer들은 Subject에 의존적 입니다. Subject의 상태가 바뀌면 변경사항을 옵저버 한태 통보해주고, 이 통보에 대하여 Observer는 대응할 수 있습니다. 값을 바꿀수도 있고, 삭제할수도 있습니다. 또한 Observer들은 언제든 그룹에서 추가/삭제 될 수 있습.. BackEnd/Design Patterens 2022. 1. 12. [Design Patterns] Strategy Pattern : 스트래티지 패턴 Head First Design Patterns 책을 읽으며 정리한 내용 입니다. 문제가 될시 글을 내리도록 하겠습니다! Strategy Pattetn - 알고리즘군을 정의하고 각각을 캡슐화 하여 교환해서 사용할 수 있도록 만든다. 스트래티지 를 활용하면 알고리즘을 사용하는 클라이언트와 독립적으로 알고리즘을 변경할 수 있다. 이말이 무슨 의미인지 다음 단락부터 설명해 보겠습니다! 디자인 패턴 소개 다음과 같이 오리를 표현하는 class가 하나 있다고 해봅시다. (ps. 간단하게 만 작성한 class 입니다. 실제 코드가 아닙니다!!) Duck{ quack() { ... } swim() { ... } abstract display(); } 이제 이러한 Duck 을 상속 받는 여러 파생의 오리들을 만들수 있.. BackEnd/Design Patterens 2022. 1. 12. [Spring] 스프링 빈과 의존관계 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 상세히 기록하고 얕은부분들은 가겹게 포스팅 하겠습니다. 섹션 4. 스프링 빈과 의존관계 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1. 컴포넌트 스캔과 자동 의존관계 설정 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 - @Controller 스프링 컨테이너가 처음에 생성될때 @Controller 라는 에노테이션이 있으면 그 컨트롤러 객체를 생성해서 Spring IOC에 넣어 관리한다. 이걸 Spring IOC 컨테이너에서 SpringBean에 등록되어 관리된다고 부른다. - @Autowired 필요한 의존 객체의 “타입"에 해당하는 빈을 찾아 주입한다. 1) 생.. BackEnd/Spring 2022. 1. 12. [Spring] 회원 관리 예제 - 백엔드 개발 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 상세히 기록하고 얕은부분들은 가겹게 포스팅 하겠습니다. 섹션 3. 회원 관리 예제 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 이번시간에는 MVC패턴을 활용하여 간단한 예제코드를 구현해 보면서 감을 익히는 시간이였다. 1. 비지니스 요구사항 정리 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 간단하게 회원ID, 이름을 저장한다. 기능은 회원 등록, 조회 뿐이다. 또한 데이터 저장소가 아직 선택되지 않았기 때문에 interface를 중심으로 설계 해야한다. 인터페이스로 구현해야 나중에 DB를 변경할때 쉬워진다. 2. 회원 도메인과 리포지토리 만들기 " data-ke-.. BackEnd/Spring 2022. 1. 12. [Spring] 스프링 웹 개발 기초 내 돈 내고 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 상세히 기록하고 얕은 부분들은 가볍게 포스팅하겠습니다. 섹션 2. 스프링 웹 개발 기초 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 지난번 환경설정 이후 본격적인 스프링에 대한 입문을 하게 되었다. 이번 시간에는 간단하게 staitc, MVC, API 들에 대한 이해와 간단한 설명을 들을 수 있었다. (이 강의는 전반적은 스프링의 흐름을 잡는 강의이다. 세세한 개별 내용훈 추후 따로 더 공부할 예정이다) 1. 정적 컨텐츠 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 정적 컨텐츠는 html, 이미지 등 변경이 없는 파일을 말한다. 그냥 파일 그대로 내려주는 .. BackEnd/Spring 2022. 1. 12. 이전 1 ··· 55 56 57 58 다음