안드로이드 특징 (Android feature)

2011. 4. 3. 15:53카테고리 없음




@ 안드로이드 특징 (Android feature) 

 1. 운영체제의 핵심이라고 할 수 있는 커널(kernel)은 공개 운영체제(os)인 리눅스(linux)에 기반한다. 리눅스는 상당히 오랜기간 개발된 커널이므로 정교한 메모리 관리, 안정적인 멀티 스레드, 보안 등의 고급 기능을 공짜로 사용할 수 있다. 단, 모바일 환경에 어울리지 않은 크고 무거운 기능은 제거되었으며 알람, 디버거 등의 기능은 추가되었다. 리눅스를 모바일 환경에 맞게 개조한 것이다.

 2. 공식적으로 자바(java) 언어를 사용한다. 고수준의 언어이므로 생산성이 높으며 하드웨어 추상층을 제공하므로 전문 지식이 없어도 개발 가능하다. 다만 고급 언어이다 보니 성능이나 섬세함에서는 다소 불이익도 존재한다. 최근에는 C로 개발할 수 있는 NDK가 발표되고 더 많은 부분에 네이티브(native) 언어를 쓸 수 있도록 개선되고 있다.

 3. 검증된 많은 라이브러리들을 대거 포함하고 있어 웬만한 기능은 별도의 외부 라이브러리를 사용할 필요가 없다. 자바가 언어 차원에서 제공하는 라이브러리들 외에도 OpenGL, SQLite, FreeType 등의 써드파티 라이브러리까지 내장되어 있다. 오픈 소스 중에 쓸만한 것을 모두 집대성해 놓은 셈이다.

 4. 플랫폼에 내장된 빌트인(bulit-in) 프로그램과 사용자가 만든 프로그램이 동일한 API를 사용하므로 모든 프로그램은 평등하다. 원한다면 기본 제공되는 프로그램을 사용자가 원하는 것으로 언제든지 교체할 수 있다. 플랫폼을구성하는 요소들을 자유롭게 선택할 수 있다는 면에서 유연성이 뛰어나다.

 5. 개방된 환경인만큼 개발툴과 관련 문서들이 모두 무료로 제공된다. 심지어 운영체제의 핵심 소스까지도 대부분 공개되어 있다. 별도의 라이센스 비용이 들지 않으므로 단말기 가격이 저렴해지는 효과가 있으며 대중화에 유리해서 소프트웨어 수요도 많다.