전체 글

주로 개발에 대한 이야기들 Spring Kotlin k8s DB
안녕하세요~! ㅎㅎ 오늘은 kotlin 에서 Annotation 에 대해 알아보도록 할게요. 개발을 진행하다보면 custom 한 validation annotation 을 만들거나, spring aop 혹은 여러 유틸들을 만들때 유용하게 사용되는데요. Java 와는 약간 다른 컨셉으로 kotlin 에서는 정의되어 있다보니, 하나씩 차근차근히 봐보도록해요. Annotation kotlin 의 어노테이션을 코드와 함께 살펴보도록 해봅시다. @Target( AnnotationTarget.FIELD, AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.TYPE_PARAMETER, AnnotationTarget.P..
안녕하세요~! Coroutine 에서 제공하는 다양한 Interfa ce 중에서 Queue 와 비슷한 개념을 가진 Channel 에 대해서 알아볼려고 해요 Channel 이란 Channel 은 쉽게 말씀드리면 데이터를 stream 처럼 전송하기 위한 인터페이스라고 보시면 됩니다. 마치 Kafka 처럼 데이터를 제공하는 producer 와 데이터를 소비하는 consumer 의 형태로 구성됩니다. 위 그림처럼 인터페이스도 데이터를 제공하는 SendChannel 과 데이터를 소비하는 ReceiveChannel 로 이루어진 것을 볼 수 있죠. public interface SendChannel { public suspend fun send(element: E) } public interface ReceiveCh..
Coroutine 안녕하세요~ 오늘은 Coroutine 을 구현할 때 예외 처리에 대한 방법을 알아보도록 해볼려고 해요 흔히들 kotlin 에서는 try catch 문을 활용해서 예외를 핸들링 하거나 runCatching 문을 통해서 Result 객체를 기반으로 처리를 많이 하게 되는데요. Coroutine 에서는 직접적으로 예외를 catch 해서 하는 방식보다 다양한 방식으로 예외처리하는 유틸들을 제공한답니다. 하나씩 알아보도록 해보죠~! 🤗 Coroutine Hierarchy 예외에 대해 직접적으로 살펴보기전에 우리는 Coroutine 의 계층 구조를 알아볼 필요성이 있습니다. Coroutine 에서의 구조는 계층 구조를 띄고 있습니다. 부모로부터 호출된 coroutine 은 자식의 성격을 띄고, 자..
들어가며 안녕하세요~! ㅎㅎ JPA 를 사용하면서 개발하던 도중에, 필요한 컬럼들에 대해서만 쿼리를 만들면 db 에 performance 성능향상이 이루어지지 않을까? 하는 의문심에 JPA 의 query statement 의 생성방식에 대하여 공부하고 있었는데요. 왜냐하면 불필요한 컬럼까지 update 하는 경우, index 걸린 column 같은 경우에는 성능에 악영향이 있기 때문입니다. 그래서 document 를 찾고 찾다보니 JPA 에서는 update / insert statement 를 만들어줄 때 statement 자체를 caching 하여 항상 일관된 query 문을 제공한다고 하는데요. 오늘은 JPA Hibernate 를 사용하면서 의문이 들었던 Query statement caching 이..
안녕하세요 ^^ 우리는 이전 게시글들을 통하여 Coroutine 이 어떤 구조로 이루어져 있고, 어떤 방식으로 동작하게 되는 것인지를 알게 되었어요. [Kotlin] Coroutine - 2. CoroutineScope & Context & Dispathcer 을 파헤쳐보자 Coroutine 이전 시간에는 코루틴의 동작원리와 동시성 과 병렬성 의 차이에 대해 알아보았습니다. https://huisam.tistory.com/entry/coroutine1 [Kotlin] Coroutine - 1. 코루틴에서 동시성이란? 코루틴이란? 같은 프 huisam.tistory.com 이번에는 Coroutine 에서 활용되는 데이터 스트림인 Flow 에 대해서 학습하고 어떻게 활용할 수 있을지에 대해 배워보겠습니다. ..
Intellij 안녕하세요 ㅎㅎ 보통 서버 개발자분들은 Intellij 를 많이 사용하시어 개발을 하실텐데요. https://www.jetbrains.com/ko-kr/idea/ 기본 Intellij 만 사용하셔도 아주 좋지만~ 알아두면 알아둘수록 좋은 Tip 들을 정리할까 합니다. 대표적으로!! 오늘은 Intellij에서 유용한 플러그인들을 정리해볼까 합니다. 제가 개인적으로 생각하는 플러그인 추천을 평점 5점(★★★★★) 만점을 기준으로 정리하였습니다. 추천 플러그인 Rainbow Brackets 평점: ★★★★★ ( 5 / 5 ) https://plugins.jetbrains.com/plugin/10080-rainbow-brackets Rainbow Brackets - IntelliJ IDEs Pl..