본문 바로가기
반응형

프로그래밍/Kotlin5

[Kotlin] Data Class 이해하기 Data Class는 보통 네트워크 통신이나 DB 모델을 만들 때 주로 사용합니다. 오늘은 이 Data Class가 무엇이고 일반적인 Class랑 무슨 차이가 있는지 알아보겠습니다. Data Class란? 데이터 클래스는 데이터를 보관하기 위해 만들어진 클래스입니다. 데이터 클래스는 toString(), hashCode(), equals(), copy()메소드를 자동적으로 만들어줍니다. 아래와 같이 정의할 수 있습니다. data class User(val name: String, val age: Int) Data Class 특징 ⑴ 데이터 클래스의 생성자는 1개 이상의 프로퍼티를 선언해야 한다. ⑵ 데이터 클래스 앞에 abstract, open, sealed, inner를 붙일 수 없다. ⑶ 데이터 클래.. 2022. 5. 23.
[Kotlin] lateinit과 lazy란? - 지연 초기화를 통한 성능 개선 오늘은 Kotlin의 지연 초기화에 대해 알아봅시다. 초기화라는 말은 익숙하게 들어서 쉽게 이해할 수 있지만 지연(Lazy) 같은 경우는 프로그램에서는 기존과 다르게 다음과 같이 해석됩니다. 프로그램에서 Lazy는 퍼포먼스를 높이기 위해 처음부터 모든 것을 초기화하는 것이 아니라 필요한 순간까지 최대한 초기화를 지연시킨다는 의미로 사용한다. 지연 초기화는 왜 사용하는 것일까? 보통 class에서 변수를 초기화하면, 클래스 생성 시 해당 변수도 함께 생성되며 초기화됩니다. 그렇게 되면 클래스 객체를 생성할 때마다 해당 변수도 함께 초기화되기 때문에 바로 사용할 수 있다는 장점이 있습니다. 하지만 해당 변수를 바로 사용하지 않거나 꼭 사용하는 경우가 아니라면 클래스를 생성할 때마다 변수를 초기화하기 때문에 .. 2021. 12. 24.
[Kotlin] 코틀린(kotlin)의 장단점은 무엇일까? 현재 제가 가장 재미있어하고 좋아하는 언어는 Kotlin입니다. 사실Kotlin을 접한지는 1년도 되지 않았지만 처음 사용할 때 묘한 매력을 느꼈습니다. 그래서 개인 프로젝트를 진행할 때 웬만하면 kotlin과 java를 사용하고 있습니다. 하지만 kotlin을 사용은 하고 있지만 장점과 단점에 대해 너무 모호하게 알고 있다는 생각이 들어서 정리를 해야겠다는 생각을 했습니다. 특징과 철학 일단 장단점을 알아보기 전에 kotlin은 어떤 언어이고 특징을 가졌는지 알아봅시다. Kotlin은 JetBrains에서 개발한 JVM 위에서 동작하는 언어입니다. 현재는 안드로이드 공식 언어로 자리매김을 하였습니다. ✔ 특징 정적 타입 언어 - 모든 프로그래밍 구성 요소의 타입을 컴파일 시점에 알 수 있고 프로그램 안.. 2021. 11. 19.
[Kotlin] (번역, 요약) Clean Code with Kotlin 해당 글은 https://magdamiu.com/2021/08/23/clean-code-with-kotlin-2/ 를 요약과 개인적인 생각이 들어있습니다. (잘못된 부분이나 내용 개선에 관해서 피드백 환영합니다.) 이번 글에서는 우리는 Clean Code는 무엇인지 요약하고 의미 있는 이름을 정의하는 것의 중요성과 깨끗한 함수와 클래스를 작성하는 방법을 강조할 것입니다. 그리고 아래와 같은 3가지에 대해 자세히 알아볼 겁니다. immutablility의 장점 Kotlin의 오류 처리 방법 테스트 작성의 모범 사례 이 글이 끝나면 Clean Code가 무엇을 의미하는지 더 잘 이해하고 코드에 적용할 수 있는 팁과 트릭을 배우게 될 것입니다. What is Clean Code? 클린 코드는 읽을 수 있고 이.. 2021. 9. 1.
[Kotlin] Kotlin Collection 관련 유용한 함수 Android 개발을 하다 보면 필연적으로 collection이라는 자료구조를 많이 사용하게 됩니다. collection의 종류로는 List , Map, Set 이 있습니다. Kotlin의 Collection은 기본적으로 Mutable과 Immutable을 별개로 지원합니다. Mutable : 생성하면 추가, 삭제가 가능 Immutable : 생성하면 수정 불가 오늘은 이 collection에서 사용할 수 있는 유용한 함수들에 대해 정리해보려고 합니다. 🟩 sort collection의 각 요소들을 정렬해줍니다. fun main(args: Array) { val a: MutableList = mutableListOf(3, 2, 1) a.sort() //a.sorted() 는 새로운 collection을 .. 2021. 8. 28.
반응형

loading