-
Notifications
You must be signed in to change notification settings - Fork 0
Database โ Streaming Aggregation and Preโaggregated Tables
woojin edited this page Aug 13, 2026
·
3 revisions
- MySQL์ด
GROUP BY๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ ํฌ๊ฒ 3๊ฐ์ง๋ก ๋๋๋ค.
| ๋ฐฉ์ | ์กฐ๊ฑด | ๋ฉ๋ชจ๋ฆฌ | EXPLAIN ํ์ |
|---|---|---|---|
| ์์ ํ ์ด๋ธ | ์ ๋ ฅ์ด ์ ๋ ฌ๋ผ ์์ง ์์ | ๊ทธ๋ฃน ์์ ๋น๋ก | Aggregate using temporary table |
| ์คํธ๋ฆฌ๋ฐ | ์ ๋ ฅ์ด ๊ทธ๋ฃน ํค ์์ผ๋ก ์ ๋ ฌ๋จ | ๊ทธ๋ฃน ํ๋ ๋ถ๋ | Group aggregate: ... |
| ๋์จํ ์ธ๋ฑ์ค ์ค์บ | ์ธ๋ฑ์ค ์ ๋ ์ปฌ๋ผ + MIN/MAXยทDISTINCT๋ฅ | ๊ฑฐ์ ์์ | Using index for group-by |
- ์ ๋ ฅ์ด ๊ทธ๋ฃน ํค ์์ผ๋ก ๋ค์ด์ค๋ฉด ๊ฐ์ ๊ทธ๋ฃน์ ํ์ ๋ฐ๋์ ์ฐ์ํ๋ค. ์ง๊ธ ๊ทธ๋ฃน์ ๋์ ๊ฐ๋ง ๋ค๊ณ ์๋ค๊ฐ ํค๊ฐ ๋ฐ๋๋ ์๊ฐ ๊ฒฐ๊ณผ๋ฅผ ํ๋ ค๋ณด๋ด๊ณ ์ํ๋ฅผ ์ด๊ธฐํํ๋ค.
- ๋ฐ๋ฉด ์ ๋ ฌ์ด ์ ๋ผ ์์ผ๋ฉด ๊ฐ์ ๊ฐ์ ํ์ด ๋ง์ง๋ง ํ์๋ ๋์ฌ ์ ์์ด์ ์ ๋ถ ๋ค ์ฝ์ ๋๊น์ง ๋ชจ๋ ๊ทธ๋ฃน์ ์ํ๋ฅผ ๋ค๊ณ ์์ด์ผ ํ๋ค. ๊ทธ๋์ ์์ ํ ์ด๋ธ์ด ํ์ํ๋ค.
- Java - Class
- Java - Java Memory
- Java โ Solving Concurrency Issues with Synchronized
- Java - synchronized
- Java โ Instance Variable & Local Variable vs final
- Java โ Object
- Java โ Immutable Object
- Java โ String
- Java โ Wrapper Class
- Java โ ENUM
- Java โ Nested Class & Inner Class & Local Class & Anonymous Class
- Java โ Generic
- Java โ ArrayList
- Java โ LinkedList
- Java โ List
- Java โ Set
- Java โ Hash
- Java โ HashSet
- Java โ Map & Stack & Queue
- Java โ Iterate & Sort
- Java - Process & Thread
- Java - Thread Creation & Execution
- Java - Thread Control & LifeCycle
- Java - Memory Visibility
- Java - Advanced Synchronization
- Java - Producer/Consumer Problem
- Java - Synchronization & Atomic Operation
- Java - Concurrent Collection
- Java - Thread Pool & Executor Framework
- Java - Character Encoding
- Java - I/O
- Java - File & Files
- Java - Reflection
- Java - Annotation
- Java - Lambda
- Java - Functional Interface
- Java - Lambda vs Anonymous Class
- Java - Method Reference
- Java - Stream API
- Java - Optional
- Java - Default Method
- Java - Parallel Stream
- Java - Functional Programming
- Java - JVM & GC & SOLID
- Java - Data Storage and Memory Allocation: Primitive vs. Reference
- Java โ Static Keyword: Efficient Resource Management at the Class Level
- Java โ OOP
- Java โ Collection Framework Selection Standard
- Java โ Multi Threading & Concurrent Programming
- Java โ Exception Handling & Advanced Java
- Java โ Java 8+
- Java โ Java Application Performance Tuning
- Java - CAS
- Java - Virtual Thread
- Java - Benchmark
- Kotlin - Variables, Types, and Operators in Kotlin
- Kotlin - Control Flow in Kotlin
- Kotlin - Object-Oriented Programming in Kotlin
- Kotlin - Functional Programming in Kotlin
- Kotlin - Key Features of Kotlin
- Kotlin - Generics in Kotlin
- Kotlin - Lazy Initialization and Delegation in Kotlin
- Kotlin - Advanced Functional Programming in Kotlin
- Kotlin - Operator Overloading and Kotlin DSL
- Kotlin - Annotations and Reflection in Kotlin
- Kotlin - Miscellaneous Topics in Kotlin
- Coroutine - Limitations of Thread-Based Work & the Emergence of Coroutines
- Coroutine - runBlocking
- Coroutine - CoroutineDispatcher
- Coroutine - Controlling Coroutines with Job
- Coroutine - Receiving Results from Coroutines
- Coroutine - Coroutine Context
- Coroutine - Structured Concurrency
- Coroutine - Exception Handling
- Coroutine - Suspended Functions
- Coroutine - Understanding Coroutines
- Coroutine - Advanced Coroutines
- Coroutine - Coroutine Testing
- Spring - OOP & Spring
- Spring - Spring Container & Spring Bean
- Spring - Singleton Container
- Spring - Dependency Injection
- Spring - Bean LifeCycle Callback
- Spring - Bean Scope
- Spring โ Web Server, Web Application server
- Spring โ Servlet
- Spring โ Servlet & JSP & MVC
- Spring โ MVC Framework
- Spring โ Spring MVC
- Spring - Thymeleaf
- Spring - Message & Internationalization
- Spring - Validation
- Spring - Bean Validation
- Spring - Cookie & Session
- Spring - Filter & Interceptor
- Spring - API Exception Handling
- Spring - Spring Type Converter
- Spring - File Upload
- Spring - Connection Pool & DataSource
- Spring - Transaction
- Spring โ Spring Exception Abstraction
- Spring - Database Access
- Spring โ Spring Transaction
- Spring โ Spring Transaction Propagation
- Spring โ Thread Local
- Spring โ Template Method Pattern & Callback Pattern
- Spring โ Dynamic Proxy
- Spring โ Spring Proxy
- Spring โ Bean Processor
- Spring โ @Aspect AOP
- Spring โ Spring AOP
- Spring โ Spring AOP Application
- Spring - MyBatis
- Spring โ URL Encoding
- Spring - Cache Annotation
- Spring - Retry
- Spring Security - Initialization
- Spring Security - Authentication Process
- Spring Security - Authentication Architecture
- Spring Security - Authentication Status Persistence Processing Mechanism
- Spring Security - Session Management
- Spring Security - Exception Handling
- Spring Security - Mechanisms for responding to Malicious Attacks
- Spring Security - Authorization Process
- Spring Security - Authorization Architecture
- Spring Security - Multiple Security Settings
- Spring Security - Redis Redundancy Settings
- Spring Security - Event
- Spring Security - Integration
- Spring Security - OAuth 2.0
- Spring Security - OAuth 2.0 Authorization Type
- Spring Security - Open ID Connect
- Spring Security - OAuth 2.0 Client
- Spring Security - OAuth 2.0 Client Fundamentals
- Spring Security - OAuth 2.0 oauth2Login
- Spring Security - OAuth 2.0 oauth2Client
- Spring Security - OAuth 2.0 Resource Server
- Spring Security - OAuth 2.0 Resource Server API
- Spring Security - OAuth 2.0 Verification
- [๐Spring Security - OAuth 2.0 MAC & RSA Token Verification]
- Spring Security - OAuth 2.0 Resource Server Permission Implementation
- Spring Security - OAuth 2.0 opaque()
- Spring Security - Integrating OAuth 2.0 Client and Resource Server
- Spring Security - Authorization Server
- Spring Security - Authorization Server Main Domain Class
- Spring Security - Authorization Server Endpoint Protocol
- Spring Batch - Scheduler vs Batch
- Spring Batch - Batch Concept
- Spring Batch - Batch Domain
- Spring Batch - Job
- Spring Batch - Step
- Spring Batch - Flow
- Spring Batch - Chunk Process
- Spring Batch - ItemReader
- Spring Batch - ItemWriter
- Spring Batch - ItemProcessor
- Spring Batch - Retry & Error Handling
- Spring Batch - Multi Threads Processing
- [Spring Batch - Batch Event Listener]
- [Spring Batch - Batch Test]
- [Spring Batch - File Processing]
- [Spring Batch - Read and Write Operations in Relational Databases and NoSQL]
- [Spring Batch - FaultTolerant & ItemStream]
- [Spring Batch - Partitioning]
- Spring Batch โ Tasklet vs Chunk
- [Spring Batch - Class 2]
- [Spring Batch - Class 3]
- [Spring Batch - Class 4]
- [Spring Batch - Class 5]
- [Spring Batch - Class 6]
- [Spring Batch - Class 7]
- Database - Database Introduction
- Database - Search & Sort
- Database - Data Processing
- Database - Aggregation & Grouping
- Database - Inner Join
- Database - Outer Join & Etc Join
- Database - Sub Query
- Database - UNION
- Database - CASE
- Database - Index
- Database - Data Integrity
- Database - Transaction
- Database - Why Database Design Matters
- Database - Concept Modeling
- Database - Logical Data Modeling
- Database - Identifying Relationship & Non-Identifying Relationship
- Database - Normalization
- Database - Physical Data Modeling
- Database - Common Code Design
- Database - Hierarchical Structure Design
- Database - Data Change History Design
- Database - SOFT DELETE
- Database - Statistics Table Design
- Database - Inheritance Relationship Design
- Database - Entity-Attribute-Value (EAV) Model
- Database - JSON Schema Design
- Database - Database Performance and MySQL Architecture
- Database - Execution Plans 1 - Mastering EXPLAIN
- Database - Execution Plans 2 - Mastering ANALYZE
- Database - Diagnosing Full Table Scans and Composite Index Basics
- Database โ Index Internal Structures 1 โ B-Tree & B+Tree
- Database - Index Internal Structures 2 - Clustered and Secondary Indexes
- Database - Diagnosing Using filesort and Early Termination
- Database - ICP, Covering, and Skip Scans
- Database - Merge, MRR, New Features, Hints, and Operations
- ๐Database - The Optimizer and Histograms
- Database - Join Optimization
- Database - Optimizing Sort, Pagination, and Grouping
- Database - Streaming Aggregation and Pre-aggregated Tables
- MySQL โ Solving Concurrency Problems using Database-Level Locking
- MySQL - Multi Column Index
- MySQL - Covering Index & RDB vs ElasticSearch Diff
- MySQL - ORDER BY
- MySQL - INSERT
- MySQL - AUTO_INCREMENT_LOCK
- MySQL - Index Dive Using In Query
- MySQL - Why don't use prefix index in default
- MySQL - MySQL LockType
- MySQL - DeadLock Case
- MySQL - NoOffset For Query Tuning
- MySQL โ Skip Locked for Session
- MySQL - Checking DB Metrics with SQL Queries
- MySQL - Data Modeling for Practical Service Development
- MySQL - Basic CRUD in MySQL
- MySQL โ MySQL Internal Architecture and Storage Engines
- MySQL - MySQL Horizontal Scaling
- MySQL โ OperationalโLevel System Design
- MySQL - MySQL Fundamentals
- MySQL - Why You Should Use MySQL: JOIN
- MySQL - Must-Know SQL Anti-Patterns
- MySQL - Learning Data Modeling Through Practical Examples
- MySQL - Foreign Key & Strategic Patterns
- MySQL - Advanced Topics in MySQL
- Redis โ Redis
- Redis โ Redis Manual
- Redis โ Redis Cache Strategy
- Redis โ Redis Master-Slave
- Redis - Redis Cluster Mode
- Redis - Redis Cluster Example
- Redis - Redis Data Structure
- Redis - Redis Server
- Redis - Reduce DB write load using Redis
- Redis - Solving Concurrency Issues (1)
- Redis โ Solving Concurrency Issues (2)
- Redis - Solving Concurrency Issues (3)
- Redis - Implementing Popular Searches
- Redis - API Rate Limiting
- Redis - Geospatial
- Redis - DAU Counting Application
- Redis - Session Management Application
- Redis - Redis Transaction ACID
- Redis - Redis Data Persistence
- Redis - Redis Keys Management
- Redis - Decoupling microservices with Redis Pub/Sub
- Redis - Redis Pipelining & RTT(Round Trip Time)
- Redis - Redis Streams
- Redis - Hash Slot Rebalancing
- JPA - Java Persistence API
- JPA - Entity Mapping & PK Strategy
- JPA โ JPA Association Mapping
- JPA - Proxy Association
- JPA - Value Type
- JPA - Dirty Checking vs. Merge: Understanding the Difference in JPA
- JPA - Cascading and Orphan Removal in JPA
- JPA - Introduction to Object-Oriented Query Languages in JPA
- JPA - Spring Data JPA
- JPA โ Solving Concurrency Issues with Pessimistic Locking
- JPA โ Solving Concurrency Issues with Optimistic Locking
- JPA - Lazy Loading and Performance Optimization in JPA
- JPA - ManyToOne Important Things
- JPA - OneToMany Important Things
- JPA - OSIV
- MicroService Architecture - Service Communications Patterns(RESTful API)
- MicroService Architecture - Service Communications Patterns(GraphQL)
- MicroService Architecture - Service Communications Patterns(gRPC)
- MicroService Architecture - API Gateway Patterns
- MicroService Architecture - Asynchronous Communications Patterns
- MicroService Architecture - Data Management Patterns
- MicroService Architecture - CQRS Patterns
- MicroService Architecture - Distributed Transactions
- [MicroService Architecture - Event-Driven Architecture]
- [MicroService Architecture - Resilience & Observability and Monitoring]
- [MicroService Architecture - Security Patterns]
- [MicroService Architecture - Testing Strategies]
- [MicroService Architecture - Scalability & Caching Patterns]
- [MicroService Architecture - Deployment Patterns]
- [MicroService Architecture - Serverless Architecture]
- [MicroService Architecture - GraphQL]
- [MicroService Architecture - Evolution of Distributed Systems and Their Drawbacks]
- [MicroService Architecture - Protocol Buffers]
- [MicroService Architecture - gRPC Communication Patterns]
- [MicroService Architecture - gRPC Optimization Strategies and Implementation]
- MicroService Architecture - 2PC
- MicroService Architecture - TCC
- MicroService Architecture - SAGA
- Apache Kafka - Kafka Introduction
- Apache Kafka - Kafka CLI
- Apache Kafka - Kafka Producer Application
- Apache Kafka - Kafka Consumer Application
- Apache Kafka - Idempotent Producer & Transactional Producer & Transactional Consumer
- Apache Kafka - Kafka Streams
- Apache Kafka - Kafka Connect
- Apache Kafka - Kafka Topic/Producer/Consumer
- Apache Kafka - Producer Mechanism
- Apache Kafka - Consumer Mechanism
- Apache Kafka - Multi Node Kafka Cluster
- Apache Kafka - Producer & Consumer Serialization/DeSerialization
- Apache Kafka - Topic Segment Management
- Apache Kafka - KSQLDB Stream
- Apache Kafka - KSQLDB Table
- Apache Kafka - KSQLDB Application
- Apache Kafka - Group by & Mview
- [Apache Kafka - Join]
- [Apache Kafka - Time & Windows]
- [Apache Kafka - Connecting KSQLDB to Kafka Connect]
- [Apache Kafka - Kafka Connect]
- [Apache Kafka - JDBC Source Connector]
- [Apache Kafka - JDBC Sink Connector]
- [Apache Kafka - Debezium MySQL CDC Source Connector]
- [Apache Kafka - Schema Registry]
- Apache Kafka - Differences Between RocksDB and In-Memory KeyValueStore in GlobalKTable
- Apache Kafka - Kafka Streams
- [Apache Kafka - Kafka Connect]
- [Apache Kafka - Idempotent Producers and Transactional Producers & Consumers]
- [Apache Kafka - CDC(Change Data Capture)]
- [Apache Flink - Apache Flink Architecture]
- [Apache Flink - Stream Processing]
- [Apache Flink - Data Stream API & Window]
- [Apache Flink - State Management]
- HTTP - Internet Network
- HTTP - URI & Browser Request Flow
- HTTP - HTTP Basic
- HTTP - HTTP Method
- HTTP - HTTP Method Application
- HTTP - HTTP Status Code
- HTTP โ HTTP Default Header
- HTTP - HTTP Cache & Condition Request
- AWS - AWS CDK(Cloud Development Kit)
- AWS - Signed URL
- AWS - PreSigned URL
- AWS - Cognito
- AWS - Signed URL Logic
- Docker - Docker
- Docker โ Docker CLI
- Docker โ Docker Volume
- Docker - Dockerfile Image
- Docker โ Docker Compose Container Management
- Docker โ Deploy(feat. AWS ECR)
- Docker - Cloud Native Technology
- Docker - Docker Essentials(1)
- Docker - Docker Essentials(2)
- Docker - Docker Network and Storage
- Docker - Building and Managing Containerized Application
- Docker - Container Orchestration
- Docker - Docker Security
- Docker - Logging and Monitoring
- Docker - Advanced Docker Usage
- Docker - Container-to-Container Communication
- [Docker - Docker Image Layer๋ฅผ ํ์ฉํ Cache ํจํด๊ณผ Dangling Image]
- [Docker - Dockerfile ์ต์ ํ๋ฅผ ์ํ ๋น๋ ์บ์ฑ ๋ฐ ๋ฉํฐ ์คํ ์ด์ง ๋น๋ ํจํด]
- [Docker - GitHub Container Registry(GHCR)]
- [Docker - Docker Network 3๊ฐ์ง]
- Kubernetes - Probe
- Kubernetes - ConfigMap & Secret
- Kubernetes - PV/PVC & Deployment & Service & HPA
- Kubernetes - Helm & Kustomize
- Kubernetes - Pod 1
- [Kubernetes - Pod 2]
- Kubernetes - Controller 1
- [Kubernetes - Controller 2]
- [Kubernetes - Object]
- [Kubernetes - Ingress & Nginx Application]
- [Kubernetes - Node Scheduling]
- [Kubernetes - Monitoring]
- [Kubernetes - Logging]
- Kubernetes - Deployment using Amazon EKS
- Jenkins - Jenkins Fundamentals & Environment Setup
- Jenkins - Jenkins Jobs: Freestyle & Pipeline
- Jenkins - Jenkins Pipeline Project
- Jenkins - Implementing Continuous Integration(CI) with Jenkins
- Nginx โ Nginx Introduction
- Nginx โ Nginx Supplementary Summary
- Nginx โ Deploying Domain with Nginx
- Nginx โ Implementing HTTPS with Nginx
- Nginx โ Backend Deployment via Nginx Reverse Proxy
- Nginx โ Load Balancing with Nginx
- Nginx - Core Concept
- [Nginx - Advanced Concept]
- [Nginx - Advanced Reverse Proxy]
- Monitoring - Log Level & Filter
- Monitoring - Log Collection with ELK Stack
- Monitoring - Log Monitoring with Kibana
- Monitoring - Server Monitoring with Prometheus and Grafana with Discord Alerts
- Test - Load Testing Fundamentals
- Test - Identifying Bottlenecks with Load Testing
- [Test - Resolving Bottlenecks and Improving Performance]
- Test - JUnit5
- Test - Mockito
- Test - TestContainers
- Test - JMeter
- Test - Chaos Monkey
- Test - ArchUnit
- Test - Appendix: Tips for Better Testing
- [gRPC - Writing .proto Files with Protocol Buffers]
- [gRPC - Various Communication Patterns in gRPC]
- [gRPC - gRPC Optimization Techniques and Advanced Features]
- TDD - Introduction to TDD
- TDD - Iterating with TDD
- TDD - Managing System Data
- TDD - Handling Unexpected Test Failures
- TDD - Abstraction & Reusability
- TDD - Building a Testing DSL
- TDD - Managing Test Context
- TDD - Driving Input Code with Output Tests
- TDD - Pagination Test
- [PostgreSQL - Docker๋ง์ แแ กแแ ญแผํ๋ ๊ฒฝ๋ํ๋ แแ ชแซแแ งแผ แแ ฎแแ ฅแผ ๋ฐฉ๋ฒ]
- [PostgreSQL - PostgreSQL์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ ํ์ ]
- [PostgreSQL - PostgreSQI์ JSONB, ์ญ์ธ๋ฑ์ฑ๊ณผ ํ์ฉ ๋ฐฉ๋ฒ]
- [PostgreSQL - ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฑ๋ฅ์ ์ํ ์ต์ ํ ํจํด ๋ฐ ์ ๋ต]
- [PostgreSQL - ํธ๋์ญ์ ๊ณผ ACID, Isolation ์์ค๋ณ ์ฐจ์ด]
- [PostgreSQL - Database Lock ๊ต์ฐฉ์ํ์ ์ฝ๊ธฐ/์ฐ๊ธฐ ์ฑ๋ฅ์ ๋ณด์ฅํ๋ MVCC ๋ชจ๋ธ]
- [PostgreSQL - pgvector์ ๋ฒกํฐ ์ ์ฅ, ์ ์ฌ๋ ๊ฒ์ ํจํด ๊ฐ๋ ]
- [PostgreSQL - ๋ฒกํฐ ์ธ๋ฑ์ค ์ต์ ํ์ ๋ฒกํฐ ๊ฒ์๊ณผ ์ ๋ฌธ ๊ฒ์ ๊ฒฐํฉ ํจํด]
- [PostgreSQL - PostgreSQL ํ๋ฌ๊ทธ์ธ]
- [PostgreSQL - PostGIS - ๊ณต๊ฐ ์ฟผ๋ฆฌ์ GIST ์ธ๋ฑ์ค, ์ง๋ฆฌ ํ์ ๊ณผ ๊ณต๊ฐ ์ฟผ๋ฆฌ๋ฅผ ์ํ ํ์ ๊ณผ ๊ธฐ๋ณธ ํจ์]
- [PostgreSQL - pg_search - ๊ฒ์ ์์ง ์์ด ํ ์คํธ ๊ฒ์ ๊ตฌํ๊ณผ ์ฃผ์์ฌํญ]
- [PostgreSQL - ๋จ์ผ ์ธ์คํด์ค ํ๊ณ๋ฅผ ๊ทน๋ณตํ๋ ๋ถ์ฐ ํจํด๊ณผ ์ค์ผ์ค๋ง, ๋ถ์ฐ ํ๊ฒฝ ๊ตฌ์ถ ๋ฐฉ๋ฒ]
- [PostgreSQL - Citus - ๋ถ์ฐ ํ ์ด๋ธ๊ณผ ๋ถ์ฐ ์ฟผ๋ฆฌ๋ฅผ ์ํ Extension๊ณผ ๋ฐ์ดํฐ ๋ถ์ฐ ์ฒ๋ฆฌ]
- [PostgreSQL - pg_cron - PostgreSQL๋ก ๊ตฌ์ฑํ๋ CronJob]
- [PostgreSQL - ์ค์ผ์ค๋ฌ + ๋ถ์ฐ ์ฒ๋ฆฌ๋ฅผ ๋์์ ๋์ ํ๋ ์ฃผ๊ธฐ์ ์ง๊ณ ์ฟผ๋ฆฌ ํจํด]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Kafka + Debezium์ ํ์ฉํ CDC ํจํด ์ค๊ณ]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Temporal์ ํ์ฉํ ์ํฌํ๋ก์ฐ ํจํด]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Docker์ ๊ฒฝ๋ ์ด๋ฏธ์ง๋ฅผ ํ์ฉํ ํ๊ฒฝ ๊ตฌ์ถ ๋ฐฉ๋ฒ]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Kafka์์์ ๋ฉ์์ง Delivery Guarantee]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - ์ค์๊ฐ ๋๊ธฐํ์ ํต์ฌ CDC]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - MySQL Binary Log ๊ธฐ๋ฐ์ CDC]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Binary Log ๊ธฐ๋ฐ์ CDC ๊ตฌํ ํ๋ซํผ Debezium์ด๋?]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Debezium Architecture]
- [Workflow-Driven Techniques for Large-Scale Traffic Processing - Debezium Architecture Best Practice์ ์ฃผ์์ฌํญ]
- Reactive Programming - Everything About Reactive Programming & Core Concepts of Reactive Programming
- Reactive Programming - Mastering Reactor Operators in WebFlux & A Deep Dive into WebFlux Operators
- Reactive Programming - Best Practices and Optional Patterns in WebFlux & Key Practical Patterns for WebFlux Development
- Reactive Programming - Practical WebFlux Patterns with Spring Boot & Building Applications with Spring Boot and WebFlux
- ElasticSearch - Elasticsearch Core Concepts
- ElasticSearch - Basic Search Features & Architecture
- ElasticSearch - Korean Optimized Search
- ElasticSearch - Defining Data Types: Understanding Mappings
- ElasticSearch - Commonly Used Search APIs
- ElasticSearch - Managing Documents (1)
- ElasticSearch - Managing Documents (2)
- ElasticSearch - Analysis and Mapping
- ElasticSearch - All About Search
- ElasticSearch - Query Joins
- ElasticSearch - Processing Query Results
- ElasticSearch - Aggregations
- ElasticSearch - Tips for Improving Search Results
- [ElasticSearch - Elasticsearch Overview]
- [ElasticSearch - Elasticsearch Internals]
- [ElasticSearch - Monitoring]
- [ElasticSearch - Troubleshooting]
- Design Pattern - Strategy
- Design Pattern - Factory Method
- Design Pattern - Abstract Factory
- Design Pattern - Singleton
- Design Pattern - Observer
- Design Pattern - Publisher - Subscriber
- Design Pattern - Decorator
- Design Pattern - Adapter
- Design Pattern - Builder
- Design Pattern - Template Method
- Design Pattern - Facade
- Design Pattern - Proxy
- Design Pattern - Command
- Design Pattern - Chain of Responsibility
- Design Pattern - State
- Design Pattern - Composite
- [Clean Spring - Domain-Driven Development]
- [Clean Spring - Domain-Driven Development with Design Patterns]
- [Clean Spring - Developing Membership Application with Hexagonal Architecture]
- [Clean Spring - JPA and Domain Model Patterns]
- [Clean Spring - Designing a Consistent Domain Model with Aggregates]
- [Clean Spring - Web API Adapter]
- [Clean Spring - Hexagonal Architecture: Ports]
- [Clean Spring - Hexagonal Architecture: Application Components]
- [Clean Spring - Test Improvement & Architecture Validation]
- [Clean Spring - Developing Application Components]
- (Effective Java Item 1) Java โ ์์ฑ์ ๋์ ์ ์ ํฉํ ๋ฆฌ ๋ฉ์๋๋ฅผ ๊ณ ๋ คํ๋ผ
- (Effective Java Item 2) Java - ์์ฑ์์ ๋งค๊ฐ๋ณ์๊ฐ ๋ง๋ค๋ฉด ๋น๋๋ฅผ ๊ณ ๋ คํ๋ผ
- (Effective Java Item 3) Java - private ์์ฑ์๋ ์ด๊ฑฐ ํ์ ์ผ๋ก ์ฑ๊ธํด์์ ๋ณด์ฆํ๋ผ
- (Effective Java Item 4) Java - ์ธ์คํด์คํ๋ฅผ ๋ง์ผ๋ ค๊ฑฐ๋ private ์์ฑ์๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 5) Java - ์์์ ์ง์ ๋ช ์ํ์ง ๋ง๊ณ ์์กด ๊ฐ์ฒด ์ฃผ์ ์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 6) Java โ ๋ถํ์ํ ๊ฐ์ฒด ์์ฑ์ ํผํ๋ผ
- (Effective Java Item 7) Java - ๋ค ์ด ๊ฐ์ฒด ์ฐธ์กฐ๋ฅผ ํด์ ํ๋ผ
- (Effective Java Item 8) Java - finalizer์ cleaner ์ฌ์ฉ์ ํผํ๋ผ
- (Effective Java Item 9) Java - tryโfinally๋ณด๋ค๋ tryโwithโresources๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 10) Java โ equals๋ ์ผ๋ฐ ๊ท์ฝ์ ์ง์ผ ์ฌ์ ์ํ๋ผ
- (Effective Java Item 11) Java โ equals๋ฅผ ์ฌ์ ์ํ๋ ค๊ฑฐ๋ hashCode๋ ์ฌ์ ์ํ๋ผ
- (Effective Java Item 12) Java - toString์ ํญ์ ์ฌ์ ์ํ๋ผ
- (Effective Java Item 13) Java โ clone ์ฌ์ ์๋ ์ฃผ์ํด์ ์งํํ๋ผ
- (Effective Java Item 14) Java โ Comparable์ ๊ตฌํํ ์ง ๊ณ ๋ คํ๋ผ
- (Effective Java Item 15) Java โ ํด๋์ค์ ๋ฉค๋ฒ์ ์ ๊ทผ ๊ถํ์ ์ต์ํํ๋ผ
- (Effective Java Item 16) Java โ public ํด๋์ค์์๋ public ํ๋๊ฐ ์๋ ์ ๊ทผ์ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 17) Java โ ๋ณ๊ฒฝ ๊ฐ๋ฅ์ฑ์ ์ต์ํํ๋ผ
- (Effective Java Item 18) Java โ ์์๋ณด๋ค๋ ์ปดํฌ์ง์ ์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 19) Java โ ์์์ ๊ณ ๋ คํด ์ค๊ณํ๊ณ ๋ฌธ์ํํ๋ผ. ๊ทธ๋ฌ์ง ์์๋ค๋ฉด ์์์ ๊ธ์งํ๋ผ
- (Effective Java Item 20) Java โ ์ถ์ ํด๋์ค๋ณด๋ค๋ ์ธํฐํ์ด์ค๋ฅผ ์ฐ์ ํ๋ผ
- (Effective Java Item 21) Java โ ์ธํฐํ์ด์ค๋ ๊ตฌํํ๋ ์ชฝ์ ์๊ฐํด ์ค๊ณํ๋ผ
- (Effective Java Item 22) Java โ ์ธํฐํ์ด์ค๋ ํ์ ์ ์ ์ํ๋ ์ฉ๋๋ก๋ง ์ฌ์ฉํ๋ผ
- (Effective Java Item 23) Java โ ํ๊ทธ ๋ฌ๋ฆฐ ํด๋์ค๋ณด๋ค๋ ํด๋์ค ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ํ์ฉํ๋ผ
- (Effective Java Item 24) Java โ ๋ฉค๋ฒ ํด๋์ค๋ ๋๋๋ก static์ผ๋ก ๋ง๋ค๋ผ
- (Effective Java Item 25) Java โ ํฑ๋ ๋ฒจ ํด๋์ค๋ ํ ํ์ผ์ ํ๋๋ง ๋ด์ผ๋ผ
- (Effective Java Item 26) Java โ ๋ก ํ์ ์ ์ฌ์ฉํ์ง ๋ง๋ผ
- (Effective Java Item 27) Java โ ๋น๊ฒ์ฌ ๊ฒฝ๊ณ ๋ฅผ ์ ๊ฑฐํ๋ผ
- (Effective Java Item 28) Java โ ๋ฐฐ์ด๋ณด๋ค๋ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 29) Java โ ์ด์์ด๋ฉด ์ ๋ค๋ฆญ ํ์ ์ผ๋ก ๋ง๋ค๋ผ
- (Effective Java Item 30) Java โ ์ด์์ด๋ฉด ์ ๋ค๋ฆญ ๋ฉ์๋๋ก ๋ง๋ค๋ผ
- (Effective Java Item 31) Java - ํ์ ์ ์์ผ๋์นด๋๋ฅผ ์ฌ์ฉํด API ์ ์ฐ์ฑ์ ๋์ด๋ผ
- (Effective Java Item 32) Java - ์ ๋ค๋ฆญ๊ณผ ๊ฐ๋ณ์ธ์๋ฅผ ํจ๊ป ์ธ ๋๋ ์ ์คํ๋ผ
- (Effective Java Item 33) Java โ ํ์ ์์ ์ด์ข ์ปจํ ์ด๋๋ฅผ ๊ณ ๋ คํ๋ผ
- (Effective Java Item 34) Java - int ์์ ๋์ ์ด๊ฑฐ ํ์ ์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 35) Java - ordinal ๋ฉ์๋ ๋์ ์ธ์คํด์ค ํ๋๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 36) Java โ ๋นํธ ํ๋ ๋์ EnumSet์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 37) Java โ ordinal ์ธ๋ฑ์ฑ ๋์ EnumMap์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 38) Java โ ํ์ฅํ ์ ์๋ ์ด๊ฑฐ ํ์ ์ด ํ์ํ๋ฉด ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 39) Java โ ๋ช ๋ช ํจํด๋ณด๋ค ์ ๋ํ ์ด์ ์ ์ฌ์ฉํ๋ผ[Effective Java Item 39]
- (Effective Java Item 40) Java โ @Override ์ด๋ ธํ ์ด์ ์ ์ผ๊ด๋๊ฒ ์ฌ์ฉํ๋ผ
- (Effective Java Item 41) Java โ ์ ์ํ๋ ค๋ ๊ฒ์ด ํ์ ์ด๋ผ๋ฉด ๋ง์ปค ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 42) Java โ ์ต๋ช ํด๋์ค๋ณด๋ค๋ ๋๋ค๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 43) Java โ ๋๋ค๋ณด๋ค๋ ๋ฉ์๋ ์ฐธ์กฐ๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 44) Java - ํ์ค ํจ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 45) Java - ์คํธ๋ฆผ์ ์ฃผ์ํด์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 46) Java - ์คํธ๋ฆผ์์๋ ๋ถ์์ฉ ์๋ ํจ์๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 47) Java - ๋ฐํ ํ์ ์ผ๋ก๋ ์คํธ๋ฆผ๋ณด๋ค ์ปฌ๋ ์ ์ด ๋ซ๋ค
- (Effective Java Item 48) Java โ ์คํธ๋ฆผ ๋ณ๋ ฌํ๋ ์ฃผ์ํด์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 49) Java โ ๋งค๊ฐ๋ณ์๊ฐ ์ ํจํ์ง ๊ฒ์ฌํ๋ผ
- (Effective Java Item 50) Java โ ์ ์์ ๋ฐฉ์ด์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค๋ผ
- (Effective Java Item 51) Java โ ๋ฉ์๋ ์๊ทธ๋์ฒ๋ฅผ ์ ์คํ ์ค๊ณํ๋ผ
- (Effective Java Item 52) Java โ ๋ค์ค์ ์๋ ์ ์คํ ์ฌ์ฉํ๋ผ
- (Effective Java Item 53) Java โ ๊ฐ๋ณ์ธ์๋ ์ ์คํ ์ฌ์ฉํ๋ผ
- (Effective Java Item 54) Java - null์ด ์๋, ๋น ์ปฌ๋ ์ ์ด๋ ๋ฐฐ์ด์ ๋ฐํํ๋ผ
- (Effective Java Item 55) Java โ ์ต์ ๋ ๋ฐํ์ ์ ์คํ ํ๋ผ
- (Effective Java Item 56) Java โ ๊ณต๊ฐ๋ API ์์์๋ ํญ์ ๋ฌธ์ํ ์ฃผ์์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 57) Java โ ์ง์ญ๋ณ์์ ๋ฒ์๋ฅผ ์ต์ํํ๋ผ
- (Effective Java Item 58) Java โ ์ ํต์ ์ธ for๋ฌธ๋ณด๋ค๋ forโeach๋ฌธ์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 59) Java โ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ตํ๊ณ ์ฌ์ฉํ๋ผ
- (Effective Java Item 60) Java โ ์ ํํ ๋ต์ด ํ์ํ๋ค๋ฉด float์ double์ ํผํ๋ผ
- (Effective Java Item 61) Java โ ๋ฐ์ฑ๋ ๊ธฐ๋ณธ ํ์ ๋ณด๋ค๋ ๊ธฐ๋ณธ ํ์ ์ ์ฌ์ฉํ๋ผ
- (Effective Java Item 62) Java โ ๋ค๋ฅธ ํ์ ์ด ์ ์ ํ๋ค๋ฉด ๋ฌธ์์ด ์ฌ์ฉ์ ํผํ๋ผ
- (Effective Java Item 63) Java โ ๋ฌธ์์ด ์ฐ๊ฒฐ์ ๋๋ฆฌ๋ ์ฃผ์ํ๋ผ
- (Effective Java Item 64) Java โ ๊ฐ์ฒด๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํด ์ฐธ์กฐํ๋ผ
- (Effective Java Item 65) Java โ ๋ฆฌํ๋ ์ ๋ณด๋ค๋ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 66) Java โ ๋ค์ดํฐ๋ธ ๋ฉ์๋๋ ์ ์คํ ์ฌ์ฉํ๋ผ
- (Effective Java Item 67) Java โ ์ต์ ํ๋ ์ ์คํ ํ๋ผ
- (Effective Java Item 68) Java โ ์ผ๋ฐ์ ์ผ๋ก ํต์ฉ๋๋ ๋ช ๋ช ๊ท์น์ ๋ฐ๋ฅด๋ผ
- (Effective Java Item 69) Java โ ์์ธ๋ ์ง์ง ์์ธ ์ํฉ์๋ง ์ฌ์ฉํ๋ผ
- (Effective Java Item 70) Java โ ๋ณต๊ตฌํ ์ ์๋ ์ํฉ์๋ ๊ฒ์ฌ ์์ธ๋ฅผ, ํ๋ก๊ทธ๋๋ฐ ์ค๋ฅ์๋ ๋ฐํ์ ์์ธ๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 71) Java โ ํ์ ์๋ ๊ฒ์ฌ ์์ธ ์ฌ์ฉ์ ํผํ๋ผ
- (Effective Java Item 72) Java โ ํ์ค ์์ธ๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Java Item 73) Java โ ์ถ์ํ ์์ค์ ๋ง๋ ์์ธ๋ฅผ ๋์ง๋ผ
- (Effective Java Item 74) Java โ ๋ฉ์๋๊ฐ ๋์ง๋ ๋ชจ๋ ์์ธ๋ฅผ ๋ฌธ์ํํ๋ผ
- (Effective Java Item 75) Java โ ์์ธ์ ์์ธ ๋ฉ์์ง์ ์คํจ ๊ด๋ จ ์ ๋ณด๋ฅผ ๋ด์ผ๋ผ
- (Effective Java Item 76) Java โ ๊ฐ๋ฅํ ํ ์คํจ ์์์ ์ผ๋ก ๋ง๋ค๋ผ
- (Effective Java Item 77) Java โ ์์ธ๋ฅผ ๋ฌด์ํ์ง ๋ง๋ผ
- (Effective Java Item 78) Java - ๊ณต์ ์ค์ธ ๊ฐ๋ณ ๋ฐ์ดํฐ๋ ๋๊ธฐํํด ์ฌ์ฉํ๋ผ
- (Effective Java Item 79) Java - ๊ณผ๋ํ ๋๊ธฐํ๋ ํผํ๋ผ
- (Effective Java Item 80) Java - ์ฐ๋ ๋๋ณด๋ค๋ ์คํ์, ํ์คํฌ, ์คํธ๋ฆผ์ ์ ์ฉํ๋ผ
- (Effective Java Item 81) Java - wait์ notify๋ ๋์์ฑ ์ ํธ๋ฆฌํฐ๋ฅผ ์ ์ฉํ๋ผ
- (Effective Java Item 82) Java - ์ฐ๋ ๋ ์์ ์ฑ ์์ค์ ๋ฌธ์ํํ๋ผ
- (Effective Java Item 83) Java - ์ง์ฐ ์ด๊ธฐํ๋ ์ ์คํ ์ฌ์ฉํ๋ผ
- (Effective Java Item 84) Java - ํ๋ก๊ทธ๋จ์ ๋์์ ์ฐ๋ ๋ ์ค์ผ์ค๋ฌ์ ๊ธฐ๋์ง ๋ง๋ผ
- (Effective Java Item 85) Java - ์๋ฐ ์ง๋ ฌํ์ ๋์์ ์ฐพ์ผ๋ผ
- (Effective Java Item 86) Java - Serializable์ ๊ตฌํํ ์ง๋ ์ ์คํ ๊ฒฐ์ ํ๋ผ
- (Effective Java Item 87) Java - ์ปค์คํ ์ง๋ ฌํ ํํ๋ฅผ ๊ณ ๋ คํด๋ณด๋ผ
- (Effective Java Item 88) Java - readObject ๋ฉ์๋๋ ๋ฐฉ์ด์ ์ผ๋ก ์์ฑํ๋ผ
- (Effective Java Item 89) Java - ์ธ์คํด์ค ์๋ฅผ ํต์ ํด์ผ ํ๋ค๋ฉด readResolve๋ณด๋ค๋ ์ด๊ฑฐ ํ์ ์ ์ฌ์ฉํ๋ผ
- [๐(Effective Java Item 90) Java - ์ง๋ ฌํ๋ ์ธ์คํด์ค ๋์ ์ง๋ ฌํ ํ๋ก์ ์ฌ์ฉ์ ๊ฒํ ํ๋ผ]
- (Effective Kotlin Item 1) Kotlin - ๊ฐ๋ณ์ฑ์ ์ ํํ๋ผ
- (Effective Kotlin Item 2) Kotlin - ์๊ณ ์์ญ์ ์ ๊ฑฐํ๋ผ
- (Effective Kotlin Item 3) Kotlin - ๊ฐ๋ฅํ ํ ๋นจ๋ฆฌ ํ๋ซํผ ํ์ ์ ์ ๊ฑฐํ๋ผ
- (Effective Kotlin Item 4) Kotlin - ๋ณ์์ ์ค์ฝํ๋ฅผ ์ต์ํํ๋ผ
- (Effective Kotlin Item 5) Kotlin - ์ธ์์ ์ํ์ ๋ํ ๊ธฐ๋์น๋ฅผ ๋ช ์ํ๋ผ
- (Effective Kotlin Item 6) Kotlin - ์ฌ์ฉ์ ์ ์ ์ค๋ฅ๋ณด๋ค ํ์ค ์ค๋ฅ๋ฅผ ์ ํธํ๋ผ
- (Effective Kotlin Item 7) Kotlin - ๊ฒฐ๊ณผ๊ฐ ์์ ๊ฐ๋ฅ์ฑ์ด ์๋ ๊ฒฝ์ฐ ๋ ๊ฐ๋ฅ ๋๋ Result ๋ฐํ ํ์ ์ ์ ํธํ๋ผ
- (Effective Kotlin Item 8) Kotlin - use๋ฅผ ์ฌ์ฉํ์ฌ ๋ฆฌ์์ค๋ฅผ ๋ซ์๋ผ
- (Effective Kotlin Item 9) Kotlin - ๋จ์ ํ ์คํธ๋ฅผ ์์ฑํ๋ผ
- (Effective Kotlin Item 10) Kotlin - ๊ฐ๋ ์ฑ์ ๋ชฉํ๋ก ์ค๊ณํ๋ผ
- (Effective Kotlin Item 11) Kotlin - ์ฐ์ฐ์์ ์๋ฏธ๋ ํจ์์ ์ด๋ฆ๊ณผ ์ผ์นํด์ผ ํ๋ค
- (Effective Kotlin Item 12) Kotlin - ๊ฐ๋ ์ฑ์ ๋์ด๋ ค๋ฉด ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Kotlin Item 13) Kotlin - ํ์ ๋ช ์๋ฅผ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 14) Kotlin - ๋ฆฌ์๋ฒ๋ฅผ ๋ช ์์ ์ผ๋ก ์ฐธ์กฐํ๋ผ
- (Effective Kotlin Item 15) Kotlin - ํ๋กํผํฐ๋ ๋์์ด ์๋ ์ํ๋ฅผ ๋ํ๋ด์ผ ํ๋ค
- (Effective Kotlin Item 16) Kotlin - Unit?์ ๋ฐํ์ด๋ ์ฐ์ฐ์ ์ฌ์ฉํ์ง ๋ง๋ผ
- (Effective Kotlin Item 17) Kotlin - ์ด๋ฆ ์๋ ์ธ์ ์ฌ์ฉ์ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 18) Kotlin - ์ฝ๋ฉ ์ปจ๋ฒค์ ์ ์ค์ํ๋ผ
- (Effective Kotlin Item 19) Kotlin - knowledge๋ฅผ ๋ฐ๋ณตํ์ง ๋ง๋ผ
- (Effective Kotlin Item 20) Kotlin - ์ผ๋ฐ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ๋ณตํ์ง ๋ง๋ผ
- (Effective Kotlin Item 21) Kotlin - ์ผ๋ฐ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ ๋ ์ ๋ค๋ฆญ์ ์ฌ์ฉํ๋ผ
- (Effective Kotlin Item 22) Kotlin - ํ์ ๋งค๊ฐ๋ณ์์ ์๋์์ ํผํ๋ผ
- (Effective Kotlin Item 23) Kotlin - ์ ๋ค๋ฆญ ํ์ ์ ๋ณ์ฑ ํ์ ์ ์ฌ์ฉ์ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 24) Kotlin - ๊ณตํต ๋ชจ๋์ ์ถ์ถํด์ ์ฌ๋ฌ ํ๋ซํผ์์ ์ฌ์ฌ์ฉํ๋ผ
- (Effective Kotlin Item 25) Kotlin - ๊ฐ๊ฐ์ ํจ์๋ ํ๋์ ์ถ์ํ ์์ค์ผ๋ก ์์ฑํ๋ผ
- (Effective Kotlin Item 26) Kotlin - ๋ณ๊ฒฝ์ผ๋ก๋ถํฐ ์ฝ๋๋ฅผ ๋ณดํธํ๋ ค๋ฉด ์ถ์ํ๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Kotlin Item 27) Kotlin - API ์์ ์ฑ์ ๋ช ์ํ๋ผ
- (Effective Kotlin Item 28) Kotlin - ์ธ๋ถ API๋ฅผ ๋ํํ๋ ๊ฒ์ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 29) Kotlin - ๊ฐ์์ฑ์ ์ต์ํํ๋ผ
- (Effective Kotlin Item 30) Kotlin - ๋ฌธ์๋ก ๊ท์ฝ์ ์ ์ํ๋ผ
- (Effective Kotlin Item 31) Kotlin - ์ถ์ํ ๊ท์ฝ์ ์ค์ํ๋ผ
- (Effective Kotlin Item 32) Kotlin - ๋ณด์กฐ ์์ฑ์ ๋์ ํฉํ ๋ฆฌ ํจ์๋ฅผ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 33) Kotlin - ์ด๋ฆ ์๋ ์ ํ์ ์ธ์๋ฅผ ๊ฐ๋ ๊ธฐ๋ณธ ์์ฑ์ ์ฌ์ฉ์ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 34) Kotlin - ๋ณต์กํ ๊ฐ์ฒด ์์ฑ์ ์ํด DSL ์ ์๋ฅผ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 35) Kotlin - ์์กด์ฑ ์ฃผ์ ์ ๊ณ ๋ คํ๋ผ
- (Effective Kotlin Item 36) Kotlin - ์์๋ณด๋ค ํฉ์ฑ์ ์ ํธํ๋ผ
- (Effective Kotlin Item 37) Kotlin - ๋ฐ์ดํฐ ๋ฌถ์์ ํํํ ๋ data ํ์ ์๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Kotlin Item 38) Kotlin - ์ฐ์ฐ๊ณผ ํ๋์ ์ ๋ฌํ๋ ค๋ฉด ํจ์ ํ์ ์ด๋ ํจ์ํ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ
- (Effective Kotlin Item 39) Kotlin - ์ ํ๋ ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ํํํ๊ธฐ ์ํด sealed ํด๋์ค์ sealed ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ผ
- [(Effective Kotlin Item 40) Kotlin - ํ๊ทธ ํด๋์ค ๋์ ํด๋์ค ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ์ ํธํ๋ผ]
- [(Effective Kotlin Item 41) Kotlin - ์ด๊ฑฐํ ํด๋์ค๋ฅผ ์ฌ์ฉํด์ ๊ฐ ๋ชฉ๋ก์ ๋ํ๋ด๋ผ]
- [(Effective Kotlin Item 42) Kotlin - equals์ ๊ท์ฝ์ ์ค์ํ๋ผ]
- [(Effective Kotlin Item 43) Kotlin - hashCode์ ๊ท์ฝ์ ์ค์ํ๋ผ]
- [(Effective Kotlin Item 44) Kotlin - compareTo์ ๊ท์ฝ์ ์ค์ํ๋ผ]
- [(Effective Kotlin Item 45) Kotlin - API์ ํ์์ ์ด์ง ์์ ๋ถ๋ถ์ ํ์ฅ์ผ๋ก ์ถ์ถํ๋ ๊ฒ์ ๊ณ ๋ คํ๋ผ]
- [(Effective Kotlin Item 46) Kotlin - ๋ฉค๋ฒ ํ์ฅ ํจ์๋ฅผ ํผํ๋ผ]
- (Effective Kotlin Item 3) Kotlin - variable
- (Effective Kotlin Item 4) Kotlin - primitive types, literals, and operations
- (Effective Kotlin Item 5) Kotlin - control Flow: if, when, try, and while
- (Effective Kotlin Item 6) Kotlin - function
- (Effective Kotlin Item 7) Kotlin - for
- (Effective Kotlin Item 8) Kotlin - Null Safety and Nullable Types
- (Effective Kotlin Item 9) Kotlin - Class
- (Effective Kotlin Item 10) Kotlin - Extend
- (Effective Kotlin Item 11) Kotlin - Data Class
- (Effective Kotlin Item 12) Kotlin - Object
- (Effective Kotlin Item 13) Kotlin โ Exception
- (Effective Kotlin Item 14) Kotlin - Enum Classes
- (Effective Kotlin Item 15) Kotlin - Sealed Classes and Interfaces
- (Effective Kotlin Item 16) Kotlin - Annotation Classes
- (Effective Kotlin Item 17) Kotlin - Extensions
- (Effective Kotlin Item 18) Kotlin - Collections
- (Effective Kotlin Item 19) Kotlin - Operator Overloading
- (Effective Kotlin Item 20) Kotlin - The Beauty of the Type System
- (Effective Kotlin Item 21) Kotlin - Generic
- Reactive Programming - Reactive Streams
- Reactive Programming - Blocking I/O & Non-Blocking I/O
- Reactive Programming - Reactor Outline
- Reactive Programming - Marble Diagram
- Reactive Programming - Cold Sequence & Hot Sequence
- [Reactive Programming - Backpressure]
- [Reactive Programming - Sinks]
- [Reactive Programming - Scheduler]
- [Reactive Programming - Context]
- [Reactive Programming - Debugging]
- [Reactive Programming - Testing]
- [Reactive Programming - Operators]
- [Reactive Programming - Spring Webflux]
- [Reactive Programming - Annotation Based Controller]
- [Reactive Programming - Functional Endpoint]
- [Reactive Programming - Spring Data R2DBC]
- [Reactive Programming - Exception Handling]
- [Reactive Programming - WebClient]
- [Reactive Programming - Reactive Streaming Data Processing]
- ๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์ฌ์ฉ์ ์์ ๋ฐ๋ฅธ ๊ท๋ชจ ํ์ฅ์ฑ
- ๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ๊ฐ๋ต์ ์ธ ๊ท๋ชจ ์ถ์
- ๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น์ ์ค๊ณ
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์์ ํด์ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ํค-๊ฐ ์ ์ฅ์ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ๋ถ์ฐ ์์คํ ์ ์ํ ์ ์ผ ID ์์ฑ๊ธฐ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - URL ๋จ์ถ๊ธฐ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์น ํฌ๋กค๋ฌ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์๋ฆผ ์์คํ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ๋ด์ค ํผ๋ ์์คํ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์ฑํ ์์คํ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ๊ฒ์์ด ์๋์์ฑ ์์คํ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ์ ํ๋ธ ์ค๊ณ]
- [๊ฐ์ ๋ฉด์ ์ฌ๋ก๋ก ๋ฐฐ์ฐ๋ ๋๊ท๋ชจ ์์คํ ์ค๊ณ ๊ธฐ์ด 1 - ๊ตฌ๊ธ ๋๋ผ์ด๋ธ ์ค๊ณ]
๐ Clean Code๐ฅ
- (Clean Code 2) Clean Code - ์๋ฏธ ์๋ ์ด๋ฆ
- (Clean Code 3) Clean Code - ํจ์
- (Clean Code 4) Clean Code - ์ฃผ์
- (Clean Code 5) Clean Code - ํ์ ๋ง์ถ๊ธฐ
- (Clean Code 6) Clean Code - ๊ฐ์ฒด์ ์๋ฃ๊ตฌ์กฐ
- (Clean Code 7) Clean Code - ์ค๋ฅ ์ฒ๋ฆฌ
- (Clean Code 8) Clean Code - ๊ฒฝ๊ณ
- (Clean Code 9) Clean Code - ๋จ์ ํ ์คํธ
- (Clean Code 10) Clean Code - ํด๋์ค
๐ ๋ฆฌํฉํ ๋ง 2ํโญ
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ - ๋๋ ค์ง ์๋น์ค, ์ด๋๋ถํฐ ๋ด์ผ ํ ๊น
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ - ์ฑ๋ฅ์ ์ข์ฐํ๋ DB ์ค๊ณ์ ์ฟผ๋ฆฌ
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ์ธ๋ถ ์ฐ๋์ด ๋ฌธ์ ์ผ ๋ ์ดํด๋ด์ผ ํ ๊ฒ๋ค
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ๋น๋๊ธฐ ์ฐ๋, ์ธ์ ์ด๋ป๊ฒ ์จ์ผ ํ ๊น
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ๋์์ฑ, ๋ฐ์ดํฐ๊ฐ ๊ผฌ์ด๊ธฐ ์ ์ ์ก์์ผ ํ๋ค
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ IO ๋ณ๋ชฉ, ์ด๋ป๊ฒ ํด๊ฒฐํ์ง
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ์ค๋ฌด์์ ๊ผญ ํ์ํ ๋ณด์ ์ง์
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ๋ชจ๋ฅด๋ฉด ๋ต๋ตํด์ง๋ ๋คํธ์ํฌ ๊ธฐ์ด
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ์์ฃผ ์ฐ๋ ์๋ฒ ๊ตฌ์กฐ์ ์ค๊ณ ํจํด
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ ์ฒ์ ํด๋ณด๋ ์ฑ๋ฅ ํ ์คํธ๋ฅผ ์ํ ๊ธฐ๋ณธ ์ ๋ฆฌ
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ NoSQL ์ดํดํ๊ธฐ
- ์ฃผ๋์ด ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์์์ผ ํ ์ค๋ฌด ์ง์ โ DB๋ก ๋ถ์ฐ ์ ๊ธ ๊ตฌํํ๊ธฐ
- ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์ ๋ณตํด์ผ ํ ๊ฐ์ฒด ์งํฅ๊ณผ ๋์์ธ ํจํด - ๊ฐ์ฒด ์งํฅ
- ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์ ๋ณตํด์ผ ํ ๊ฐ์ฒด ์งํฅ๊ณผ ๋์์ธ ํจํด - ๋คํ์ฑ๊ณผ ์ถ์ ํ์
- ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์ ๋ณตํด์ผ ํ ๊ฐ์ฒด ์งํฅ๊ณผ ๋์์ธ ํจํด - ์ฌ์ฌ์ฉ: ์์๋ณด๋จ ์กฐ๋ฆฝ
- ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์ ๋ณตํด์ผ ํ ๊ฐ์ฒด ์งํฅ๊ณผ ๋์์ธ ํจํด - ์ค๊ณ ์์น: SOLID
- ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์ ๋ณตํด์ผ ํ ๊ฐ์ฒด ์งํฅ๊ณผ ๋์์ธ ํจํด - DI(Dependency Injection)์ ์๋น์ค ๋ก์ผ์ดํฐ
- ๊ฐ๋ฐ์๊ฐ ๋ฐ๋์ ์ ๋ณตํด์ผ ํ ๊ฐ์ฒด ์งํฅ๊ณผ ๋์์ธ ํจํด - ์ฃผ์ ๋์์ธ ํจํด
- [Real MySQL 8.0 - ์ธ๋ฑ์ค]
- [Real MySQL 8.0 - ์คํ ๊ณํ]
- [Real MySQL 8.0 - ์ํคํ ์ฒ]
- [Real MySQL 8.0 - ํธ๋์ญ์ ๊ณผ ์ ๊ธ]
- ๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(์ญํ , ์ฑ ์, ํ๋ ฅ ๊ด์ ์์ ๋ณธ ๊ฐ์ฒด์งํฅ) - ํ๋ ฅํ๋ ๊ฐ์ฒด๋ค์ ๊ณต๋์ฒด
- ๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(์ญํ , ์ฑ ์, ํ๋ ฅ ๊ด์ ์์ ๋ณธ ๊ฐ์ฒด์งํฅ) - ์ด์ํ ๋๋ผ์ ๊ฐ์ฒด
- [๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(์ญํ , ์ฑ ์, ํ๋ ฅ ๊ด์ ์์ ๋ณธ ๊ฐ์ฒด์งํฅ) - ํ์ ๊ณผ ์ถ์ํ]
- [๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(์ญํ , ์ฑ ์, ํ๋ ฅ ๊ด์ ์์ ๋ณธ ๊ฐ์ฒด์งํฅ) - ์ญํ , ์ฑ ์, ํ๋ ฅ]
- [๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(์ญํ , ์ฑ ์, ํ๋ ฅ ๊ด์ ์์ ๋ณธ ๊ฐ์ฒด์งํฅ) - ์ฑ ์๊ณผ ๋ฉ์์ง]
- [๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(์ญํ , ์ฑ ์, ํ๋ ฅ ๊ด์ ์์ ๋ณธ ๊ฐ์ฒด์งํฅ) - ๊ฐ์ฒด ์ง๋]