일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- docker compose mysql
- cassandra
- KAFKA
- docker
- WebLogic
- docker-compose
- Hibernate
- MySQL
- JPA
- argo cd
- Selenium
- mybatis
- RabbitMQ
- QueryDSL
- spring boot redis
- weblogic 10
- ChannelPipeline
- Spring Open Feign
- spring cloud
- Docker Compose
- spring boot
- jmeter
- grafana
- Netty
- redis
- coalesce
- vue.js
- Airflow
- Redis Sentinel
- netflix oss
- Today
- Total
목록분류 전체보기 (404)
IT.FARMER
어텝터(adapter) 어뎁터패턴이란? 어뎁터페턴은 우리가 일상생활에서 사용하는 어뎁터와 비슷하다. 호환이 되지 않는 부분을 어뎁터를 통해 호환가능하게 만들어 주는것이다. 헤더퍼스트에서는 어댑터패턴을 이렇게 정의하고 있다. 한 클래스의 인터페이스를 클라이언트에서 사용하고자 하는 다른 인터페이스로 변환합니다. 어뎁터를 이용하면 인터페이스 호환성 문제 때문에 같이 쓸 수 없는 클래스들을 연결해서 사용할 수 있다. 말이 조금 어려운데 조금 쉽게 설명하자면 이럴 것 같다. 원래 사용 중인 인터페이스와 라이브러리가 있는데, 새로운 곳에서 사용하기 위해서는 지금의 라이브러리로는 사용하기 어렵다. 이때 어뎁터패턴을 이용하여 기존 기능을 최대한 살리면서 기능을 제공하는 것이다. 즉 코드의 재사용성을 높이는 의도로 볼 ..
프록시 패턴(proxy) 프록시패턴이란 ? 특정 객체에 대한 접근을 제어하거나 기능을 추가 할 수 있는 패턴이다. 초기화지연, 접근제어, 로깅, 캐싱 등에서 다양하게 응용하여 사용 할 수 있다. Proxy Pattern 은 우리가 알고있는것 처럼 구조에 대한 패턴중 하나이다. 기본 기능을 가지고 있는 어떠한 Subject 가 있다고 하면 우린 이것에 직접 손을 대지 않고 Proxy class 통해 앞서 이야기한 초기화지연, 접근제어, 로깅등등의 기능을 구현한다. 그림으로 보면 다음과 같다. 클라이언트에서는 Subject 인터페이스를 참조하고 실제 구현은 RealSubject 클레스에 구현되어 있다. RealSubject 에 구현된 기능을 사용할때 접근제어, 로깅, 캐싱들을 이용하고자 할경우 Proxy C..
책임연쇠(chain-of-responsibility pattern) 행동패턴중 하나인 책임연쇠패턴이다 근데 어찌보면 우리가 자주사용하는 Spring MVC 의 (혹은 이전 struts ) ServletFilter 처럼 느껴진다. 근데 이건 J2EE 기반기술에 적용된 패턴으로 응답 전,후의 어떤 작업을 할때 사용 할 수 있는것으로(구조패턴중 하나임) 책임연쇠 패턴(행위패턴)과는 다른 의미로 사용된다. 여기서 말한 필터 패턴(Intercepting filter pattern)은, 아키텍처 패던중 하나인 파이프 필터패턴 (pipe-filter pattern)이랑은 다른 내용이다 어째튼 책임연쇠패턴이 뭔지 한번 알아보자. 책임연쇠패턴이란 ? 핸들러의 체인을 따라 요청을 전달할 수 있게 해주는 행동 디자인 패턴이..
추상 팩토리 (abstract factory Pattern ) 추상 팩토리 패턴은 객체 생성시 구체적인 특정클레스에 의존하지 않고 추상화된 객체를 의존함으로 결합도를 낮춰주고 기존 코드를 수정하지 않고(최소한의 수정으로) 상황에 따라 필요한 객체를 생성하여 사용 할 수 있다. 특징 새로운 모듈이나 기능이 추가되었을대 기존에 작성하였던 코드를 손대거나 수정하지 않고 추상팩토리로 상속받아 모듈을 구현함으로 새로운 기능을 추가할수있다. 추상화한 객체를 의존함으로 결합도가 높은 클레스의 결합도를 낮춰주고 느슨하게 만들어 준다. 추상팩토리패턴은 메서드팩토리패턴과 전혀 성격이 다르다. 또한 추상팩토리 패턴이 메소드팩토리 패턴보다 상위기념이거나 호환할수있는 개념이 아니라는것을 알아두고 가자 팩토리 메소드 패턴 인스턴..
팩토리 메소드 패턴(Factory method pattern / Factory pattern) 생성패턴에 속한 팩토리 메소드패턴(Factory Method pattern)은 보통 팩토리 패턴(Factory Pattern )으로도 알려져 있다. 여러 가지 샘플과 개념들이 많다보니 조금 햇갈릴수있는데 여기서 개념을 확실하게 하고 가야한다. 성패턴에 속한 팩토리 패턴엔 3가지가 있다. 심플팩토리 패턴 - 인스턴스화 로직을 클라이온트에 노출시키지 않고 객체를 장성하고 공통인터페이스를 통해 새로 작성된 객체를 참조한다. 팩토리메서드 패턴 - 오브젝트를 생성하기위한 인터페이스를 정의하지만 서브클레스에서 인스턴스화 시킬 클래스를 결정하고 공통인터페이스를 통해 새로 만들어진 오브젝트를 참조하도록 한다. 추상팩토리 패턴..
템플릿 메소드 (Template Method Pattern) 소프트웨어 공학에서 동작상의 알고리즘의 뼈대를 정의하는 디자인패턴이다. 알고리즘의 구조를 변경하지 않고 특정 단계들을 다시 정의 할 수 있게 해준다. - 위키 템플릿 메소드 패턴은 슈퍼클래스에서 처리의 흐름을 제어하며 서브 클래스에서 그 처리의 구체적인 기능을 구현하는 패턴이다. 여러개의 서브클래스에서 공통으로 사용하는 기능은 수퍼클레스에서 구현하고 다른 기능들은 서브클레스에서 구현한다. 전체적인 알고리즘의 구조(작업 플로어가 동일함)는 같으나 세부적인 내용이달라 각 서브클래스마다 다르게 구현해야 할때 사용한다. 예시 (1) : 케릭터 생성 및 최초 듀토리얼 진행 게임케릭터 생성후 최초 튜토리얼 진행시 같은 패턴으로 진행되나 보상받는 아이템이 ..
디자인 패턴은 여러 분류로 그룹화 되어 있으며, 크게 3세가지로 나뉜다. 보통 우리가 알고 있거나 자주 이야기 되는 패턴은 생성패턴, 구조패턴, 행동패턴이며, 그외에도 동시실행 패턴도 있다. UML과 같은 일종의 설계 기법 및 설계방법이며, 소프트웨어 엔지니어링에서 디자인패턴은 소프트웨어 디자인시에 일반적으로 발생되는 문제이대한 일반적인 해결책이다. 디자인 패턴으로 코드를 직접 변환하거나 디자인한다고 해서 해결되는 것은 아니며, 이를 해결하기 위한 설명 혹은 템플릿 이라 생각하면 된다. 사용하는(패턴 화된) 이유 ? 다른 사람이 작성한코드를 보고 이해하는건 쉽지 않다. 이해되지 않는 코드드를 수정하거나 새로운 기능을 추가할때는 의도치 않은 결과나 버그가 발생되곤 한다. 디자인 패턴을 사용하한다면 이는 위..
동기화, 비동기화 & 블로킹/논블로킹을 이야기하다보면 아직도 많이 혼란스럽다. 최근에는 reactive 프로그래밍이라고 하여 프론트에서는 동기/비동기화 관련 글들이 많고 서버에서도 블로킹/논블로킹관련 reactive(리액티브) 글들이 많다. UI에서는 대표적으로 Vue.js 나 React.Js 를 꼽을수있고, 서버쪽에서는. RxJava(RetiveX), Spring Reactor(https://projectreactor.io/) 를 들을수있다. 간단하게 설명하면 Reactive X는 넷플릭스에서 공개한 오픈소스라이브러리 이고, Reactor는 Spring 오픈소팀이 만든 프레임워크 이다. 참고) Advanced Reactive Java 그럼 우리가 흔히 알고있는 async 및 sync 에 대하 먼저 알아..
참신기하다. 분명히 책을 책장에 잘 꽂아 두었다고 생각했는데, 막상 다시 책을 보려고 하면 그책이 없다. 한권으로 되어있는 소설책들은 모두 있는데 이상하게도 여러권으로 되어있는 소설책은 꼭 몇권이 비어있다. 책을 갔다 버리는것도 아닌데도 말이다. 아니면 이사할때 책이 사라졌나?? 그럴리는 없겠지 ㅋㅋㅋ 그나저나 안나카레리나라는 책은 분명히 몇달전에 봤던 책인데 1권이 어디로 사라졌는지 전혀 알 수가 없다. 어디로 갔느냐 나의 책들아~~~ 아이작 아시모프의 파운데이션도 읽다가 말았는데, 집에 보니 2권, 7권만 있다. 나머지 몇권은 본가이있는거 같은데. 도대체 1권은 어디로 사라진걸까 ??