애노테이션 2

[Kotlin] 애노테이션 -2 (JKid 라이브러리를 통해 알아보기)

이전 글([Kotlin] 애노테이션 - 1 (적용과 사용 지점 대상))에서 이어집니다. 애노테이션을 활용한 JSON 직렬화 제어 직렬화(serialization)는 객체를 저장장치에 저장하거나 네트워크를 통해 전송하기 위해 텍스트나 이진 형식으로 변환하는 것이다. 반대로 역직렬화(deserialization)는 텍스트나 이진 형식으로 저장된 데이터로부터 원래의 객체를 만들어낸다. (직렬화/역직렬화 설명이 포함된 글 을 참고) 직렬화에는 JSON 형식이 자주 쓰인다. 자바와 JSON 을 변환할 때 Jackson(잭슨)라이브러리와 GSON(지슨) 라이브러리가 자주 쓰인다. 이들도 코틀린과 완전히 호환된다. JSON 직렬화를 위한 JKid 라는 순수 코틀린 라이브러리를 통해 공부해보자. (https://git..

Kotlin 2024.04.10

[Kotlin] 애노테이션 - 1 (적용과 사용 지점 대상)

오랜만에 Kotlin in Action 책을 다시 부수기로 했다. 우테코 첫 방학이기 때문! 이제 kotlin in action 의 10장 애노테이션과 리플렉션, 11장 DSL 만들기를 보면, Kotlin in Action 의 1, 2부를 모두 보게 된다. 애노테이션을 사용하면 라이브러리가 요구하는 의미를 클래스에게 부여할 수 있다. 코틀린에서 애노테이션을 사용하는 문법은 자바와 똑같지만, 애노테이션을 선언할 때 사용하는 문법은 자바와 약간 다르다. 애노테이션 선언 & 적용 메타데이터를 선언에 추가하면 애노테이션 프로세서가 컴파일 타임/ 런타임에 적절한 처리를 해준다. 메타데이터가 뭔데? 메타데이터(metadata)는 데이터에 대한 데이터라는 의미를 가지며, 특정 정보의 구조, 내용, 관계 등을 설명하는..

Kotlin 2024.04.10