profile
여러분의 앤 설리번🧑‍🏫 나도 복잡한 건 이해하기 힘들어

트랜잭션 격리(Isolation) (2)

Read Committed에서 발생하는 문제와 Repeatable Read

2022년 11월 24일
·
0개의 댓글
·

[JPA] 페이지네이션(Pagination)

기초적인 구현 자체는 어렵지 않지만 성능 최적화, REST 등을 고려하기 시작하면 복잡해진다.

2022년 11월 21일
·
0개의 댓글
·

[JPA] 소소하게 알아보는 save() vs saveAll()

saveAll()에서 매번 save()를 호출하기 때문에 구현상 차이는 없음(SimpleJpaRepository.java를 참고함)그러나 분명 성능 차이가 존재엔티티를 100만 개 저장해 보았을 때 걸린 시간save(): 9.738s, 10.196s, 10.449s,

2022년 11월 10일
·
0개의 댓글
·

[TS] 타입 호환성

다음의 글을 재밌게 읽어서 관련 내용을 이해하고 재서술해 보았다. TypeScript 타입 시스템 뜯어보기: 타입 호환성, 김병묵, 토스 기술 블로그 특히, Branding 부분을 보강하고 좀 더 쉽게 풀었다.

2022년 11월 6일
·
0개의 댓글
·

[JS] 옵셔널 체이닝 `?.`

코틀린에도 있는 문법. 그러나 백엔드의 경우, 통제 가능한 영역에서는 최대한 nullable type을 줄이고, 통제가 어려운 데이터는 가능하면 받자마자 처리 후 내부적으로는 non-nullable type으로 다루는 것이 편하다고 생각한다.그래서 지금까지는 사용할 일

2022년 11월 3일
·
0개의 댓글
·

[JPA] 지연 로딩과 Set, List

Set과 List가 지연 로딩일 때 element 추가 시 동작의 차이를 살펴보자

2022년 10월 24일
·
0개의 댓글
·

[광고 도메인] Programmatic advertising

프로그러매틱 광고? DSP? 무엇인지 알아보자.

2022년 10월 16일
·
0개의 댓글
·

[기본기] 얕은 복사 vs 깊은 복사(Shallow copy vs Deep copy)

복사면 복사지 얕은 복사는 뭐고 깊은 복사는 또 뭐냐고?

2022년 10월 8일
·
0개의 댓글
·

API spec에 의도를 담아 보자 (Feat. Kotlin)

처음 API를 만들 때는 혼란스러운 것들 투성이었지. spec을 정의할 때 필드 타입을 number로 해야 할지 string으로 해야 할지부터, request body는 depth 없이 나열하는 게 좋을지 아니면 적절히 object로 묶는 게 좋을지, 응답 데이터는 공

2022년 10월 6일
·
0개의 댓글
·

객체 데이터 보호 (Feat. Kotlin)

Q. 왜 객체 내부의 데이터를 보호하는가? A. 객체 내부 데이터에 대한 책임은 온전히 그 객체가 져야 한다. 다시 말해, … Q. 아니 복잡하고 추상적인 건 됐고, 뭐 땜에 그렇게 해야 되냐고?

2022년 9월 29일
·
0개의 댓글
·

테스트부터 작성하는 것과 테스트 각각의 의의 중 하나

일단 테스트와 테스트부터 작성하는 것이 다름을 인지하자.

2022년 9월 27일
·
0개의 댓글
·

[기본기] 포인터, 주소 개념 쉽게 이해하기 (2/2)

포인터가 뭔지 알겠고, *을 붙이면 포인터가 되는 건 알겠어. 근데 int*, char*는 뭔 차이?

2022년 9월 17일
·
0개의 댓글
·

[기본기] HTTP - 멱등성(idempotent), 안전함(safe)

HTTP 메서드 관련해서 멱등성이란 개념이 있어.이해해서 아래 O/X를 맞힐 수 있도록 해 보자. (특히, POST vs PUT)단, 서버에서 올바르게 구현한 경우라고 가정할게. 사실 구현하기에 따라서 POST로 모든 걸 해결해 버릴 수도 있고 그렇잖아?서버로 어떤 요

2022년 9월 11일
·
0개의 댓글
·

[기본기] 포인터, 주소 개념 쉽게 이해하기 (1/2)

포인터 == 변수 // true 이번 시간엔 이거↑ 이해하는 게 목적이야. 변수 포인터가 변수라고 했으니 일단 변수가 무엇인지부터 간략하게 보자. 변수는 어떤 값을 저장해 두는 공간이야. Q. 그럼 포인터에는 무엇을 저장해 두는 걸까? A. 주소. 엥?? 갑자기

2022년 9월 7일
·
0개의 댓글
·

코틀린(Kotlin) - primary constructor

코틀린에서 생성자의 역할이 자바나 C++ 등의 다른 언어에서 생성자의 역할과 다르다고 생각하지는 않아. 근데 나도 처음 봤을 때는 좀 어리둥절했어. 생성자가 뭔지 아는데도 코틀린에서 primary constructor 때문에 헷갈리는 사람은 아마 이 글이 좀 도움될 거

2022년 9월 6일
·
0개의 댓글
·

트랜잭션 격리(Isolation) (1)

격리 수준별로 문제를 이해하고 해결 방법을 알아보자

2022년 8월 11일
·
0개의 댓글
·

[DDD] 애그리거트 루트(Aggregate Root)

애그리거트 루트에 대해 이해해 보자.

2022년 8월 9일
·
0개의 댓글
·

[JPA] 로딩 시 N+1 문제

N은 뭐고 1은 뭐야? 근데 이게 왜 "문제"?

2022년 8월 3일
·
0개의 댓글
·