가치 있는 삶

안드로이드는 모바일 플랫폼의 한 종류로서 구글의 안드로이드 외에도 애플의 iOS, MS의 Window Mobile, RIM의 BlackBerry등이 있는데, 여기서 모바일 플랫폼을 한마디로 정의한다면 모바일 기기를 실행시키는 운영체제를 의미한다. 안드로이드는 모바일 Device를 위한 소프트웨어 플랫폼으로 지난 2007년 11월 세계 각국의 이동통신 관련 회사 연합체 "오픈 핸드셋 얼라이언스(OHA)에 의해 공개 되었고, 외부 응용 프로그램들에 대한 지원, 무료 개방형 소스 OS(운영체제)로서 안드로이드를 개발하고 촉진 시키기 위해 결성된 것이다. 실직적으로는 구글(Google)이 안드로이드사를 인수하여 개발하였기 때문에 '구글 안드로이드' 라고 불리고 있는 것이다.


안드로이드 개요 및 특징


안드로이드는 모바일 Device를 위한 소프트웨어 플랫폼이다. 안드로이드 개발 라이브러리는 자바 라이브러리로 제공되고 자바(Java) 언어로 안드로이드 애플리케이션을 개발할 수 있는데 이때 자바 가상 머신(JVM)에서 동작하는 것이 아닌, 안드로이드 SDK 자체의 달빅(Dalvik) 가상 머신을 사용한다.
안드로이드가 스마트폰 전용 OS(운영체제) 라고 해서 휴대용 단말기 만을 위해 만들어진 것은 아니다. 프로그래밍 언어의 한 종류인 자바(Java)와 안드로이드 개발을 위한 IDE(통합환경개발)을 사용하여 만들어진 많은 애플리케이션이 실행될 수 있도록 구성된 플랫폼이기 때문이다. 


안드로이드 OS(운영체제) 버전은 2007년 11월 안드로이드 알파 버전부터 시작했다. 이후 새로운 추가 기능과 일반적인 버그 수정 등을 업데이트 한 것이다. 2008년 9월 첫 번째 상용 버전 안드로이드 1.0(API 1)이 릴리스 되었으며 2009년 2월 첫 번째 업데이트 버전 안드로이드 1.1(API 2)이 출시 되었고, 특정 코드 명은 없었지만 내부적으로 'Petit Four' 라고 불렸다. 안드로이드는 구글(Google)과 오픈 핸드셋 얼라이언스(OHA)에 의해 지속적인 개발, 업데이트를 하였고 안드로이드 버전 1.0 과 1.1까지는 특정 코드명을 사용하지 않아다. 여기서 말하는 코드명은 안드로이드의 각 버전을 뜻하는 명칭으로서 2009년 4월 1.5 컵 케익 버전으로 업데이트 되면서 정식 코드 명이 사용되기 시작했다. 현재 안드로이드 7.1.2 누가(Nougat) 버전이 사용되고 있는데, 2009년의 컵 케익 C에서 2016년 누가 의 N에 이를 때까지 알파벳 순으로 업데이트 된 것을 알 수 있다.


안드로이드 버전 업데이트 기록은 다음과 같다. 1.0(코드 명 없음) , 1.1 Petit Four(내부에서 불렸던 비공식 코드 명), 1.5 컵 케익(CupCake), 1.6 도넛(Donut), 2.0-2.1 이클레어(Eclair), 2.2-2.2.3 프로 요(Froyo), 2.3-2.3.7 진저 브레드(Ginger Bread), 3.1-3.2.6 벌집(Honeycomb), 4.0-4.0.4 아이스크림 샌드위치(Icecream Sandwich), 4.1-4.3.1 젤리 빈(Jelly Bean), 4.4-4.4.4 KitKat, 5.0-5.1.1 롤리팝(Lollipop), 6.0-6.0.1 마시멜로(Marshmallow), 7.0-7.1.2 누가(Nougat) 버전이다. 2017년 3월과 5월 안드로이드 O 8.0 베타 버전이 처음으로 공개되면서 정식 업데이트을 예고하고 있다.



안드로이드 5가지 특징

첫째, 안드로이드는 가장 대표적인 특징으로는 '오픈소스" 를 들 수 있다. 여기서 말하는 '오픈소스'의 의미는 단순하게 프래그램 개발에 필요한 '소스'를 공개하는 것에 그치는 것이 아닌, 그 어떤 누구라도 개발자가 되어 스마트폰을 만들 수 있는 모든 환경을 오픈(제공)한다는 의미이다. 이러한 특징은 안드로이드의 단점을 빠르게 개선하고, 전 세계의 많은 개발자들을 끌어들이는 효과를 발휘하게 됐다.






오픈소스를 말할 때 가장 먼저 떠올려지는 것으로 리눅스(Lirux)가 있다. 리눅스는 개발 초기 많은 라이브러리를 빠르고 효과적으로 제공하지 못해 오랫동안 Windows에 밀린 채 발전되어 왔다. 하지만 안드로이드는 스마트폰을 위한 완벽한 컴포넌트를 제공하였고 기본적인 기능을 만들기 위한 시간이 필요하지 않아 빠른 시간 안에 스마트폰 OS(운영체제)로 발전할 수 있었다.

둘째, 안드로이드 앱을 개발하는 프로그래밍 언어는 자바(Java)다. 자바는 여러 프로그래밍 언어중에서 가장 많은 개발자들이 사용하고 있으며, 세계 여러 대학의 학생들이 배우는 기본 언어이다. 안드로이드가 프로그래밍 언어로 자바(Java)를 사용한다는 것은 수 많은 애플리케이션 개발자들을 확보하고, 안드로이드 애플리케이션 개발 시장에 활력을 불어넣고 있다는 뜻과 일맥상통한다.

셋째, 안드로이드는 스마트폰을 위한 완벽한 컴포넌트를 제공한다. 개발자들은 미리 제공되고 있는 컴포넌트를 이용하여 손쉽게 애플리케이션을 개발 할 수 있다. 일부분만 제공하고 나머지는 개발자들에게 맡기는 형식이 아닌, 제공된 소스를 사용하면 누구나 쉽게 애플리케이션을 개발 할 수 있고 기존의 오픈소스가 가지고 있는 기본 라이브러리의 부족을 거의 완벽하게 극복하고 있다.

넷째, 애플리케이션 간 연동이 쉽다. 다른 애플리케이션에서 제공하는 기능을 쉽게 사용할 수 있다.

다섯째, 안드로이드 플랫폼에서 다양한 기능을 지원하고, OS(운영체제)는 빠르게 업데이트 되어 다양한 기능을 지속적으로 제공하고 있다. 안드로이드는 리눅스를 기반으로 하기 때문에 새로운 하드웨어가 나왔을 때 안드로이드에 탑재하는 것이 어렵지 않아 신기술을 쉽게 접목할 수 있다는 장점을 가지고 있다.