람다 ( Lambda ) 란? 함수형 인터페이스의 구현체를 간단히 표현하는 방식이다. 함수형 인터페이스 자바 8부터 추가된 단 하나의 추상 메서드를 가진 인터페이스다. 다만, default 메서드와 private 메서드는 예외로 한다. 람다의 형식 (람다 파라미터) -> { 람다 바디 }; 람다 파라미터 : 함수형 인터페이스의 매개변수 목록과 동일한 시그니처 람다 바디 : 추상 메서드와 같은 Return Type을 가진 함수 로직 람다의 형식 추론 람다는 사용되는 문맥 (Context)에 따라 람다의 형식 추론이 가능한데, 여기서 문맥은 함수형 인터페이스의 추상 메서드 시그니처를 얘기한다. 이러한 시그니처와 동일한 시그니처의 추상 메서드를 가진 인터페이스 타입을 추론하여 대체한다. 람다 캡쳐링 람다 표현..
자바 컴파일 자바 실행 과정 자바 파일(. java)을 자바 컴파일러(javac)를 통해 클래스 파일(. class : 바이트코드)로 컴파일한다. 컴파일된 클래스파일을 클래스 로더가 JVM 메모리 로딩시킨다. JIT 컴파일러가 핫스팟으로 정한 부분은 네이티브 코드 화해서 JVM 내부에 캐싱한다. 인터프리터가 한 줄씩 읽어가며 네이티브 코드로 컴파일하여 실행하는데, JIT 컴파일러가 컴파일한 코드 부분은 캐싱된 것을 사용한다. 자바 컴파일러 : javac JDK에 포함된 자바 컴파일러로 자바 언어사양(JLS) 을 충족하는 소스코드를 자바 가상 머신 사양(JVMS)에 맞는 바이트코드를 생성한다. 바이트코드는 JVM이 이해할 수 있는 바이너리 코드(기계어)다. options : 명령줄 옵션. sourcefil..
DAO ( Data Access Object ) 정의 DAO의 풀 네임은 Data Access Object 이다. 이름 그대로 데이터베이스에 접속하는 객체이다. 데이터베이스 접속 이라는 역할을 가진 다 수의 로직을 하나의 객체로 모아 관리가 쉽도록 해준다. VO ( Value Object ) 정의 값이 같은면 동일하다고 간주되는, 식별성 없는 객체 (예 : Address, Color ) JPA의 Value Type 혹은 일급 컬렉션 역시 Value Object의 한 종으로 포함 됨. DTO ( Data Transfer Object ) 정의 레이어, 네트워크등 데이터가 이동할 때 Data Holder 역할. Why? 원격 호출 시, 여러 데이터를 하나씩 보내는 것은 네트워크 호출및 코드의 가독성에 부정적인..
IS-A IS-A 는 ~ 이다 라는 의미를 가지고 있다. 설명하면, 상위 클래스와 하위 클래스의 관계에 있을 때 IS-A 라고 할 수 있다. 코드로 보면 아래와 같다. class Dog extends Mammalia{ //생략. } class Mammalia { // 생략... } 생물 분류법에서 개는 포유류이다. 위 코드에서 Dog 클래스는 Mammalia 클래스에 상속되는데 Dog 은 Mammalia 로 표현할 수 있다. 이 처럼 상위 클래스로 하위 클래스를 표현할 수 있는 관계를 IS-A 관계라고 하며, 자바에서 대표적으로 상속관계를 들 수 있겠다. Has-A Has-A 는 ~을 가지다 라는 의미다. 흔히 합성(Composition) 혹은 조합이라고 불리는데 A 클래스의 필드로 B 클래스를 가지고 ..
- Total
- Today
- Yesterday
- 외부 단편화
- 세션 불일치
- 장애 해결기
- Object Pool
- 객체 풀
- pass by value
- Session
- Memory Fragmentation
- 메모리 파편화
- 수직 분할
- java
- 클린 아키텍처
- 육각형 아키텍처
- 정적 타입 언어
- 동적 디스패치
- ATDD
- pool
- multimap
- 메모리 단편화
- 수평 분할
- OOP
- SpringBoot 2.2
- 뾰족함
- pass by reference
- RestAssured
- 내부 단편화
- 컴포짓 패턴
- Clean Architecture
- 동적 타입 언어
- Sticky Session
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |