전체 글 22

이펙티브 자바 톺아보기 - 아이템 1

📖📌3줄 요약생성자 대신 정적 팩터리 메서드를 고려하라정적 팩터리 메서드를 작성하는 시점에는 반환할 객체의 클래스가 존재하지 않아도 된다HashMap과 EnumMap의 차이, HashSet과 EnumSet의 차이Index아이템 1. 생성자 대신 정적 팩터리 메서드를 고려하라핵심 정리장점단점완벽 공략완벽 공략 1. 열거 타입EnumerationHashMap vs EnumMapHashSet vs EnumSet완벽 공략 2. 플라이웨이트 패턴Flyweight (가벼운 체급)완벽 공략 3. 인터페이스에 정적 메소드자바 8과 9에서 주요 인터페이스의 변화완벽 공략 4. 서비스 제공자 프레임워크확장 가능한 애플리케이션을 만드는 방법완벽 공략 5. 리플렉션reflection아이템 1. 생성자 대신 정적 팩터리 메서드..

Java 2022.08.13

인덱스(Index) 알아보기

📖📌3줄 요약인덱스는 쉽게 말해 책의 목차와 같다.우리가 신경써야할 곳은 수평적 탐색이다.MySQL의 실행계획을 통해 인덱스 튜닝을 해보자.Index인덱스(Index)란?인덱스 종류DB가 데이터를 읽어오는 방법시퀀셜 엑세스랜덤 엑세스인덱스의 탐색 과정수직적 탐색수평적 탐색인덱스를 튜닝해보자실행계획 살펴보기그래서 어떻게 하는게 좋은 튜닝인가요?정리인덱스(Index)란?💡인덱스는 쉽게 말해 책의 목차와 같다.매우 매우 두꺼운 책에 목차 페이지가 없다면 어떨까요?책 안에 내용을 찾을 때 여러분은 어디를 살펴보시나요?우리들은 항상 무언가를 찾을 때 주소, 목차를 보고 찾습니다. DB Index도 똑같습니다.데이터베이스는 많은 데이터를 관리해주는 매우 중요한 기술입니다.그런 많은 데이터 안에서 찾고 싶은 내용을 ..

Database 2022.07.04

마이크로서비스 아키텍처(MSA) 알아보기

🛠📌 3줄 요약MSA는 은탄환이 아니다.마지막 수단이 MSA일 때 도입해야 가장 이상적이다.많은 시행착오를 겪은 선배 개발자 분들에게 감사함을 전합니다.IndexMSA란 무엇인가?그래서 이게 왜 그렇게 핫한데?MSA는 은탄환인가?MSA의 진실MSA 장/단점성공적인 MSA 사례 - 우아한형제들모놀리스 환경의 치킨 디도스마이크로서비스로 도달하기 위한 첫걸음이벤트 전파와 동기화안정단계마무리MSA란 무엇인가?MSA는 마이크로 서비스 아키텍쳐의 줄임말입니다.그렇다면 사전적 정의는 무엇일까?세계에서 유명한 기업인 aws에서 내린 정의를 살펴보자.마이크로서비스는 소프트웨어가 잘 정의된 API를 통해 통신하는 소규모의 독립적인 서비스로 구성되어 있는 경우의 소프트웨어 개발을 위한 아키텍처 및 조직적 접근 방식입니다. ..

Architecture 2022.07.02

@Builder를 추가했더니 잭슨에서 에러가?

💣📌@RequestBody 에서 DTO 변환시 기본생성자를 필요로한다.일반적인 경우 기본생성자를 사용한다. (리플렉션 통해 생성되기 때문에 Private 가능)@JsonProperty 를 사용하는 프로퍼티 기반 객체는 필요없다.롬복의 @Builder는 기본생성자를 생성해주지 않는다.Index문제 발생생성자가 존재하는데, 왜?그렇다면 에러로그에 있던 no delegate- or property-based 는 뭐지?정리문제 발생한가로운 오후 개발환경에 api 응답 에러가 난다고 문의가 들어왔습니다.ES에 에러 로그를 확인해보니 이러한 에러 로그가.. 줄줄..(실제 환경을 포스팅할 수 없어 예제 코드를 작성하여 에러를 유도함)Resolved [org.springframework.http.converter.Ht..

Spring 2022.06.29

개발자 글쓰기 - 오레오(OREO) 공식

✍️📌 3줄 요약두괄식 표현으로 가장 전하고 싶은 말을 항상 서두에 작성한다.O(주장) → R(근거) → E(사례) → O(주장, 제안) 순으로 작성한다.글쓰기를 잘해야 말을 잘할 수 있다.Index글쓰기에도 패턴이 있다.오레오(OREO) 공식이란?오레오 공식으로 글쓰기잘 읽히는 글사람과의 대화는 글쓰기의 심화버전이다.글쓰기에도 패턴이 있다.150년 하버드 글쓰기 비법을 읽고 내용을 정리하며 가장 핵심적인 글쓰기 패턴에 대해 정리해볼까 한다.우리는 평소에 무수히 많은 블로그들을 탐방하곤한다.그 중 나는 무슨 글을 읽었을까? 검색기록을 뒤져 다시 재방문해보았다.한번 읽었던 글이라 아는 내용일 줄 알았지만, 처음보는 것 같이 생소한 글들이 대부분이었다.반면에 다시 읽었을 때 기억에 남는 글들이 분명 존재했다..

칼럼 2022.06.28

N2T 테스트 페이지

헤더1헤더2헤더3 점리스트1점리스트2점리스트3 cascaded list리스트1리스트a리스트b숫자숫자숫자숫자숫자 체크 체크 체크 숫자리스트1숫자리스트2숫자리스트3 체크리스트1 체크리스트2 체크리스트3 토글열기토글내용 인용문구입니다. 구분선입니다. 콜아웃📌콜아웃1🎒콜아웃2 여러줄인 경우는 이렇게 나옵니다. 공식E=mc2E=mc^2E=mc2테이블colcol2row1val1row2val2 Lorem Ipsum (굵기, italic, 컬러, 백그라운드 컬러, 코드조각)대법원에 대법관을 둔다. 다만, 법률이 정하는 바에 의하여 대법관이 아닌 법관을 둘 수 있다. 국가는 대외무역을 육성하며, 이를 규제·조정할 수 있다. 모든 국민은 언론·출판의 자유와 집회·결사의 자유를 가진다. 대통령은 헌법과 법률이 정하는 바에..

Etc. 2022.06.28

Spring에서 DDD(Domain Driven Design)

1. 4계층 - Presentation - Application - Domain - Infrastructure 2. SOLID의 DIP 도메인 주도 설계로 소프트웨어 만들기. 최범균님의 Domain Driven Design 입문 강의 후기 | by Joonghyeon Kim | How we build MyRealTrip | Medium 도메인 주도 설계로 소프트웨어 만들기 최범균님의 Domain Driven Design 입문 강의 후기 medium.com DDD. DIP 의존 역전 원칙 (wedul.site) DDD. DIP 의존 역전 원칙 서비스가 특정 시스템에 의존성을 가지게 되면 서비스 자체만으로 테스트 수행이 어렵고 종속되는 시스템에 따라 서비스의 코드가 지속적으로 변경될 여지가 있다. 이를 해결..

Tip. 2020.12.01