일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 세그먼트 트리
- series
- 포트앤어댑터 아키텍처
- UML
- 자바
- pandas
- 다익스트라
- ddd
- dfs
- docker
- 데이터 flow
- spring security
- 비트마스크
- BFS
- DP
- springboot
- Redis
- 백준
- 이펙티브 자바
- JPA
- java
- 알고리즘
- 문자열
- 스프링
- equals
- disjoint set
- 헥사고날 아키텍처
- 파이썬
- 위상정렬
- dataframe
- Today
- Total
목록전체 글 (95)
코딩못하는사람
들어가며 사내에서 진행하는 새로운 프로젝트를 진행하였는데요, '새롭게 발생하는 요구사항에 빠르게 대응하기 위해 확장성 있게 설계하자'는 목표가 있었습니다. 따라서 목표에 맞게 팀 스터디 때 리서치했던 "헥사고날 아키텍처"를 적용해보는 경험을 해보았고, 아키텍처에 관해 리서치한 부분 간단하게 정리해보았습니다. 헥사고날 아키텍처란? - 사전적 의미로는 ”육각형 건축물”을 의미합니다. - 소프트웨어 설계에 사용되는 아키텍처 패턴중 하나로 여러 소프트웨어 환경에 쉽게 연결할 수 있도록, 느슨하게 결합된 애플리케이션 구성요소를 만드는 것을 목표로 하는 아키텍처입니다. - 도메인의 비즈니스 로직을 외부 라이브러리 및 툴로부터 분리 할 때 포트와 어댑터라고 부르는 인터페이스를 사용하기 때문에 포트&어댑터 아키텍처라고..
Lec 05 코틀린에서 조건문을 다루는 방법 1. if문 Java에서 if-else는 Statement이지만, Kotlin에서는 Expression입니다 Statement : 프로그램의 문장, 하나의 값으로 도출되지 않는다 Expression : 하나의 값으로 도출되는 문장 statement중에 하나의 값으로 도출되는 문장들이 Expression (포함관계) int score = 30 + 40; -> Expression이면서 statement String grade = if 문 ~~~~ 에러 -> if 문을 하나의 값으로 취급하지 않기 때문에 (statement) 자바에서는 이러한 경우를 위해 삼항연산자를 제공 Experssion이면서 statement 코틀린에서는 Experssion으로 취급한다. 따라..
var vs val 가변 불변 발 밸 타입 선언이 필수가아님 변수: 타입 모든변수는 val로 만들고 필요시에 var로 변경하자. 명시적으로 타입을 작성하지 않아도 추론해준다. (지금까지 팩킹 언팩킹에 대해서 생각을 안하고있었구나 내가.) 코틀린에서 primitive type 코틀린에서 Long과 long이 Long으로 같이 묶이지만, 상황마다 다르게 내부적으로는 primitive 타입으로 작동하게 한다. 숫자, 불리언, 문자에 대해서는 primitive타입을 알아서 사용해준다. 프로그래머가 boxing, unboxing을 신경쓰지 않도록 해준다. nullable은? 코틀린에서는 null이 들어갈 수 있는 변수를 다르게 처리한다. null이 들어갈 수 있다면, 타입?를 사용하면 됨 -> Long? 객체 인..
1.도메인 모델과 경계 도메인을 완벽하게 표현하는 단일 모델을 만드려는 실수 -> 오히려 모든 하위 도메인에 맞지 않는 모델을 만들게 된다. 회원 도메인은 회원이 될수있고 주문자가 될수있고 보내는사람이 될수있는 예시. 섞이기 시작하면 모델의 의미가 약해지기 때문에 요구사항 반영이 어려워진다. 명시적으로 구분되는 경계를 가져서 섞이지 않도록 해야 한다. 모델은 특정 컨텍스트하에서 완전한 의미를 갖는다.구분되는 경계를 갖는 컨텍스트를 DDD에서는 바운디드 컨텍스트라고 부른다. 2. 바운디드 컨텍스트 바운디드 컨텍스트는 모델의 경계를 결정, 한개의 바운디드 컨텍스트는 한개의 모델을 갖음. 용어를 기준으로 구분. BD는 실제로 기능을 제공하는 물리 시스템, 도메인 모델은 바운디드 컨텍스트 안에서 도메인 구현. ..