본문 바로가기

안드로이드 프로그래밍/kotlin

[Android Studio] 01. 안드로이드와 코틀린

▼ 운영체제와 플래폼

- 안드로이드 플랫폼은 리눅스 운영체제 안에서 리눅스와 상호작용하면서 동작합니다.

 

https://developer.android.com/guide/platform

 

- 안드로이드 플랫폼의 구조를 보면, 리눅스 커널과 자바 API 프레임워크가 결합된 형태입니다.

- 과거에 안드로이드 플랫폼에 대한 설명에는 JVM (정확히 Dalvik VM) 이 항상 따라 붙었는데 자바 가상 머신 위에서 앱이 동작했기 때문입니다. 현재는 이를 대신해 안드로이드 런타임 (ART)을 사용합니다. 

- 따라서 JVM 이 없지만 여전히 가상머신 위에서 동작한다는 접에서 자바의 동작 구조를 차용하고 있습니다.

 

 

 

 

플랫폼 버전와 API 레벨

- 안드로이드는 사용하는 플랫폼 버전과 별개로 API 레벨이 있습니다.

- API : 개발자에게 안드로이드 플랫폼의 기능을 사용할 수 있게 제공하는 도구로, API 레벨에 따라서 새로운 기능이 추가되거나 코드 전체를 변경해야 하는 경우도 있습니다. 

 

* 짧은 업데이트 주기
안드로이드는 일 년에 한 번 정도, 메이저 버전이 업데이트되고 있습니다. 
메이저 버전이 바뀐다는 것은 새로운 버전의 안드로이드가 출시된다는 의미입니다.
하지만 새로운 버전으로 사용자가 옮겨 가는 데는 적오도 몇 년의 시간이 소요되기 때문에 항상 최신 버전에 맞춰서 개발할 필요는 없습니다. 

 

 

 

 

 

  함수형 프로그래밍 언어 코틀린

- 객체재향 프로그래밍은 클래스 내부에 있는 함수에서만 로직을 작성하지만, 함수형 프로그래밍은 이런 제한이 없이 어디에서나 작성할 수 있습니다.

 

 

   자바 코드 - 객체지향 프로그래밍

class Hello {
	public static void main(String args[]) {
    	System.out.print("hello world');
    }
}

   코틀린 코드 - 함수형 프로그래밍

System.out.print("hello world");

 

 

- 안드로이드 앱을 개발할 때는 코틀린도 객체재향 언어처럼 클래스 내에서 로직을 작성해야 합니다. 

  • 코틀린이 자바와 100% 호환 가능 -> 안드로이드는 자바와 코틀린을 동시에 지원하므로 자바의 형식에 맞춰 코틀린으로도 개발해야 합니다.
728x90
반응형