Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- http
- Android
- Spring Boot
- db
- Servlet
- JPQL
- 김영한
- Exception
- 스프링 핵심 기능
- 백준
- 알고리즘
- JDBC
- springdatajpa
- Thymeleaf
- pointcut
- 스프링 핵심 원리
- 인프런
- 자바
- 그리디
- QueryDSL
- transaction
- Greedy
- AOP
- Proxy
- 스프링
- SpringBoot
- kotlin
- jpa
- java
- spring
Archives
- Today
- Total
개발자되기 프로젝트
디자인 패턴 본문
1. 디자인 패턴이 생긴 이유
- 소프트웨어를 재사용 할 수 있고, 유연하고, 확장성 있고, 유지보수가 용이하게 만드는 것은.. 어려움..
- 기술, 재능, 노력, 창의성, 직관련 등등등이 필요하지만 경험이 중요
- What is Design Pattern : Christopher Alexander
- Each pattern descripbes a Problem which occurs over and over again in out enviroment,
- and thend describes the core of the solution to that problem,
- in such way that you can use this solution a million times over, without ever doing it the same time twice.
- 성공적인 설계라는 것은 존재함
- GoF(Gang of Four) 네 명의 학자가 기존의 많은 사례와 시스템 등을 분석하여 좋은 설계란 이런 것이다..
라는 23개 패턴을 제안 - 객체 지향 프로그래밍에 적용할 수 있는 예시를 제공
- 디자인 패턴 분류
2. 디자인 패턴은 규직이 아님.
- 언어에 종속적이지 않음
- 프레임 워크 개발에 적용될 수 있음
- 특정 영역에 종속적이지 않고 일반적으로 활용할 수 있음
- 좋은 설계에 대한 제안
3. 그럼에도..?
- 객체 지향을 위한 대자인 패턴은 소프트웨어의 중요한 요소를 향상 시킴
- reuse, flexibility, extensibility, modularity
- 디자인 패턴을 사용하면 소프트웨어 개발의 communication에 도움이 됨
- 좋은 설계는 좋은 소프트웨어나 오픈소스에 대해 학습하거나, 많은 경험과 연습에 의해 훈련될 수 있음.
- 따라서 디자인 패턴을 공부하여 이미 증명된 스킬과 경험을 배울 수 있음
- 높은 결합도를 가지거나 알고리즘 종속성, 객체의 표현이나 구현에 종속적으로 구현된 소프트웨어의
리팩토링을 가능하게함. - 결국 좋은 설계를 유도하여 소프트웨어의 유지보수에 들어가는 비용 절약 가능.
'Java > 디자인 패턴' 카테고리의 다른 글
인스턴스 생성 패턴 - Abstract Factory Pattern (0) | 2021.11.04 |
---|---|
인스턴스 생성 패턴 - Prototype Pattern (0) | 2021.11.04 |
인스턴스 생성 패턴 - Singleton Pattern (0) | 2021.11.04 |
클래스 다이어그램 (0) | 2021.11.04 |
SOLID 원칙 (0) | 2021.11.04 |
Comments