728x90
728x170
코틀린의 개요
Kotlin 탄생 배경
목표
- 풀 스택 웹 개발, Android와 iOS 앱 그리고 임베디드, IoT 등 모든 개발을 다양한 플랫폼에서 개발할 수 있도록 하는 것
특징
- IDE(Android Studio의 모체)로 유명한 JetBrains 에서 개발하고 보급
- 코드가 간결하고 다재 다능하며 호환성이 높다.
- 문장 끝에 세미콜론은 옵션이다.
- Android Studio 에서 안드로이드 공식 언어로 추가
- 변수는 Nullable(널 값 사용 가능)과 NotNull로 나뉘는데, 변수 선언시 '?'를 붙여 Nullable로 만들 수 있다.
다양한 플랫폼
사용 가능한 플랫폼
- Kotlin/JVM : 자바 가상 머신 상에서 동작하는 앱을 만들 수 있다.
- Kotlin/JS : 자바 스크립트에 의해 브라우저에서 동작하는 앱을 만들 수 있다.
- Kotlin/Native : LLVM 기반의 네이티브 컴파일을 지원해 여러 타깃의 앱을 만들 수 있다.
Kotlin/Native에서의 타깃
- iOS (arm32, arm64, emulator x86_64)
- MacOS (x86_64)
- Android (arm32, arm64)
- Windows (mingw x86_64)
- Linux (x86_64, arm32, MIPS, MIPS little endian)
- WebAssembly (wasm32)
코틀린의 장점
- 자료형에 대한 오류를 미리 잡을 수 있는 정적 언어(Statically Typed)
- 정적 형식 : 컴파일러가 타입을 검증해준다.
- 널 포인터로 인한 프로그램의 중단을 예방할 수 있다.
- 보통 개발자들은 코틀린의 이런 특징을 'NPE에서 자유롭다' 라고 한다.
- NPE : Null Pointer Exception
- 데이터형 선언 시 널 가능한 형식과 불가능한 형식 지원
- 자바와 완벽하게 상호 운영이 가능하다.
- 아주 간결하고 효율적
- 함수형 프로그래밍과 객체 지향 프로그래밍이 모두 가능
- 세미콜론을 생략할 수 있다.
참고 사이트
728x90
그리드형(광고전용)
'Programming > Kotlin' 카테고리의 다른 글
[Kotlin] 널(Null) (0) | 2022.08.28 |
---|---|
[Kotlin] 자료형과 변수 (0) | 2022.08.27 |
[Kotlin] InteliJ IDEA 살펴보기 & main() 함수 (0) | 2022.08.26 |
[Kotlin] 자바 JDK 설치하기 / 환경 변수 설정하기 (0) | 2022.08.26 |
[Kotlin] 코틀린 한 눈에 알아보기 (0) | 2022.08.21 |
보일러플레이트(Boilerplate) (0) | 2021.04.05 |
함수에서 다양한 인자의 개수를 전달받기 (vararg 키워드) (0) | 2021.03.15 |
프로그램의 메모리 영역 (0) | 2021.03.13 |