서론 사람들은 한 번에 해결하기 어려운 커다란 문제를 맞닥뜨릴 경우 이 문제를 해결 가능한 작은 문제로 나누는 경향이 있다고 합니다. 이렇게 나눠진 문제들 역시 한 번에 해결하기 어렵다면 또다시 더 작은 문제로 나눌 수 있습니다. 이처럼 큰 문제를 해결 가능한 작은 문제로 나누는 작업을 분해라고 합니다. 프로시저 추상화와 데이터 추상화 프로그래밍 언어를 통해 표현되는 추상화의 발전은 다양한 프로그래밍 패러다임의 탄생으로 발전했는데 프로그래밍 패러다임은 프로그래밍을 구성하기 위해 사용하는 추상화의 종류와 이 추상화를 이용해 소프트웨어를 분해하는 방법의 두 가지 요소로 결정됩니다. 프로그래밍 패러다임이란 적절한 추상화의 윤곽을 따라 시스템을 어떤 식으로 나눌것인지를 결정하는 원칙과 방법의 집합입니다. 여기에..
서론 훌륭한 객체지향 코드를 얻기 위해서는 클래스가 아닌 객체에 초점을 맞춰야 합니다. 또한 객체에 초점을 맞추되 협력 안에서 수행하는 객체의 책임에 초점을 맞추어야 합니다. 객체지향에서 가장 중요한 것은 객체들 간에 주고받는 메시지입니다. 객체들은 메시지 전송자로부터 메시지를 수신하기 위해 퍼블릭 인터페이스를 구성하고 있습니다. 협력과 메시지 💡 클라이언트-서버 모델 협력은 어떤 객체가 다른 객체에게 무언가를 요청할 때 시작됩니다. 메시지는 객체 간의 협력을 가능케 하는 매개체입니다. 객체가 다른 객체에게 접근할 수 있는 유일한 방법은 메시지를 통해 접근하는 것입니다. 클라이언트-서버 모델이란? 협력 안에서 메시지를 전송하는 객체를 클라이언트, 메시지를 수신하는 객체를 서버라고 부릅니다. 협력은 클라이..
서론 책임에 초점을 맞춰서 설계할 때의 가장 큰 어려움은 어떤 객체에 어떤 책임을 주어야 하는가?입니다. 이러한 책임 할당 과정은 일련의 트레이드오프의 활동입니다. 책임 주도 설계를 향해 💡 데이터보다 행동을 먼저 결정하라. 객체에게 중요한 것은 데이터가 아닌 협력하는 객체에게 제공하는 행동입니다. 클라이언트의 관점에서 객체가 수행하는 행동은 곧 책임을 의미합니다. 객체는 협력에 참여하기 위해 존재하며 협력안에서 적절한 행동을 수행할 때 비로소 객체는 존재합니다. 데이터는 객체가 책임을 수행할 때 필요로 하는 재료일 뿐입니다. 행동의 관점에서 바라보는 방법 데이터 중심의 설계는 "이 객체가 포함해야 하는 데이터는 무엇인가?"를 결정한 후에 "데이터를 처리하는데 필요한 작업은 무엇인가?"를 결정합니다. 책..
서론 객체지향 설계의 핵심은 책임, 역할, 협력입니다. 협력은 애플리케이션의 기능을 수행하기 위해 다른 객체들과 메시지를 주고받는 상호작용입니다. 책임은 객체가 다른 객체와 협력하기 위해 수행하는 행동이고, 역할은 대체 가능한 책임들의 집합입니다. 객체지향 설계란 올바른 객체에게 올바른 책임을 할당하면서 낮은 결합도와 높은 응집도를 만드는 활동입니다. 객체지향 설계에 관한 관점 두가지 첫째, 객체지향 설계의 핵심은 책임이다. 둘째, 책임을 할당하는 작업은 응집도와 결합도 같은 설계 품질과 연관되어 있다. 결합도와 응집도를 합리적인 수준으로 유지하는 방법 객체의 상태가 아닌 객체의 행동에 초점을 맞춥니다. 객체를 단순한 데이터의 집합으로 바라보는 시각은 객체의 내부 구현을 노출시키는 결과를 초래할 수 있으..
- Total
- Today
- Yesterday
- 트랜잭셔널 아웃박스 패턴 스프링부트
- @ControllerAdvice
- spring boot redisson destributed lock
- spring boot poi excel download
- pipe and filter architecture
- spring boot redis 대기열 구현
- 람다 표현식
- transactional outbox pattern
- spring boot excel download paging
- polling publisher spring boot
- service based architecture
- 공간 기반 아키텍처
- 트랜잭셔널 아웃박스 패턴 스프링 부트 예제
- 레이어드 아키텍처란
- redis 대기열 구현
- space based architecture
- spring boot redisson 분산락 구현
- spring boot 엑셀 다운로드
- 자바 백엔드 개발자 추천 도서
- spring boot redisson sorted set
- java ThreadLocal
- JDK Dynamic Proxy와 CGLIB의 차이
- microkernel architecture
- spring boot excel download oom
- java userThread와 DaemonThread
- redis sorted set으로 대기열 구현
- pipeline architecture
- redis sorted set
- transactional outbox pattern spring boot
- 서비스 기반 아키텍처
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |