일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 서비스 vs 쓰레드
- 클래스
- ar vr 차이
- android ar 개발
- 스택 큐 차이
- 멤버변수
- jvm 작동 원리
- 2022 플러터 설치
- ANR이란
- 자바 다형성
- 큐 자바 코드
- android retrofit login
- Rxjava Observable
- 플러터 설치 2022
- 안드로이드 os 구조
- 스택 자바 코드
- rxjava disposable
- 서비스 쓰레드 차이
- 안드로이드 라이선스 종류
- 안드로이드 레트로핏 사용법
- 안드로이드 유닛테스트란
- 안드로이드 라이선스
- jvm이란
- 안드로이드 유닛 테스트 예시
- rxjava cold observable
- 2022 플러터 안드로이드 스튜디오
- 안드로이드 유닛 테스트
- 객체
- rxjava hot observable
- 안드로이드 레트로핏 crud
- Today
- Total
목록책/Effective Kotlin (53)
나만을 위한 블로그
Null safety : 코틀린 주요 기능 중 하나. 이것으로 인해 자바에서 자주 보던 NPE는 거의 찾아보기 힘들다. 이런 매커니즘이 없는 자바, C 등의 언어와 코틀린을 연결해 사용할 땐 NPE가 발생할 수 있다. 자바에서 String을 리턴하는 메서드가 있고 코틀린에서 이걸 쓰려면 어떻게 해야 하는가? @Nullable이 붙어있으면 -> nullable로 추정하고 String?으로 바꾼다 @NotNull이 붙어있으면 -> String으로 바꾼다 아래처럼 어노테이션이 붙어있지 않은 경우는 어떻게 해아 하는가? public class JavaTest { public String giveName() { return ""; } } 자바에선 모든 것이 nullable일 수 있어서 nullable로 가정하고 ..
상태를 정의할 때는 변수와 프로퍼티의 스코프를 최소화하는 게 좋다. 프로퍼티보다는 지역 변수를 쓰는 게 좋다 최대한 좁은 스코프를 갖게 변수를 사용한다. 예를 들어 반복문 안에서만 변수가 쓰인다면 변수를 반복문 안에 작성하는 게 좋다 요소의 스코프 : 요소를 볼 수 있는 컴퓨터 프로그램 영역. 코틀린의 스코프는 기본적으로 중괄호로 만들어지며 내부 스코프에서 외부 스코프에 있는 요소에만 접근할 수 있다. fun main() { val a = 1 fun fizz() { val b = 2 println("a + b : ${a + b}") } val buzz = { val c = 3 print("a + c : ${a + c}") } } 위 예시에서 fizz, buzz()의 스코프에선 외부 스코프에 있는 변수에 ..
모듈 : 클래스, 객체, 함수, 타입 별칭(typealias), Top-level property 등 여러 요소로 구성됨 타입 별칭? https://kotlinlang.org/docs/type-aliases.html Type aliases | Kotlin kotlinlang.org 코틀린은 모듈로 프로그램을 설계한다. 요소 중 일부는 상태(state)를 가질 수 있다. 읽고 쓸 수 있는 var 프로퍼티를 쓰거나 mutable 객체를 쓰면 상태를 가질 수 있다. 상태를 갖게 하는 건 양날의 검이다. 시간 변화에 따라 변하는 요소를 표현할 수 있다는 건 유용하지만 상태를 적절하게 관리하는 게 어렵다. 프로그램 이해, 디버그가 힘들어짐 : 상태 변경이 많아지면 추적이 힘들다 -> 이런 클래스는 이해하기 어렵고..