
마지막 편입니다.3개월 동안 작업할 때마다 회고를 남겼는데 다 모으니 27개였습니다.그중에서 여러 번 반복해서 걸린 것만 뽑았습니다.반복된 것만 적는 이유는, 한 번 겪은 건 기억나는데 세 번 겪은 건 아직 몸에 안 붙은 것이라서입니다."없다 / 안 된다 / 이미 있다

백엔드 테스트가 827개 / 112개 파일입니다.그런데 이 편에서 하고 싶은 이야기는 개수가 아닙니다.570개가 전부 통과인 상태에서 회원 탈퇴가 계정을 안 지우고 있었습니다.707개가 전부 통과인 상태에서, 방금 고친 걸 지켜주는 테스트가 하나도 없었습니다."전부 통

8월 3일, 서비스가 공개됐습니다.AWS 서버 한 대, Docker Compose, HTTPS 자동 발급.이 편에서 제일 크게 배운 건 한 문장입니다."내 컴퓨터에서 됐다"가 "빈 서버에서도 된다"를 뜻하지 않습니다.그리고 저는 이걸 세 번 연속으로 배웠습니다.정식 출

서버는 AWS의 제일 작은 축인 CPU 2개 / 메모리 2GB짜리 한 대입니다.사용자가 늘면 어디가 먼저 무너지는지 몰랐습니다."느려지면 서버를 키운다"가 아니라 "어디가 문제인지 숫자로 짚고 고친다" 를 해보고 싶었습니다.결과부터 적으면 이렇습니다.그런데 이 글에서

이번 편은 코드입니다. 세 가지를 봅니다.체크인 상태 관리 — 이 앱의 핵심동시성 — 락을 한 번도 안 썼습니다채팅 서버 — 소켓을 "받기 전용"으로 둔 이유용어는 나올 때마다 풀어서 적겠습니다.체크인만 해놓고 5분 만에 나간 걸 "오늘 혼밥한 사람"에 넣으면 안 되니

6월 8일 첫 커밋부터 9월 4일까지 671개 커밋 동안 무슨 일이 있었는지 적습니다. 기능 목록을 나열하기보다 "어디서 막혔고 그래서 뭐가 바뀌었나" 를 기준으로 나눴습니다. 한눈에 — 백엔드 테스트 개수로 본 3개월 기능이 늘면 테스트가 늡니다. 그래서 테

이번 편은 백엔드를 어떻게 짰고 왜 그렇게 골랐는지입니다.모노레포입니다. 저장소 하나 안에 backend/ · app/ · docs/ · etl/ 이 다 있습니다.혼자 하니까 앱과 서버를 같은 커밋에서 바꾸는 일이 많았고, 저장소를 나누면 그때마다 두 곳을 오가야 해서

1편(이번 편은 왜 이걸 만들었고, 무엇을 만들지 않기로 했는지입니다.기능 목록은 누구나 씁니다. 저는 뺀 것을 더 자세히 쓰려고 합니다.그쪽이 3개월 동안 제가 실제로 한 판단에 훨씬 가깝기 때문입니다.1인 가구가 늘고 혼자 지내는 게 자연스러워졌습니다. 그런데 모든

이 시리즈는 그 3개월을 9편으로 나눠 정리한 기록입니다.잘한 것보다 틀렸던 것과 그걸 어떻게 알아냈는지에 지면을 더 썼습니다."혼밥을 정상화하다" 라는 뜻입니다.식당에서 "같이 먹을 사람 구해요"로 체크인하면, 같은 식당·주변에 있는 다른 사람에게 보입니다.누군가 같
자바의 힙 공간은 객체와 JRE 클래스들에게 메모리를 할당할 때 사용 된다.객체가 생성되면 힙 공간에 할당되며, 이 객체에 대한 참조가 스택 메모리에 저장된다.가비지컬렉션은 힙 메모리에 더이상 참조하지 않는 객체들을 정리 한다.힙에 만들어진 객체는 어디서든 접근할 수

마지막으로 회고록을 작성한 후 많은 시간이 지났다. 핑계라고 생각하면 핑계이겠지만, 마지막으로 회고록을 쓴 후, 한동안 이 프로젝트를 하지 못했다. 가장 큰 이유로, 이 프로젝트는 나 혼자 하는 것이 아닌, 여러명이서 함께하는 팀 프로젝트이다. 서버 개발과 페이지

Rest API 생성시 상태코드와 함께 URI location 반환할 때 필요한 클래스들

일대다 단방향 연관관계 일대다 관계는 위에서 봤던 @OneToMany다. 하지만 만약 @OneToMany로 단방향 관계를 맺는다면 어떻게 될까? 다시 말해 @OneToMany 어노테이션이 있는 필드에 @JoinColumn을 아래 코드처럼 건다면 어떻게 될까? 해당

가장 먼저 JPA를 쓰는 이유부터 알아야 한다. 현재 우리는 SQL Mapper나 ORM 기술들을 이용하여, DB와 연결하여 사용하고 있다. 이중 JPA는 자바 진영의 ORM 기술 표준으로, 과거 JDBC API를 사용해 매핑을 해주던 것을 보다 간결하게 만들어주는 프레임워크이다. 뭐 이전보다 SQL문을 덜 쓴다는 것에 대해 장점을 가져서 JPA를 사...