# Today I Learned
# 🚀 목적
- 공부한 내용을 주제별로 정리하여 기록합니다
- 이름과 다르게 학습일지를 작성하지는 않습니다
- 일자별 기록은 내용을 다시 찾아볼 때 어려움이 있습니다
- 주제별로 정리한 내용은 정적 웹사이트 생성기를 통해 개인 Wiki로 활용합니다
# 📑 별도 분류한 학습 기록
# 📜 Wiki (opens new window)
개인 Wiki 관련 정보 (opens new window)
- push to origin/main
- trigger Github Actions
- publish Github Pages to https://github.com/pravusid/wiki/ (opens new window)
- complete! 😎️
# INDEX
# AI
# AWS
- Amazon Web Services (AWS)
- AWS Beanstalk
- AWS CloudFront
- AWS CodeDeploy
- Dynamo DB
- Elastic Compute Cloud (EC2)
- AWS ElastiCache
- AWS Identity and Access Management
- AWS KMS
- AWS lambda
- AWS RDS
- Simple Storage Service (S3)
- AWS SES
- AWS System Manager: Parameter Store
# Arch
# CSS
# DDD
# Database
- DuckDB
- Elastic Stack
- InnoDB
- MONGODB
- MySQL character sets and collations
- MySQL DML
- MySQL
- ORACLE DB
- PostgreSQL
- SQL 예제
- 관계형 데이터베이스 기초
- Redis
- SQL Anti Patterns
- SQL Joins
# DevOps
# Docker
- Docker 명령어
- Docker Compose
- Dockerfile
- Docker Images
- Docker Intro
- Docker Volume
- Docker Example: Jenkins
- Docker Example: Mongodb
- Docker Example: MySQL(MariaDB)
- Docker Example: NGINX
- Docker Example: Redis
# Git
- Git Case Sensitive Troubleshooting
- Git 명령어
- Git Config
- Git Credential
- GIT for Teams
- Git에서 SSH 프로토콜로 전송 설정
# Go
- Echo web Framework
- Go 기초
- Go 동시성
- Go 함수
- Golang HTTP Server
- Go Modules
- Go 활용
- Go Language 문자열 / 자료구조
- Go 구조체 및 인터페이스
# Growth
# HTML
# Interview
# Java
- Collections Framework
- CompletableFuture
- Enumeration
- Functional Interface
- GSON
- Gradle
- Java Persistence API
- JSP (Java Server Pages)
- Java Virtual Machine
- JAVA 기초
- JAVA GUI
- LocalDateTime (JSR-310)
- Java Logging
- Lombok
- Optional
- RxJava
- 직렬화
- Thread in Java
- XML parsing
# JavaScript
- AJAX file Download (web browser)
- 웹브라우저 클릭하여 복사
- Inside JavaScript
- JQuery
- JavaScript Async
- Date Object in JavaScript
- Error in JavaScript
- Iterators & Generators
- JavaScript modules
- Parse Number (integer, float) in JavaScript
- Promises Chaining
- JavaScript 정규표현식 (regexp)
- JavaScript String
- JavaScript Symbol Type
- 값의 진위여부 for JavaScript
- JavaScript 유니코드 정규화
- Modern JavaScript
# Kotlin
- TLS - insecure
- AES256 in Kotlin
- 애노테이션과 리플렉션
- Kotlin Intro
- 클래스, 객체, 인터페이스
- DSL
- 함수 정의와 호출
- 제네릭스
- 고차함수
- 람다
- 연산자 오버로딩
- Type System
- Tornado FX
# Lecture
- Agile
- 컴파일러
- 컴퓨터 보안
- DateTime & TimeZone
- Digital Garden
- 한글 문자집합 인코딩
- 정보 통신망
- SOLID
- 객체지향 프로그래밍
- 운영체제
- 공개SW 라이선스
- 프로그래밍 언어론
- Refactoring
- 소프트웨어 공학
- Laws, Theories, Principles, Patterns and Abbreviation
- 유니코드
# Linux
- 리눅스 접속 기록
- Bash Shell Script
- Linux Boot USB 생성 in Linux
- colorizing shell
- 리눅스 환경변수 & SHELL
- 방화벽 정책
- Google Chrome in Linux
- JQ
- 리눅스 기본
- Linux Jobs
- LogRotate
- oh-my-zsh alias
- PACMAN | YAY
- Partitioning
- Shell History 복구
- SheBang(
#!
) - SSH
- SUDO
- supervisor
- Swapfile 생성
- 작업관리
- TimeZone
# Network
- Apache
- CORS (Cross Origin Resource Sharing)
- cURL(Client URL)
- GraphQL
- HTTP Basic
- HTTP Content-Type
- Let's Encrypt
- mitmproxy
- 네트워크 기초
- NGINX
- REST (Representational State Transfer)
- WebSocket
# Node.js
- HTTP client Library Axios
- Babel
- Barrel File
- Linting and Formatting
- Express.js
- Jest
- Kysely
- NestJS + Kysely
- NestJS
- AES256 in nodejs
- Awilix
- Node.js CLI 인자전달
- Node.js 환경변수
- Node.js Event Loop
- InversifyJS
- 실행시간 측정
- Node.js MySQL Drivers
- nodejs performance analyzer
- NodeJs REPL
- Stream in Node.js
- Tsyringe
- WebSocket proxy
- Node.js
- npm (node.js package manager)
- PM2
- Sequelize.js
- Supertest
- TypeORM
# Python
# React.js
# Rust
- Rust Collection
- Rust Concepts
- Rust Enums & Pattern Matching
- Rust Error Handling
- Rust Generic, Trait and Lifetimes
- Rust Intro
- Rust Ownership
- Rust Package, Module
- Rust Struct
# Security
- AES
- 암호화 관련 데이터 길이
- Encryption and compression
- GnuPG
- Hashing (해시함수)
- 동형암호 (Homomorphic Encryption)
- JWT (JSON Web Token)
- 대한민국 공인인증서
- OAuth2
- Public Key Infrastructure
- Secure Random
# Spring
- Spring Interceptor
- JWT / OAuth2
- Spring Framework with Kotlin
- JPA: LocalDateTime
- Spring Data JPA
- MyBatis
- Spring REST
- Spring Security
- Spring Validation
- Swagger
- Thymeleaf
- Transaction in Spring Framework
- Spring Batch
- Spring Boot Configuration
- Spring Boot 배포
- Devtools
- Spring Boot Logging
- Spring Boot 프로젝트 생성
- Spring Boot Test
- Spring MVC Codes
- Spring 설정 Java편
- Spring MVC 관련 Tomcat 설정
- Spring 설정 XML편
- Spring MVC Basics
- Spring MVC Tiles2 설정
# Test
# Tools
- Chrome DevTools
- Cursor Editor
- Jetbrains IDE Keymap 파일 위치
- macOS keychain in Shell
- Monitor DPI
- Note Taking
- Visual Studio Code
# TypeScript
- TypeScript Declaration Files (
d.ts
) - TypeScript Decorator 예제
- TypeScript ESM support
- Expose Getters in TypeScript
- TypeScript HandBook: Basic
- TypeScript HandBook: Decorators
- TypeScript HandBook: Mixins
- TypeScript HandBook: Module System
- TypeScript HandBook: Type System
- TypeScript Inferred Type Predicates
- Nominal Typing
- TypeScript Optional Variance
- tsconfig.json
- TypeScript - Utility Types
# Vue.js
- Vue.js Component
- Vue.js 배포
- Vue.js 환경변수 / 모드
- Vue instance
- OAuth2 JWT 인증
- Vue.js 반응형에 대해 깊이 알아보기
- Vue.js Reusability & Composition
- Vue Router
- Vue.js 템플릿
- Vuex