- Junit5, AssertJ 새롭게 알게 된 내용들
- static final 변수는 항상 상수일까?
- List의 copyof()와 of()
- Collection과 Collections의 차이
- 일급 컬렉션
- [자동차 경주 미션] 학습 내용 정리: 단위 테스트, MVC 패턴, 일급 컬렉션 Getter, 검증 로직 위치
- [사다리 타기 미션] 학습 내용 정리: TDD, 제어할 수 없는 부분 테스트, 제네릭 타입 소거, 상수, 매직 넘버 등
- [블랙잭 미션] 페어프로그래밍 단계 학습 내용 정리
- [블랙잭 미션] 피드백 및 코드 리뷰 정리: 함수형 프로그래밍, 객체 의존성, 클래스 초기화 블록, Display Enum 과하지 않을까?
- @SpringBootTest의 RANDOM_PORT 옵션과 RestAssured 함께 사용하기
- @DiritesContext, 알고 쓰자
- 난 레벨 1 동안 어떤 경험들을 했을까?
- 템플릿 엔진과 @RestController
- 영속성 entity 와 domain entity 분리해보기
- @Bean, @Component, 그리고 POJO
- JPQL new 연산은 지양해야 할까? JPQL은 어떻게 동작할까?
- gradle 살펴보기
- 테스트 시 데이터베이스 격리 성능 개선하기 (+ AbstractTestExecutionListener)
- Java Annotation Processor 와 Lombok (feat. AST)
- Intellij Debugger, 어디까지 알고 사용하고 있나요? - 기초편
- Intellij Debugger, 어디까지 알고 사용하고 있나요? - 신기한 기능편
- JVM은 처리하지 않은 예외를 어떻게 처리할까? StackTrace 알고보자
- 팀 로깅 전략 구상기
- NoResourceFoundException 에 대해 알아보자
- Logback MDC로 쉽게 요청 추적하기
- 우아한 스키마 관리를 위한 flyway 도입
- Loki, Promtail, Grafana를 사용한 로그 모니터링 구축
- Spring Actuator, Prometheus, Grafana를 사용한 매트릭 모니터링 구축
- 보내는 사람은 있는데 받는 사람이 없다? 쿠키 내놔 (+CORS)
- 엔진엑스 주요 기능 살펴보기
- Http Status 300 Multiple Choices와 수동 리다이렉션은 언제 사용할까?
- Tomcat의 전체 구조와 역할에 대해 알아보자
- ApplicationContext vs ServletContext
- API 성능 개선하기 1탄 (feat. N + 1과 불필요한 쿼리 개선)
- API 성능 개선하기 2탄 (feat. 검색 전문 인덱스 적용하기)
- Connection Pool과 HikariCP에 대해 알아보자
- Grafana, Prometheus로 TPS 측정 및 시각화하기
- LazyConnectionDataSourceProxy에 대해 알아보자
- 다양한 캐시 전략에 대해 알아보자
Project | Period | Repository | 1단계 PR | 2단계 PR | 3단계 PR | 4단계 PR |
---|---|---|---|---|---|---|
Tomcat 구현하기 | 2024-09-03 ~ 2024-09-13 |
java-http | PR 1, 2 | PR 1, 2 | PR 3 | PR 4 |
@MVC 구현하기 |
2024-09-16 ~ 2024-10-01 |
java-mvc | PR 2 | PR 2 | PR 3 | - |
JDBC 라이브러리 구현하기 | 2024-10-03 ~ 2024-10-14 |
java-jdbc | PR 1 | PR 2 | PR 3 | PR 4 |
DB 복제와 캐시 | 2024-10-15 ~ 2024-11-01 |
java-coupon | PR 1 | PR 2 | - | - |
Project | Period | Repository | Link | Wiki |
---|---|---|---|---|
코드잽: 코드 템플릿, Zap싸게 저장하고! Zap싸게 공유하자! | 2024-07-02 ~ |
Repository | code-zap.com | 팀 위키 |
Project | Period | Writing | PR |
---|---|---|---|
레벨 3 글쓰기 미션 | 2024-08-01 ~ 2024-08-19 |
나만의 정답에서 우리팀의 정답으로 | PR |
Project | Period | Repository | 1단계 PR | 2단계 PR |
---|---|---|---|---|
방탈출 예약 관리 | 2024-04-16 ~ 2024-04-29 |
spring-roomescape-admin | PR 1 | PR 2 |
방탈출 사용자 예약 | 2024-04-30 ~ 2024-05-06 |
spring-roomescape-member | PR 1 | PR 2 |
방탈출 예약 대기 | 2024-05-14 ~ 2024-05-27 |
spring-roomescape-waiting | PR 1 | PR 2 |
방탈출 결제 / 배포 | 2024-05-28 ~ 2024-06-10 |
spring-roomescape-payment | PR 1 | PR 2 |
Project | Period | Writing | PR |
---|---|---|---|
레벨 2 글쓰기 미션 | 2024-05-22 ~ 2024-06-12 |
정답은 없다? | PR |
Project | Period | Repository | 1단계 PR | 2단계 PR |
---|---|---|---|---|
자동차 경주 - 단위 테스트 | 2024-02-13 ~ 2024-02-19 |
java-racingcar | PR 1 | PR 2 |
사다리 타기 - TDD | 2024-02-20 ~ 2024-03-04 |
java-ladder | PR 1 | PR 2 |
블랙잭 - Clean Code | 2024-03-05 ~ 2024-03-18 |
java-blackjack | PR 1 | PR 2 |
체스 - OOP, DB | 2024-03-19 ~ 2024-04-01 |
java-chess | PR 1 | PR 2 |
Project | Period | Writing | PR |
---|---|---|---|
레벨 1 글쓰기 미션 | 2024-03-02 ~ 2024-03-31 |
우테코에 오고 싶었던 이유와 한 달 생활기 | PR |