1일차 (3/13) |
결합도와 응집도 |
2일차 (3/14) |
Interface vs Type alias |
3일차 (3/15) |
페이징 처리 쿼리문, 쿼리 파라미터 사용하기, useParams |
4일차 (3/16) |
Group By/Having/Order By, useNavigate |
5일차 (3/17) |
Full Text Index, Link/NavLink/useNavigate |
6일차 (3/18) |
코프링에서 jpa, querydsl, postgresql 설정하기 |
7일차 (3/20) |
async/await vs then, 타입스크립트의 비구조화 할당, Props 비구조화 할당, styled component |
8일차 (3/21) |
React 절대 경로 설정하기, Dispatch<SetStateAction>, React Router |
9일차 (3/22) |
Symbol, 자바스크립트에서 객체란, React Native 공식 문서 튜토리얼 |
10일차 (3/24) |
Namespace & room, Redis pub/sub, Socket.io Adapter |
11일차 (3/27) |
Passport.js |
12일차 (3/28) |
자바의 동시적 프로그래밍 |
13일차 (3/29) |
(4/1 보충) spring scheduler |
14일차 (3/30) |
socket.io rooms |
15일차 (3/31) |
node.js는 싱글 스레드일까? |
16일차 (4/4) |
socket.io rooms & sids |
17일차 (4/5) |
javascript 반복문 총 정리 |
18일차 (4/7) |
React 상태관리 종류 |
19일차 (4/10) |
javascript Promise |
20일차 (4/11) |
express.static(), NestJS 시작하기 |
21일차 (4/12) |
.nvmrc란?, 콜백 함수 |
22일차 (4/13) |
NestJS에서 IoC, DI, Singleton |
23일차 (4/14) |
class-validator |
24일차 (4/17) |
class-transformer |
25일차 (4/18) |
Spring DTO, Entity 필드 타입, Query Parameter vs Path Variable |
26일차 (4/19) |
param/query/body, 401 vs 403 |
27일차 (4/20) |
Node.js moment, transaction |
28일차 (4/21) |
(4/22 보충) MySQL GROUP_CONCAT, WHERE ... IN |
29일차 (4/24) |
Math.round/ceil/floor |
30일차 (4/25) |
Typescript 유틸리티 타입, NestJS 유효성 검사 |
31일차 (4/26) |
Typescript as, is와 타입 단언 |
32일차 (4/27) |
(보충) Typescript 함수 시그니처 |
33일차 (4/28) |
(보충) Typescript enum, keyof, typeof |
34일차 (5/1) |
(보충) Typescript Union, Intersection |
35일차 (5/2) |
(보충) NestJS class-validate와 ValidatePipe |
36일차 (5/3) |
Java Upcasting, Downcasting |
37일차 (5/4) |
Typescript typeof Array[number] |
38일차 (5/5) |
Typescript 인덱스 시그니처, NestJS @isOptional |
39일차 (5/7) |
Java 메소드 오버라이딩, 오버라이딩 불가능한 메소드, 오버로딩 vs 오버라이딩, 정보 은닉과 캡슐화, 상속 |
40일차 (5/8) |
Redux 기초 |
41일차 (5/9) |
React map key 설정 |
42일차 (5/12) |
자바스크립트 배열 함수 |
43일차 (5/15) |
never 타입, reduce(), 객체 배열 중복 제거, 이터러블 vs 이터레이터 |
44일차 (5/16) |
자바스크립트 spread/rest, Array.from vs Spread, Java에서 Set의 객체 비교 |
45일차 (5/17) |
interface, type 상세 비교, SQL 묵시적 형변환, 네이밍 컨벤션과 JPA에서의 내부 동작 차이 |
46일차 (5/19) |
자바스크립트 array method time complexity, forEach vs map, Set 연산의 시간복잡도 |
47일차 (5/22) |
Spring boot에서 Dockerfile로 컨테이너 이미지 효율적으로 만들기 |
48일차 (5/23) |
자바스크립트 sort와 localeCompare |
49일차 (5/24) |
(보충) Promise.all, Promise.all vs Promise.allSettled |
50일차 (5/25) |
React Blob과 ArrayBuffer, charCodeAt / fromCharCode, atob / btoa, node.js mysql에서 insertId 확인하기 |
51일차 (5/26) |
(보충) 자바스크립트의 배열과 Dense vs Sparse Array |
52일차 (5/29) |
타입스크립트 Record 타입, mysql + node.js에서 값 한번에 insert하기, lodash, Set.has() vs Array.includes(), WeakMap/WeakSet |
53일차 (5/30) |
타입 어노테이션, ?? (null 병합 연산자) |
54일차 (5/31) |
(보충) INSERT IGNORE INTO |
55일차 (6/1) |
ON DUPLICATE KEY UPDATE, REPLACE INTO |
56일차 (6/2) |
javascript 두 배열 비교하기 |
57일차 (6/4) |
ON DUPLICATE KEY UPDATE vs IGNORE INTO, Serialize |
58일차 (6/5) |
reduce와 ...를 같이 쓰지 마세요... |
59일차 (6/6) |
javascript 상속과 prototype |
60일차 (6/7) |
atomic 디자인 패턴 |
61일차 (6/8) |
Node.js 파일 업로드 비교, fs 모듈 |
62일차 (6/9) |
class-validator의 조건부 사용 |
63일차 (6/11) |
Java 메모리 이야기 |
64일차 (6/12) |
XLSX 모듈 |
65일차 (6/13) |
좋은 Response Body 만들기 |
66일차 (6/16) |
타입스크립트에서 enum을 쓰면 안되는 경우 |
67일차 (6/17) |
ts-jenum, cookie와 SameSite |
68일차 (6/19) |
useState 동기적 처리 |
69일차 (6/21) |
Parametric Search, call by value/call by reference, 깊은/얕은/방어적 복사 |
70일차 (6/23) |
Java의 불변 객체 |
71일차 (6/24) |
DTO vs VO vs Entity |
72일차 (6/26) |
Spring 멀티 모듈, Docker Compose에서 서로 다른 컨테이너가 볼륨을 공유하는 방법, volume vs bind mount |
73일차 (7/1) |
논리연산자에 대한 오해, for await of |
74일차 (7/3) |
DB 스토리지 엔진, state vs props, useState vs useRef |
75일차 (7/4) |
axios 모듈화 |
76일차 (7/5) |
동기/비동기, 블로킹/논블로킹 |
77일차 (7/7) |
axios interceptors, 400/401/403, Arrays.asList vs List.of, Collections를 복사하는 여러가지 방법, unmodifiable vs copyOf |
78일차 (7/8) |
Java Facade 패턴, CASCADE |
79일차 (7/14) |
사소한 Java 기초 문법들 |
80일차 (7/15) |
OLTP/OLAP |
81일차 (7/16) |
mysql CASE ~ WHEN THEN |
82일차 (7/17) |
CHAR/VARCHAR/TEXT, 사소한 Java 기초 문법들 (2) |
83일차 (7/18) |
Java Proxy 패턴 |
84일차 (7/19) |
JOIN |
85일차 (7/21) |
사소한 Java 기초 문법들 (3), toCharArray() vs charAt() |
86일차 (7/22) |
사소한 Javascript 기초 문법 (1), strict 모드 |
87일차 (7/23) |
사소한 sql 기초 쿼리문 (1) |
88일차 (7/24) |
자바스크립트 코딩패턴 |
89일차 (7/26) |
class-validator의 활용과 검증, 반복문 순회 시 배열 크기 미리 선언 vs 매 반복마다 참조 |
90일차 (7/27) |
사소한 Javascript 기초 문법 (2) |
91일차 (7/28) |
포트 포워딩, 포트 포워딩과 리버스 프록시 |
92일차 (7/29) |
최대 공약수(gcd) / 최소 공배수(lcm) 구하기, 코테 풀면서 실수했던 것 |
93일차 (7/31) |
Object.assign |
94일차 (8/2) |
Docker Swarm, Clustering, .dockerignore, Assertj에서 contains() vs containsExactly() |
95일차 (8/5) |
@ParameterizedTest |
96일차 (8/6) |
LRU 알고리즘 |
97일차 (8/9) |
Bulk Insert |
98일차 (8/10) |
행렬의 덧셈과 곱셈 |
99일차 (8/13) |
LRU 알고리즘 개념 및 구현하기, Collections.swap(), SQL 가장 큰 값 구하기 |
100일차 (8/15) |
Comparable vs Comparator |
101일차 (8/17) |
Comparator로 다차원 배열 정렬하기 |
102일차 (8/19) |
Java에서 이진수와 십진수, API Gateway |
103일차 (8/23) |
Java TreeSet에서 인덱스 값 찾기 |
104일차 (9/1) |
S3 Presigned URL, 폴링과 롱폴링 |
105일차 (9/5) |
사소한 java 기초 문법들 (4) |
106일차 (9/6) |
ResponseEntity |
107일차 (9/11) |
서브쿼리 종류 |
108일차 (9/12) |
docker 기초 뽀개기 |
109일차 (9/13) |
CQRS 패턴 |
110일차 (9/15) |
맨해튼 거리 |
111일차 (9/16) |
Java에서 우선순위 큐 사용하기 |
112일차 (9/17) |
JPA ID전략이 IDENTITY인 상태에서 Bulk Insert 수행하기 |
113일차 (9/20) |
Nest.js에서 DTO 작성 시 interface vs class, 코틀린의 data class |
114일차 (9/22) |
트랜잭션 (1) |
115일차 (9/23) |
mongoose에서 페이지네이션, kotlin lateinit vs lazy, 사소한 sql 함수 (2) |
116일차 (9/27) |
Union-Find 알고리즘 |
117일차 (9/29) |
사소한 Java 기초 문법들 (5), QueryDsl에서 조회 결과를 DTO클래스로 받기, WITH[RECURSIVE]와 VIEW |
118일차 (9/30) |
Promise.all/race/finally |
119일차 (10/4) |
Optional 제대로 알고 쓰기 |
120일차 (10/9) |
코틀린 JPA 사용 시 Nullable vs Optional, @Enumerated |
121일차 (10/11) |
사소한 Java 기초 문법들 (6) |
122일차 (10/15) |
Kotlin에서 Request 유효성 검사하기 |
123일차 (10/20) |
JPA에서 데이터를 일괄 삭제하는 방법들 |
124일차 (11/2) |
Scanner로 길이를 모르는 여러 값 입력 받기, (우테코 하면서 알게된) 사소한 Javascript 문법 (1) |
125일차 (11/4) |
이진 탐색 트리(Binary Search Tree) |
126일차 (11/6) |
GROUP_CONCAT과 ORDER BY |
127일차 (11/11) |
최소 신장 트리(MST) |
128일차 (11/18) |
백트래킹과 DFS |
129일차 (11/26) |
equals와 hashCode |
130일차 (12/12) |
@Modifying |
131일차 (12/13) |
Entity에서 기본 생성자에 Protected를 설정하는 이유 |
132일차 (12/15) |
지연 로딩과 즉시 로딩 |
133일차 (12/17) |
WITH절 연속으로 사용하기, Arrays.sort 사용 시 주의할 점 |
134일차 (12/18) |
JDBC와 PreparedStatement |