코틀린 컬렉션은 자바 컬렉션과 똑같은 클래스이다. 표준 자바 컬렉션을 활용하면 자바 코드와 상호 작용하기 훨씬 더 쉽다. 각각의 언어에서 호출할 때, 컬렉션을 서로 변환할 필요가 없다.But, 코틀린에서는 자바보다 더 많은 기능을 쓸 수 있다.자바 컬렉션에는 기본적으로
함수를 선언할 때 fun 키워드 사용파라미터 이름 뒤에 그 파라미터의 타입을 쓴다.함수를 최상위 수준에 정의 가능/ 자바와 달리, 꼭 클래스 안에 함수를 넣을 필요가 없다.배열도 일반적인 클래스, 코틀린에는 자바와 달리 배열 처리를 위한 문법이 따로 없다.System.
프로듀서가 데이터가 데이터를 전송할 때 내부적으로 처리되는 단계는 다음과 같다. 카프카에 쓰려는 메시지를 갖는 ProducerRecord를 생성 (전송할 토픽과 값을 포함, 선택적으로 Key 값과 파티션 지정 가능)메세지 객체들이 네트워크로 전송될 수 있도
서버, 안드로이드 등 자바가 실행되는 모든 곳에서 사용코틀린은 타입추론 (Type inference)가 가능 → 모든 변수의 타입을 프로그래머가 직접 명시할 필요 없음자바와 마찬가지로 코틀린도 정작 타입 지정 언어정적 타입 지정이란 ?모든 프로그램 구성 요소의 타입을
중간처리 looping 메소드, 중간처리 단계에서 전체 요소를 루핑을 돌면서 추가적인 작업을 위해 사용마지막에 최종 처리 메소드가 실행되지 않으면 동작하지 않는다.최종처리 looping 메소드파이프라인 마지막에 루핑하면서 요소를 하나씩 처리forEach가 최종처리 메소
스트림(Stream)은 Java 8 버전 이후부터 추가되었으며, Collection과 배열의 저장요소를 하나씩 참조해서 람다식으로 처리할 수 있도록 도와주는 반복자Java 7 이전에는 Collection의 저장 요소를 참조하기 위해서 Iterator를 사용하였다. Ja
OOP를 보완하는 수단으로 흩어진 Aspect를 모듈화 할 수 있는 프로그래밍 기법Concerns는 여러 클래스들에 걸쳐서 나타나는 비슷한 코드들, Filed 주입들을 말한다..ex ) Transaction 처리, 성능관련 로깅 등⇒ 이처럼 공통된 로직, 코드들을 모듈
객체의 그래프를 조작하고 조회하는 기능을 제공문법은 EL (Unified EL)과 비슷하지만, 메소드 호출 및 문자열 템플릿 기능 등 추가적인 기능을 제공한다.OGNL, MVEL, JBoss EL 등의 Java에서 사용할 수 있는 여러 EL이 있지만, SpEL은 모든
org.springframework.validation.DatabinderProperty 값을 타겟 객체에 설장하는 기능이다.사용자의 입력 값을 Model 값에 동적으로 변환해서 넣어주는 기능이다.사용자가 입력하는 값은 대부분 문자열, 숫자 일 것이다. 그 값을 객체가
org.springframework.core.io.Resourcejava.net.URL을 추상화했다. → java.net.URL을 Spring core io Resource로 감싼 것기존 java.net.URL 에는 classpath를 기준으로 리소스를 읽어오는 기능이
ApplicationContext는 EnvironmentCapable이라는 인터페이스를 상속받는다.getEnvironment() 함수로 컴포넌트와 연관된 Environment 를 리턴한다.Bean들의 그룹Environment 의 역할은 Active할 Profile을
객체에 대한 제어 흐름을 직접 제어하는 게 아니라, 외부에서 관리하는 것 → 스프링 IoC 컨테이너를 사용 가능 (꼭 Spring 에서만 사용되는 것이 아니라, 일반 POJO에서도 코드로 구현 가능하다.)어떤 객체가 사용하는 의존 객체를 개발자가 직접 코드로 구현하는
메소드 지역 함수 1급 계층 함수 간단한 형태의 함수 리터럴 위치 표시자 문법 부분 적용한 함수 클로저 특별한 형태의 함수 호출 꼬리 재귀
if 표현식 while 루프 for 표현식 try 표현식 match 표현식 break, continue 문 없이 살기 변수 스코프 명령형 스타일 코드 리펙토링
6장에서는 함수형 객체의 변경이 불가능한 상태 특징에 대해 설명한다. 이를 위해 책에서 분수(유리수)를 나타내는 클래스로 예를 든다.객체 생명주기 동안 상태가 변하지 않기 때문에 객체의 내부 값을 추론하기 쉽다.내부 상태 변경이 불가능하기 때문에 메소드 인자로 전달을
java.lang 패키지에 있는 String 을 제외하면 모든 타입은 scala 패키지의 멤버기본 타입은 모두 리터럴(literal)로 적을 수 있다.Int, Long, Short, Byte에 사용10진수, 16진수 리터럴이 있다.0~9 로 이루어져있다.소수점이 있을