Reactive Programming이라는건 영단어 뜻 그대로 무언가에 반응하는 프로그래밍이라는 것이다. 무언가에 반응한다는건 대표적으로 이벤트들이 존재할 것이고, 이에 대한 대표적인 디자인 패턴인 옵저버 패턴이 있다. 1. Duality네이버 사전을 검색해보면 '이중성'이라는 단어로 나오며, 수학적인 용어로는 '쌍대성'이라고 한다. 꽤나 어려운 개념이니 글로 풀어쓰는것보다는 코드로 확인해보자. List list = Arrays.asList("a", "b", "c", "d", "e") for (Iterator iter = list.iterator(); iter.hasNext(); ) { System.out.println(iter.next()); } 크게 어려운것 없는 코드다. 문자열이 들어있는 리스트를 ..
1. Generic Type Intersection제네릭은 Bounded Type Parameter, Bounded Wildcard를 이용해 제네릭에 들어오는 타입을 제한할 수 있다. public class Test { public static void main(String args[]) { method01(new ArrayList()); method02(new ArrayList()); } //Bounded Type Parameter public static void method01(List list) { } //Bounded Wildcard public static void method02(List
1. Genericsjava5에서 부터 추가된 제네릭은 타입을 파라미터로 만들어 넘어오는 파라미터에 따라 다른 타입이 되게끔한다. 이로서 얻을 수 있는 이득은 타입이 동적으로 변하게 되기때문에 개발자가 직접 타입체크를 하고 타입 캐스팅을 하는 코드가 없어지게되어 정적인 타입 안전성을 확보할 수 있다. public class Test { public static void main(String[] arg) { MyOptional stringOptional1 = MyOptional.ofNullable("hello"); MyOptional stringOptional2 = MyOptional.ofNullable(123); } } class MyOptional { T t; private MyOptional(T t)..
토비의 스프링으로 유명한 토비님의 방송을 보고 정리를 시작한다. 1. Dispatch1. (특히 특별한 목적을 위해) 보내다 2. (편지・소포・메시지를) 보내다 3. 신속히 해...네이버 검색결과이다. 자바는 객체지향 프로그래밍언어로서 객체들간의 메세지 전송을 기반으로 문제를 해결하게된다. 메세지 전송이라는 표현은 결국 메서드를 호출하는것인데 그것을 dispatch라고 부르는 것이다.dispatch는 static dispatch와 dynamic dispatch가 있는데 static은 구현클래스를 이용해 컴파일타임에서부터 어떤 메서드가 호출될지 정해져있는것이고, dynamic은 인터페이스를 이용해 참조함으로서 호출되는 메서드가 동적으로 정해지는걸 말한다. public class Test { public s..
- Total
- Today
- Yesterday
- MySQL
- EffectiveJava
- Git
- JPA
- go-core
- frontcode
- 정규표현식
- http
- clean code
- db
- Design Pattern
- generics
- backend개발환경
- javascript
- code
- servlet
- mariadb
- toby
- OOP
- Spring
- TEST
- JavaScript Core
- Jackson
- java8
- DesignPattern
- java
- spring cloud
- programming
- frontend개발환경
- Kotlin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |