Chapter 02(1). 카프카 설치하기(WSL 🐧)
1. WSL 설치 Microsoft 공식 문서 참고 2. Java 설치 및 확인 OpenJDK 설치 sudo apt update && sudo apt install openjdk-17-jdk Java 버전 확인 java -version 3. 작업 디렉토리 생성 home/<user>...
1. WSL 설치 Microsoft 공식 문서 참고 2. Java 설치 및 확인 OpenJDK 설치 sudo apt update && sudo apt install openjdk-17-jdk Java 버전 확인 java -version 3. 작업 디렉토리 생성 home/<user>...
데이터를 이동시키는 작업에 더 적은 노력을 들일수록 핵심 비즈니스에 더욱 집중할 수 있다. 1. 카프카란 무엇인가? 🤔 발행/구독 메시지 전달 시스템 메시지 큐를 관리하며 브로커를 통해 데이터를 발행자와 구독자 간에 중계 데이터 생성과 처리를 분리하고 효율적이고 유연하게 관리 1.1 발행/구독 시스템의 필요성 전통적인 방식은 ...
타입 안전 열거 패턴 vs 열거 타입 타입 안전 열거 패턴 public class Operation { public static final Operation PLUS = new Operation("+", (x, y) -> x + y); public static final Operation MINUS = new Operation(...
[책에 나온 예시] Plant 클래스 class Plant { enum LifeCycle { ANNUAL, PERENNIAL, BIENNIAL } final String name; final LifeCycle lifeCycle; Plant(String name, LifeCycle lifeCycle) { t...
비트 필드 열거 상수 열거한 값들이 집합으로 사용될 경우, 예전에는 각 상수에 서로 다른 2의 거듭제곱 값을 할당한 정수 열거 패턴을 사용해왔다. // 비트 필드 열거 상수 - 구닥다리 기법 public class Text { public static final int STYLE_BOLD = 1 << 0; public s...
전략 패턴 (Strategy Pattern) 이란? 전략 패턴은 전략을 쉽게 바꿀 수 있도록 해주는 디자인 패턴이다. 전략이란, 어떤 목적을 달성하기 위해 일을 수행하는 방식, 비즈니스 규칙, 문제를 해결하는 알고리즘 같은 문제를 해결하는 여러 알고리즘이 클래스별로 캡슐화되어 있다. 필요할 때 교체할 수 있도록 함으로...
서론 대부분의 열거 타입 상수는 자연스럽게 하나의 정숫값에 대응된다. 모든 열거 타입은 해당 상수가 그 열거 타입에서 몇번째 위치인지를 반환하는 ordinal 메서드를 제공한다. ordinal을 잘못 사용한 예 public enum Number { ONE, TWO, THREE, FOUR; public int convert...
정수 열거 패턴(int enum pattern) 열거 타입이 자바에 추가되기 전엔 정수 상수를 열거하는 취약한 방법을 사용했다. public static final int APPLE_FUJI = 0; public static final int APPLE_PIPPIN = 1; public static final int APPLE_GRANNY_SMIT...
서론 제네릭은 Set<E>, Map<K, V> 등의 컬렉션과 ThreadLocal<T> 등의 단일 원소 컨테이너에 흔히 쓰인다. 하나의 컨테이너에서 매개변수화 할 수 있는 타입의 수는 컴파일 타임에 고정된다. 더 유연한 수단이 필요할 때는? 타입 안전 이종 컨테이너 고정된 타입의 객체만 담을 수 있는 컨테...
가변인수와 제네릭 가변인수 메서드와 제네릭은 자바 5 때 함께 추가되었지만 잘 어우러지지 않는다. 🙅 가변인수 메서드 구현방식의 허점 🤔 가변 인수 메서드를 호출하면 가변인수를 담기 위한 배열이 자동으로 하나 만들어진다. 이 배열을 내부로 감췄어야 했는데, 클라이언트에 노출해버려서 제네릭이나 매개변수화 타입이 포함되면 컴파일 경고...