일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Kafka
- JPA
- 3-way handshaking
- 낙관적 락
- ocp
- buildSrc
- 비관적 락
- 자바
- MSA
- Dirty Checking
- 삭제 이상
- 데이터베이스
- null
- java
- 정규화
- 갱신 이상
- HTTP
- 자료구조
- Redis
- gatway
- Spring
- Kotlin
- 스레드 풀
- DB
- well-know port
- 캐시 오염
- AWS
- 페이지네이션
- 네트워크
- 삽입 이상
- Today
- Total
728x90
목록
728x90
Kotlin (6)
어 나 갱수.
오늘은 Kotlin에서 아주 유용한 게 사용되는 클래스인 Data Class에 대해 알아보겠습니다! Java와 다르게 Kotlin에서는 다양한 클래스들을 제공합니다. 그중 Data Class라는 클래스는 Java에서 개발자들이 불편했던 점을 완벽하게 개선해 줄 기능을 가지고 있는 클래스입니다. Data Class보통 데이터 전달을 위한 객체를 DTO(Data Transfer Object)라고 부릅니다. 구현 로직을 가지지 않고 순수 데이터만 가졌기 때문입니다. dto의 역할을 하는 클래스는 getter, setter의 역할이 필요하고, toString, equals와 같이 데이터를 출력하고 비교하는 기능도 필요합니다. Java에서는 이 모든 기능을 구현하려면 직접 구현해야 하지만, Kotlin에서는 직접..
오늘은 Kotlin을 사용하게 된다면 많이 사용하게 되는 리스트 정렬 관련된 함수들을 알아보겠습니다. Immutable 리스트 정렬 sorted() 함수는 데이터 변경이 되지 않는 리스트(Immutable)를 정렬할 때 사용합니다. sorted() 함수는 기존 리스트의 원본을 변경하지 않고 정렬된 리스트를 생성하여 리턴합니다. val list = listOf(20, 100, 5, 60, 40) val sortedList = list.sorted() println("List : $list") println("SortedList : $sortedList") 결과 List : [20, 100, 5, 60, 40] SortedList : [5, 20, 40, 60, 100] 원본은 list는 그대로 반환하고 s..
Kotlin으로 개발을 하다 보면 물음표(?)와 느낌표 두 개(!!)를 사용하는 경우가 많다. 두 개 모두 null의 사용과 관련되어 있는 문자이다. Kotlin의 특징 kotlin은 기본적으로 변수에 null 값을 넣지 못한다. 변수에 맞는 문자(? or !!)를 데이터 형식 뒤에 붙여주어야 한다. 물음표(?)의 사용 null이 들어올 수 있는 변수에는 타입뒤에 저렇게?를 붙여야 한다. var notNull:Int = null//오류 var notNull:Int? = null//정상 느낌표 두개(!!)의 사용 null값이 절대 들어오면 안 되는 경우에 붙여준다. var notNull:Int = 0//기본값은 null허용x var okNull:Int? = 10//null이 들어올 수 있음을 의미 notN..
UUID 란? 네트워크 상에서 교유성이 보장되는 id를 만들기 위한 표준 규약이다. UUID는 Universally Uniqure IDentifier의 약어이고 범용 고유 식별자라고 한다. 로컬에서 ID를 관리한다면 어떤 아이디들이 생성되었는지 확인한 후 중복을 체크하는 것이 가능하지만, 네트워크 상에서는 이야기가 다르다. "중복되는 확률이 0에 가까운, 매우 낮은 확률을 가지는 ID를 만드는 방법" 이 방법이 바로 UUID이다. UUID는 계속 생성되어도 중복이 생길 가능성이 0에 가깝다. UUID의 구성 UUID는 8-4-4-4-12 형태의 문자이다. 각 문자는 16진수 숫자이며, 예를 들면 아래와 같은 형태이다. 05474f5e-52fa-44a4-8a93-edf7e0634097 각 부분에 대한 설명..
springboot와 kotlin을 사용해서 멀티모듈세팅을 하면서 의존성을 어떻게 관리해야 하는지에 대한 고민이 생겼고 buildSrc모듈을 사용해서 의존성관리와 버전관리를 해보자는 생각이 들었다. 이 글에서는 gradle의 buildSrc에 대해 알아보는 시간을 가져보겠습니다. buildSrc란? 라이브러리 버전관리를 좀 더 편리하게 하기 위해 buildSrc를 활용할 수 있다. 왜 사용하지? buildSrc를 이용하면 build script를 더 쉽게 유지보수하고 가독성을 향상시킬 수 있습니다. dependencies { /* kotlin */ implementation(Dependencies.KOTLIN_JDK) implementation(Dependencies.KOTLIN_REFLECT) /* l..
자바와 코틀린을 비교했을 때 장점 하나를 꼽아보라면 빠지지 않고 나오는 것이 null처리에 관한 내용이다. 자바에서는 주로 if와 &&, || 등의 연산자들을 통해 null이 아닌 경우에 처리할 로직을 작성했다. 이에 비에서 코틀린에서는 null를 아주 간단하게 처리할 수 있다. 코틀린은 null이 될 수 있는 타입을 지원해 NullPointException 오류를 컴파일 시점에 감지할 수 있습니다. 자바에서는 null 체크를 할때 주로 if문이나 equals 구문을 사용했지만, 코틀린에서는 Nullable 연산자로 좀더 쉽게 null 체크가 가능합니다. Nullable types 선언 Null 객체를 선언할 때 변수 타입 옆에? 를 붙이면 Null 사용이 가능하도록 할당할 수 있고,? 가 붙지 않으면 ..