본문 바로가기

분류 전체보기73

[도메인 주도 설계 핵심] 1장: 나에게 도메인 주도 설계는 사실이 아니라 공부한 내용과 생각을 정리한 글입니다. 언제든 가르침을 주신다면 감사하겠습니다. http://www.yes24.com/Product/Goods/48577718 도메인 주도 설계 핵심 - YES24 도메인 주도 설계(DDD)를 프로젝트에 적용하고자 하는 개발자, 소프트웨어 아키텍트 또는 관리자가?DDD를 빠르게 배우고 적용할 수 있게 도와준다.?뿐만 아니라?좋은 소프트웨어를 만들기 위해 꼭 www.yes24.com DDD가 우리에게 상처를 줄까? DDD 가 복잡한 게 아니라 우리가 해결해야 하는 문제가 복잡한 것이다 DDD는 복잡한 문제를 해결하기 위한 수준 높은 도구들의 모음이다 좋은, 나쁜 그리고 효과적인 설계 설계는 필연적이다. 좋은 설계의 대안은 나쁜설계이다. 절대 설계하지 않는 것이.. 2023. 1. 14.
[kotlin-tip] kotlin 에서 jpa entity 작성하기 사실이 아니라 공부한 내용과 생각을 정리한 글입니다. 언제든 가르침을 주신다면 감사하겠습니다. kotlin 은 간결하고 안전한 언어이다. 간결한 코드 작성을 위해 필드와 게터, 세터를 한 번에 표현할 수 있는 프로퍼티라는 개념을 도입했고 생성자 작성 시 프로퍼티까지 한 번에 작성할 수 있는 문법도 지원한다. 또한 data class를 사용하면 기존 자바에서 관용적으로 작성하던 여러 부가 메서드를 자동으로 생성한다. 안전한 코드 작성을 위해 불변 타입을 선호하고, null 허용 타입과 null 불가 타입을 분리했으며 null 허용 타입의 경우 null check를 효과적으로 수행할 수 있는 여러 도구를 제공한다. 이밖에도 kotlin에서 간결하고 안전한 코드 작성을 위해 지원하는 기능은 많고, 이를 언어 .. 2023. 1. 12.
비동기 & 논블러킹 의미 분석 사실이 아니라 공부한 내용과 생각을 정리한 글입니다. 언제든 가르침을 주신다면 감사하겠습니다. 1. 동기와 비동기 코드적으로 접근해야 하는 개념 특정 코드 블락이 다른 코드 블락의 완료 여부에 의존해서 실행될 때 동기적으로 실행된다고 표현 비동기를 구현하는 가장 흔한 방법으로, 특정 코드 블락이 실행되는 동안 다른 코드 블락을 실행하기 위해 별도의 스레드를 할당하여 두 코드 블락이 독립적으로 수행되도록 함 또는 call-back 을 사용 한계 외부 API 호출이나 DB 접근을 비 동기적으로 수행한다고 해 보자 별도의 스레드를 할당해 해당 작업을 수행하면 원래 작업을 하던 스레드는 블러킹 되지 않는다. 하지만, 별도로 할당한 스레드는 블러킹 되고 있다. 2. 논블러킹 스레드적으로 접근해야 하는 개념 스레드.. 2022. 8. 11.
[java] 내부 클래스(static vs non-static) 사실이 아니라 공부한 내용과 생각을 정리한 글입니다. 언제든 가르침을 주신다면 감사하겠습니다. 특정 클래스 속에 있는 클래스를 내부 클래스라고 부른다. 내부 클래스는 static으로 만들 수도 있고 non-static으로 만들 수도 있는데 이 차이에 대해 정확하게 알고 싶어서 공부하게 되었다. 다음과 같은 code 가 있다고 하자. package extra.static_code; public class OuterClassFactory { class InnerClass { private String val; InnerClass(String val){ this.val = val; } } static class StaticInnerClass { private String val; StaticInnerClass.. 2022. 6. 18.