android를 대신하기 위해, 정확하게는 android안의 java를 대신하기 위해 만들어졌다는 kotlin..
주요 특징은 다음과 같다.
- 변수선언시 var, val (immutable) - 많은 부분이 scala에서 왔다.
- null safe : 심지어는 컴파일 에러가 난다.
- javascript를 섞어쓸수 있다 : 이때 장점은 잘 모르겠는데 WEB개발에 유리하지 않을까 예상되네요.
(당연히 node.js와도 섞어서 서버에도 사용가능함)
- kotlin + springBoot로 웹앱이 개발 가능하다.
물론 Mockito를 결합해 unit테스트 가능.
(단, 일반 class는 final개념이라 open class를 써야 함, when은 키워드라 `when`써야함)
- android폰 개발시에는 Glide등 편리한 Extension이 많다.
- Anko를 함께 사용하면 xml을 사용하지 않아도 된다. (AnkoComponent의 subclass를 사용),
AnKo=Android+Kotlin의 의미로 android용 DSL (Domain-Specific Language)임.
- 기타문법 : is , ? (instanceof, ?는 null대비)
let은 다소 어려움.