| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- 자료구조
- Compoae
- LinkedList
- PICO4
- kotlinClass
- kotlin
- 리컴포지션
- 안드로이드
- 아두이노
- 우송대
- 클래스
- Queue
- deque
- List
- 컴포즈
- 재정의함수
- 추상화함수
- Android
- 스택
- 우송대학교
- 라즈베리파이 피코
- Class
- Kotlin자료구조
- State Hoisting
- 개발 보드
- 큐
- 코틀린
- Stack
- 상태 호이스팅
- Kotlin LinkedList
- Today
- Total
목록kotlin (21)
개발자의 생활
코루틴 은 코틀린에서 비동기 처리를 쉽고 가볍게 할 수 있도록 제공하는 라이브러리입니다. 비동기 란순차적으로 실행되는 것을 동기 라고 합니다. 하지만 서비스를 개발하다 보면 네트워크를 통해 데이터를 주고받는 작업이 거의 필수적이지만 이런 작업은 시간이 얼마나 걸릴지 모른다는 것입니다. 그래서 이런 작업은 호출을 한 뒤에 언제 응답이 올지 모르기 때문에 미뤄놓고 다음 작업을 먼저 수행하고 응답이 왔을 때 이어서 수행하는 것을 비동기 작업이라고 합니다. 그럼 이런 작업이 어떻게 가능할까요? OS는 여러 개의 스레드를 가지고 있습니다. 스레드는 마치 여러 프로그램을 동시에 실행시킬 수 있는 것처럼 도와주는 역할을 합니다. 하지만 스레드 또한 개수가 제한적이고 사용할 때 비용이 크기 때문에 남용해서는 안됩니다...
서문자료구조에서 가장 대표적인 stack, queue, deque에 대해 알아보고 사용해 보도록 하겠습니다. 혹시라고 위 자료구조를 모르신다면 이전에 C언어 자료구조 파트에서 Array와 LinkedList를 사용해서 구현해 보고 동작방식을 포스팅한 적이 있으니 아래 링크에서 봐주시거나 유튜브에 잘 나와 있으니 사전에 학습해 주시기 바랍니다. '자료구조/C언어' 카테고리의 글 목록 han-studio.tistory.com(유튜브를 추천드립니다. ^^)1. kotlin에서는 stack, queue 기능을 제공하지 않는다.Kotlin의 철학은 실용성과 간결성인데 기본이 되는 자료구조를 제공하지 않는다는 건 정말 이상합니다.제공하지 않는다면 C언어처럼 직접 구현해서 사용하라는 것일까요? 당연히 아니겠죠 ㅎㅎ ..
1. 소개sealed class는 사실 abstract와 동일한 기능입니다. 다만 한 가지 추가된 제약기능이 있습니다.abstract 는 모든 파일에서 상속받아 사용할 수 있지만 sealed class는 해당 클래스가 위치한 파일 내에서만 상속을 받을 수 있고 외부에서는 접근 제체가 불가능합니다. 사실 이 설명만으로도 sealed class에 대한 설명은 다 했습니다.하지만 그래도 실제로 코드를 한번 보고 abstract 와의 추가적인 차이점을 직접 보여드리겠습니다.그리고 사실 거의 동일하다고 했지만 성격은 조금 다릅니다. 2. 사용법sealed class MySealed( var num: Int){ abstract fun countUp() abstract fun countDown()}c..
1. Enum 클래스 소개enum 클래스는 컴파일 시점에 객체를 상수처럼 만들어 놓고 사용할 수 있도록 하는 클래스입니다. 1. enum class의 기본 사용법enum class Book{ KOTLIN, JAVA, ANDROID}위 코드가 객체를 상수처럼 만들어 놓은 것입니다. 이 코드를 일반 클래스로 구현한 것을 보시면 쉽게 이해가 되실 겁니다.class EnumBook(){ companion object{ val KOTLIN = EnumBook() val JAVA = EnumBook() val ANDROID = EnumBook() }}위 코드를 보시면 companion object 내부에 정적 인스턴스를 만들고 있습니다. 이를 싱글턴이라고 하죠그..
Kotlin에서는 data class라는 새로운 클래스를 제공하고 있습니다. data class는 말 그대로 데이터를 위한 클래스입니다. 데이터를 다루기 위해 기본적인 로직이 구현되어 있고 데이터에 특화되어 있습니다. 그러면 구현되어 있는 기능을 하나씩 살펴보겠습니다.1. 기본 메서드1. toStringfun main(){ val book1 = Book("코틀린 책", 10_000) val str: String = book1.toString() println(str)}data class Book( var title: String, var price: Int) 출력 결과 이렇게 자동으로 필드값을 확인할 수 있게 문자열로 만들어주는 메서드가 자동으로 구현이 됩니다. 2. hashc..
Kotlin 에서도 중첩 클래스와 내부클래스 를 사용할 수 있습니다 중첩 클래스 는 클래스 내부에 또다른 클래스를 포함시키는 것입니다. 중첩 클래스는 큰 범위에 속하는 개념으로 내부적으로 다양한 방식이 존재합니다. 1. 중첩 클래스fun main(){ val inClass = OutClass.InClass("중첩 클래스") inClass.inClassPrint()}class OutClass(){ class InClass( private var inValue: String ){ fun inClassPrint(){ println(inValue) } }}Kotlin 에서 중첩 클래스를 만드는 방법은 아주 간단합니다. 클래스 내..