A collection of useful programming-related links.
- Git
- Java
- Kotlin
- Data Structure
- Spring
- Spring Security
- Clean Code
- GoF Design Pattern
- 소프트웨어 개발 방법론
- Auth
- Http
- JPA
- API
- Test
- Network
- Vue
- Linux
- Database
- 주옥같은 글
- Docker
- MSA
- Architecture
- Computer Science
- 보안
- 기타
- 협업
- Commit messages guide 01
- Commit messages guide 02
- Git Flow
- Github Label 한 번에 적용
- Readme Best Practices
- 13 Pro Git Tips for JetBrains IDEs
- 일급 컬렉션
- Auto Unboxing과 NPE
- Builder Pattern
- Optional 바르게 쓰기
- Java의 메모리 관리
- JVM
- Java 11 변경사항
- Java 8 변경사항
- Thread 동기화 방법
- JVM Garbage Collectors의 종류
- try-with-resources
- Effective Java 핵심 요약
- 우아한형제들 Java Enum 활용기
- InetAddress 클래스로 인해 발생할 수 있는 성능 이슈
- DTO, VO, Entity
- ControllerAdvice
- GenericFilterBean vs OncePerRequestFilter
- Domain Layer에서의 비즈니스 로직 처리
- Exception 전략
- Service, ServiceImpl 구조에 대한 고찰
- 실무에서의 Lombok 사용법
- 도메인 객체 사용 가이드
- DTO의 사용 범위에 대하여
- PSA를 활용한 테스트 가능한 코드 작성법
- Spring Cloud
- Spring MVC 라이프사이클
- Component, Configuration, Bean 차이
- 의존성 주입 방식 3가지
- RestTemplate과 WebClient
- Spring Webflux 5.3.5 공식 레퍼런스 한국어 번역
- Spring Camp 2023
- 우테코 프리코스 피드백 01
- 우테코 프리코스 피드백 02
- Google Java Style Guide
- 디렉토리 구조(계층형, 도메인형)
- 코드의 22가지 악취
- Guard Clause
- Testing and Refactoring Legacy Code
- Java lint 코드정적분석 checkstyle 사용하기
- 자바 애플리케이션의 보안 검수 방법 살펴보기 with spotbugs
- Proxy 패턴의 사용 이유, 구현 및 Spring에서의 사용
- Singleton 패턴의 사용 이유, Thread-safe하게 구현하는 방법
- Spring Framework 디자인 패턴
- 객체지향 설계 원칙
- SAGA 패턴
- DDD, Clean Architecture, Hexagonal Architecture
- 공통 컬럼 상속
- Auditing
- findById vs findAll
- N+1 문제
- 영속성 컨텍스트
- JPQL Update와 영속성 컨텍스트
- 테이블간의 연관 관계
- Transactional reanOnly 사용의 이점
- get vs find
- Fetch Join
- EntityGraph
- QueryDSL
- 일대다 관계에서의 Fetch Join과 페이징 문제
- OSIV
- 우아한 형제들의 Querydsl 사용법
- Test 가이드
- Mockito의 올바른 사용법
- 테스트코드 작성 5원칙
- Spring Security가 적용된 곳의 효율적인 테스트 방법
- Mockito vs BDDMockito
- Spring MVC 예외 테스트
- Spock으로 테스트코드를 짜보자
- BDD로 테스트에 중독되어 보자
- JUnit5로 계층 구조의 테스트 코드 작성하기
- TCP/IP
- Docker, kubernetes
- REST API
- OSI 7Layer
- L4, L7 로드밸런서
- Http, Https
- Deadlock
- TCP 3-way Handshake
- TCP, UDP
- 웹 통신 과정
- Serverless
- RDB vs NoSQL
- ElasticSearch
- B-tree, B+tree와 인덱스
- DB 인덱스로 B-tree를 사용하는 이유
- B-tree, Hash 인덱스
- DB 튜닝
- Database Naming Convention
- DB분산처리를 위한 sharding
- Spring 개발자의 회고록 01
- Spring 개발자의 회고록 02
- 능력있는 개발자를 알아보는 법
- Dreyfus model
- 우아한 멀티 모듈 세미나
- 신규 Web 서비스 시 고려사항