Kotlin 목차
Language/Kotlin

Kotlin 목차

728x90
반응형

목차

 

Kotlin 자료형과 흐름제어

Kotlin 형변환과 널처리

Kotlin 표준(Scope)함수: apply, also, with, run, let

Kotlin 파일 입출력 (io/nio)

 

 

Kotlin 배열(Array), 문자열(String), 컬렉션(List/Set/Map)

Kotlin 컬렉션의 확장함수/시퀀스

Kotlin 제네릭

 

 

[Kotlin 객체지향 (1)] 클래스, 패키지, 모듈, 접근 제한자, 상속

[Kotlin 객체지향 (2)] 추상클래스(Abstract Class)와 인터페이스(Interface)

[Kotlin 객체지향 (3)] Data/ Sealed/ Enum /Inner /중첩 Class
[Kotlin 객체지향 (4)] 프로퍼티(지연초기화, 위임)와 정적변수(Companion 객체, 최상위함수, object 객체)

 

 

[Kotlin 함수형 (1)] 람다식, 익명함수, 고차함수

[Kotlin 함수형 (2)] 연산자 오버로딩 - inline(인라인), infix(중위)

 


 

Kotlin 개요 

Kotlin 동작원리

 

코틀린은 순수하게 개발자를 위한 언어입니다.

따라서 개발하기 아주 좋게 만들어졌습니다. 

만약 자바 개발 분야로 선택하면 작업은 코틀린으로 하지만 코틀린으로 만든 코드가 자바 코드로 변경되고, 컴파일되서 클래스 파일로 만들어지고 자바  VM 위에서 동작하게 됩니다.

만약 프로젝트를 바이너리코드 즉 c프로젝트를 선택하게되면 c코드로 만들게 되고 해당 os에 최적회되어져있는 실행파일로 만들어지게 됩니다.

만약 자바스크립트를 선택하게되면 해당 코드는 자바 스크립트 코드로 변환이 됩니다.   

 

코틀린은 개발자가 프로젝트를 만들때 어떠한 프로젝트로 만드냐에 따라서 코틀린으로 만든 코드가 해당 개발분야에 언어로 변경이 됩니다. 즉 개발자는 어떤 개발분야에 상관없이 똑같은 문법과 개발 언어로 개발하지만 어떤 프로젝트를 선택하냐에 따라서 결과물이 달라집니다.

코틀린의 이런 장점때문에 코틀린 하나의 언어로 다양한 분야의 개발이 가능하도록 설계가 되어져 있습니다.

코틀린 언어의 최종목표는 지구상의 모든 개발언어를 코틀린을 통해 가능하도록 하는 것 이라 합니다. 

현재는 Java대신 많이 사용하고 있지만 점점 다른 언어도로도 확장되고 있습니다. 

 

Kotlin 언어 특징

  • Java 언어와 비교하여 매우 간단한 문법을 제공합니다.
  • Null 안정성을 위해 null 허용 변수와 허용하지 않는 변수를 구분하여 사용할 수 있습니다.
  • 예외처리를 강제하지 않습니다.  따라서 필요하지 않는 상황에서 예외처리 하지 않아도 됩니다. 
  • 모든 기분 자료형 값을 객체로 관리합니다. 
  • 연산자의 재구현을 지원합니다. 새로운 연산 규칙을 만들어 사용 가능합니다. 
  • 객체지향 프로그래밍과 함수형 프로그래밍 방식 모두 사용이 가능합니다. 특정 매개체를 관리하여 사용할때만 객체지향을 사용하면 됩니다.

Kotlin 개발분야

  • Kotlin for Server Side : 서버개발을 위한 라이브러리 제공. Spring Framework 5부터 kotlin을 공식 지원.
  • Kotlin for Android : 안드로이드 개발시 가능. 구글이 일부러(?) Java에서 지원 안되는 부분이 있음
  • Kotiln for JavaScript : JavaScript, ECMAScript를 사용하는 웹분야 및 병렬처리에 능한 node.js 개발분야에서 사용 가능
  • Kotiln for Native : IOS, Mac, watchOs, rvOs, Android Native(NDK), Windows, Linux 등의 환경에서 사용할 수 있는 코드 작성이 가능
  • Kotlin for Data Science : 데이터 분석, 머신 러닝, 딥 러닝 개발 분야에서 사용이 가능(python 에서 쓰는 라이브러리와 매우 유사함)

 

 


개발 환경 구성하기

 

JDK 16.0 설치

 

www.oracle.com/java/technologies/javase-downloads.html

오라클 계정으로 로그인 한 후  Oracle JDK 최신 버전을 다운받습니다. 

 

 

Jetbrain의 inteliJ IDEA 다운로드

 

www.jetbrains.com/ko-kr/idea/download/download-thanks.html?platform=mac&code=IIC

 

설치 후 다음과 프로젝트를 만듭니다.  

 

project SDK 는 위에서 다운받아 설치한  jdk 16 을 선택하고 kotlin/jvm을 선택한 후 프로젝트 생성을 완료합니다. 

 

main.kt  파일을 만들고  main 함수에 hello world 를 프린트하는 코드를작성해줍니다. 

코드를 실행시키면 hello world가 잘 나오는 것을 확인 할 수 있습니다. 

 

 

 

 

참고: 코틀린 자바 동작 원리 보기

tools > Kotlin > Show Kotlin Bytecode 를 클릭 후 열린 파일에서 

바이트코드를 Decompile을 눌러보면 자바 코드를 확인 할 수 있다. 

정리하자면, 작성한 kotlin 코드가 자바 코드로 변경되고 클래스로 컴파일되서 실행되는 것을 확인할 수 있다. 

 

 

 

728x90
반응형