🚀 스터디 규칙
- 각 요일별(월~금) 발제자는
자정 0시 이전오늘의 주제를 발제한다. 주제 발제 가이드 - 발제자를 포함한 모든 스터디원은 당일
23시 59분 이전에 해당 주제에 대한 답변을 작성한다. 주제 답변 가이드 - 모든 스터디원은 본인 발제 주제를 제외한 주 최소 4개의 주제에 대해 답변을 작성해야 하며, 각 주제에 대해서는 반드시 당일
23시 59분 이내에 작성한다.
📚 스터디 방향성
- 이상적인 학습 시간은 30분이며, 개인의 선호에 따라 학습 시간을 자유롭게 조정할 수 있다.
- 주제에 대한 코멘트 작성 방향은 면접 대비 및 학습 정리에 초점을 둔다.
💰 벌금
- 토요일 0시 기준, 본인 발제 주제를 제외한 4개의 주제에 대해 당일 코멘트를 달지 않은 경우, 코멘트 1개당
벌금 10,000원 - 주제 발제일 당일에 작성하지 않은 경우, 코멘트 1개당
벌금 5,000원
Update: Discussions #60까지 반영
- OOP관점에서 객체의 생성과 사용을 분리해야하는 이유?
- 타입 계층 목적 상속의 조건과, 조건을 지키지 않았을 때의 문제점
- 일급 컬렉션이 무엇이고 왜 사용하는지?
- 도메인 객체와 DB 엔티티를 분리해야 하는 상황은 언제일까요?
- 계층은 무엇을 기준으로 나눠야 할까요?
- Spring Security는 어느 계층의 관심사일까요?
- 객체 참조 vs ID 참조
- instanceof를 지양하는 이유는 무엇인가
- 데코레이터 패턴은 무엇이고, 언제 사용하면 좋을까요?
- final과 abstract를 이용하여 클래스를 구현하는 이유
- 타입 안정성은 무엇이며 왜 중요할까요?
- synchronized의 동시성 보장 방법
- Reflection은 무엇인가요?
- Record 클래스와 명시적 타이핑
- JVM 메모리 구조에 대해 설명해주세요
- 추상 클래스 vs 인터페이스
- 표준 예외와 커스텀 예외에 대해서 설명해주세요
- 가비지 컬렉션이란?
- 동등성과 동일성
- synchronized vs volatile vs Atomic 차이
- DTO에 Builder를 사용하는 기준은 무엇이어야 할까요?
- 객체를 Thread-safe하게 설계하는 방법
- 트랜잭션의 격리 수준은 왜 중요할까
- @Transactional 사용여부에 따른 동작 원리
- B-Tree와 B+Tree란?
- DB 인덱스란 무엇인가요?
- 트랜잭션 락의 종류
- 데이터베이스가 데드락을 감지하고 처리하는 방식
- 데이터 접근 기술 선택
- 존재하지 않는 리소스의 DELETE 요청에 대한, 상태값은 204와 404 중 무엇이 적절할까요?
- DNS에 대해 설명해주세요
- 멱등성과 재시도
- 타임아웃 이후 재시도를 멱등하게 만들어야 하는 이유
- JDBC에서 INSERT시 생성된 id를 처리하는 방식
- 검증, 판단시 - 쿼리 사용 vs 조회 후 서비스에서 판단
- DTO는 class + Lombok으로 만들까요, record로 만들까요?
- 외부 API 호출
- 트랜잭셔널 아웃박스 패턴이란?
- @Transactional은 모든 예외를 롤백시키나요?
- Mock의 적용 범위
- 단위 테스트, 슬라이스 테스트, 통합 테스트, 인수 테스트는 무엇인가?
- Service 통합테스트를 작성한다면 Repository 테스트는 필요없을까요?
- 테스트에서는 실제 DB, 인메모리 DB, Mock 중 무엇을 사용해야 할까요?
- 테스트 간 데이터 격리는 어떻게 보장해야 할까요?
- 계층별 테스트 전략
- 동시성 테스트 코드
- 테스트 코드가 왜 필요한지, 어떤 문제를 해결해준다고 생각하시나요?
![]() [월] 카키 |
![]() [화] 마이찬 |
![]() [수] 샤를 |
![]() [목] 송송 |
![]() [금] 모카 |




