Study 4

대체키 사용하기

Fastcampus의 The Red 강의 중 The RED : 비즈니스 성공을 위한 Java/Spring 기반 서비스 개발과 MSA 구축 by 이희창 수업을 들으며 대체키와 관련된 내역을 들었고 이것은 나중에 어디서나 사용할 수 있는 지식이다!라고 생각이 들어 호다닥 정리하기로 결심했다. 최근 너무 강의에 대한 피드백 글만 올리는 것 같기도 하고... 식별자와 PK DDD의 Entity 개념에서 고유한 식별자는 중요 개념 중 하나 Entity는 자신의 생명주기동안 형태와 내용이 급격하게 변경될 수 있지만 그 엔티티의 성질은 연속적으로 유지되어야 한다. 객체 A의 속성은 서비스 로직이 진행되면서 값이 변경될 수 있지만 객체 A라는 것은 변하지 않고 지속되어야 한다. (도메인 주도 설계의 p93 참고) 위와..

Study 2023.03.15

코드 구현을 하기 전에 해야할 것

Fastcampus의 The Red 강의 중 The RED : 비즈니스 성공을 위한 Java/Spring 기반 서비스 개발과 MSA 구축 by 이희창 수업을 들으며 개발을 하기 전에 고려해야 할 사항들에 대해 배웠고 이를 잊어버리지 않고 체화하기 위해 다음과 같이 정리하였다. 개발 디자인 문서르 작성한 후 구현 개발을 시작하기 전에 개발 디자인 문서를 작성하고 동료와 공유를 권장 서비스 구현에 대한 목표와 설계, 제약 사항 등을 미리 생각해 본 후에 개발을 시작 큰 시행착오 없이 원하는 구현을 진행할 수 있음 개발 디자인 문서를 작성한 후에 이를 동료와 리뷰하는 과정을 거치면, 좀 더 좋은 디자인과 방향성을 잡을 수 있다. 서비스의 인수인계 과정에서도 코드와 함께 개발 디자인 문서를 전달한다면, 넘겨받는..

Study 2023.03.15

MSA와 DDD

1. MSA? Microservice Architecture 비즈니스 도메인을 중심으로 서비스를 모델링하고 구현하는 아키텍처 스타일 도메인 서비스 간의 통신은 네트워크 기반의 HTTP API 또는 비동기 메시징 방식 등으로 이루어짐 각 도메인 서비스는 자체 DB를 가짐 (반)Monolithic 하나의 프로젝트 구조 안에서 모든 도메인을 구현하는 방식 MSA 전환을 고려해야 하는 시점 생존을 걱정하던 초기 스타트업에서 벗어나 비즈니스 규모가 어느 정도 궤도에 오르는 시점 Monolithic 구조의 장점보다 단점이 부각되는 시점 하나의 Repository에 코드 베이스가 개개인이 감당할 수 없는 수준으로 커짐 이에 따라 코드 파악과 유지보수가 어려워짐 구현과 테스트, 배포의 속도가 점점 느려지고 정기 배포라..

Study 2023.03.13

[Roadmap.sh Devops Study Week1] Language

Week1. DevOps RoadMap Language ref. https://roadmap.sh/devops Subtitle 1. Programming Language Main Language : [JAVA] 1. 언어의 개발 배경 및 특이사항 처음 개발 목적은 가전제품 내에 탑재해 동작하는 프로그램을 만들기 위해 개발 타 컴파일 언어와 구분되는 가장 큰 특징 : 컴파일된 코드가 플랫폼 독립적이다. 자바 컴파일러는 자바 언어로 작성된 프로그램을 바이트코드라는 특수한 바이너리 형태로 변환 바이트 코드를 실행하기 위해 JVM(Java Virtual Machine)이라는 특수한 가상 머신 필요 JVM은 자바 바이트 코드를 어느 플랫폼에서나 동일한 형태로 실행 자바 프로그램은 CPU나 운영체의 종류에 관계없이..

Study 2023.03.13