etc/코틀린_안드로이드
-
Kotlin Basic grammeretc/코틀린_안드로이드 2022. 10. 6. 18:15
Array Vs List Vs ArrayList ArrayList 를 쓰자. 1.Array : 배열 크기 고정 2.List : 읽기 전용 3. ArrayList = 둘 합친거 Lambda expression: Noname function 우리는 일상속에 있는 개념을 데이터와 로직 함수등으로 전환을 하고 이를 010101 과 같은 컴퓨터 언어로 바꾸는 작업을 하는 "객체지향"을 추구 한다. 코틀린은 자바를 대신하여 사용하는 안드로이드에서 공식적으로 인정한 언어 이므로 다음 개념 및 앞으로의 개념을 볼때 단순하게 문법을 보는게 아니라 어떻게 사용할지 생각 하고 보는것이 맞다라고 본다 . 자세한 문법은 공식 문서 및 다른 사람들의 블로그를 보면 잘 나와있다 . 그걸 보자. 1. 접근 제한자 접근 제한자를 왜 ..
-
-
Kotlin if vs when 성능 비교 ?etc/코틀린_안드로이드 2022. 9. 29. 20:17
1. if 문 when 문 비교 1 .Java 에서 switch 문은 컴파일러가 lookup table 을 만들어 준다 . Lookup table 이란 , index 가 저장된 테이블로 jvm 에서 빠르게 값을 찾아서 가져온다. if else 를 이용한 구문에서는 jump 가 들어가고 이는 평균적으로 switch 문보다 느리다. Kotlin 에서 when 문의 byte code 를 Decompile 한것을 보면 Compile 전 Kotlin 코드 fun strNum(x: Int?): String { return when (x) { 1 -> "one" 2 -> "one" else -> "??/" } } Decompile Java 코드 public static final String strNum(@Nulla..
-
Kotlin Nullableetc/코틀린_안드로이드 2022. 9. 29. 19:00
Kotlin 스터디를 하면서 깊게 파기 시작하면서 자바의 관한 지식도 같이 오르고 있다. 내부적 차이점을 아직 비교하기는 어려운데 컴파일러를 뜯어 보지 않는 이상은 어려울 듯 하다. Kotllin 은 Nullable 이라는 좋은 놈이 있다 왜냐? 코드를 보자 Null able 이 없던 시절 코드이다 val nullableName2: String = "Denis" if(nullableName2 != null) { println("Hello, ${nullableName2.toLowerCase()}.") println("Your name is ${nullableName2.length} characters long.") } else { println("Hello, Guest") } null check 을 빈번히..
-
Deep in to Kotlin(feat .android)etc/코틀린_안드로이드 2022. 9. 27. 17:28
코틀린을 배우기 전 다음과 같은 질문들이 있을거다. 1. Compile 순서 2. kotlin 의 자료구조, 자료형 생성 원리 - > Kotlin 에서 Java @프로세서로 생성되는 코드를 사용 하면 문제가 발생합니다. -> 컴파일 순서가 (코틀린 컴파일) -> ( 자바, 컴파일,어노테이션 프로세싱이다) ------------------------------------------------------------------------------------------ 2. kotlin 의 자료구조 자료형 . 코틀린의 자료형은 참조형만 사용을 한다. ------------------------------------------------------------------------------------------..
-
코틀린 자바 장단점 비교, Kotlin vs Javaetc/코틀린_안드로이드 2022. 9. 25. 15:09
이 글은 유데미 강의 Android 12 및 Kotlin 개발 완전 정복 을 보고 만든 글 입니다. 코틀린 단점을 먼저 봅시다. 단점 : 1. 컴파일 속도가 느리다. 안드로이드 어플리케이션을 위한 빌드를 생성한다면, 여전히 자바의 성능이 더 좋습니다. 컴파일 시, 자바로 변환하고 나서 바이트 코드로 변환하기 때문에 컴파일 속도가 상대적으로 느린 편입니다. 2. 자바와 비교하면 학습 생태계가 작은 편이다. 코틀린이 안드로이드 1st 언어로 지정되었다고 해도, 1995년에 나온 자바에 비해서는 역사가 매우 짧기 때문에 코틀린의 생태계 또한 작을 수밖에 없습니다. 개발 생태계가 작다는 것은, 커뮤니티나 오픈 소스를 통해 개발자 개인이 지원 받을 수 있는 기회도 더 적다는 의미입니다. 이는 아무래도 시간이 해결..
-
[코틀린 강의 정리]_loop sectionetc/코틀린_안드로이드 2021. 9. 28. 16:28
>>18 .kotlin Loopsfundamental : loop is fundamental in programming cause we control whole program by using loop to make different situation by same code by itteration of code and end predetermined under conditions using as like if or conditon statment :. if 문과 조건문을 조합한 반복문은 프로그램을 우리가 원하는 방향으로 만드는데 중요한 요소이다. 반복문은 크게 3 가지 while, do while , for 문으로 소개를 한다. simple way 1. while if the experssions eva..
-
uppercase(),버전 확인 문제etc/코틀린_안드로이드 2021. 9. 27. 17:50
유데미 코틀린 강의를 듣다가 문제가 생겼다. uppercase() 를 사용하고 싶지만 코틀린에서 읽지를 못했다. >> 문제 : uppercase 호출 불가 : unresolved reference > 코틀린 파일 문제 > touppercase 는 잘됨 null 처리문제 > x 버전 체크 https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/uppercase.html/ uppercase - Kotlin Programming Language kotlinlang.org 들어가 확인해보면 1.4 에는 uppercase() 가 없다 ! 추가 검색후 나온사실 이제 문자열과 문자의 대소문자를 변경하여 로케일의 구애를 받지 않는 새로운 API가 제공됩니다: upperca..