개발/Kotlin 2

[Kotlin] Kotest 정리

미루고 미루던 테스트코드 작성 막상 시작하려니 막막해서 정리를 해 보려고 한다. Intellij에서 테스트 클래스 생성은 아래와 같이 생성한다. class AccountControllerTest : ShouldSpec({ should("verify") { } should("test") { } }) 생성되면 이런 모습이다. 물론 수동으로 생성해도 된다. 테스트 코드 작성에 다른 클래스가 필요한 것은 아니며, 독립적으로 실행 가능하다. [Test styles] Kotest 에는 10가지의 테스트 작성 스타일이 존재하며 이는 코드 작성 스타일을 지정하는 것 뿐 기능상의 차이점은 없다. 사용하고 싶은 스타일을 테스트 클래스에서 상속받고, 부모 클래스의 생성자로 작성한 테스트코드를 넘겨주면 된다. https://..

개발/Kotlin 2023.03.19

[Kotlin] Immutable Collections, Mutable Collections

Immutable Collections 컬렉션 요소의 추가 및 수정이 불가능하다. (읽기전용) 때문에 Thread 작업 환경에서 안전하며, Mutable에 비해 메모리 효율적이다. 수정이 불필요한 컬렉션의 경우에는 Immutable로 선언하는것이 좋다. (외부 API로 부터 받아온 정보 등) Mutable Collections 기존 Java 컬렉션과 같이 요소 추가, 수정이 가능하다. Kotlin에서 listOf, SetOf 등의 메서드를 사용하여 생성되는 컬렉션은 Immutable하다. fun main() { val list = listOf() } val immutableList = listOf(3, 1, 2) val mutableList = mutableListOf() immutableList.add..

개발/Kotlin 2022.11.01