자바 프로그래밍 자바 특징
처음 프로그래밍 언어를 배울 때 C, Java 중에 하나를 배우게 됩니다. C는 포인터 개념이 어려워서 접근을 하지 못하는 분들도 있지만 자바의 경우에는 포인터가 존재하지 않습니다. 이 차이점이지만 자바를 공부해두면 안드로이드 프로그래밍을 하는데 많은 도움이 될 수 있습니다.
프로그래밍 언어 마다 특징이 있습니다. 특징을 제대로 이용을 한다면 최고의 프로젝트를 수행을 하는데 많은 도움이 될 수 있습니다. 자바 프로그래밍 자바 특징에 대해 소개하겠습니다.
자바(Java)에서 큰 특징은 플랫폼에 독립적인 언어라는 점이다. 운영체제에 제한적이지 않고 다양한 운영체제에서 실행이 가능합니다. 소스 코드를 머신코드로 컴파일하여 링크하는 C/C++과 달리 바이트코드인 클래스 파일(.class)을 생성하고, 이 파일을 일종의 에뮬레이터인 Java 가상머신 JVM이 해석해서 실행을 합니다. 자바 개발툴을 처음 설치를 할 때 JVM도 같이 설치가 됩니다.
C계열의 언어들은 윈도우에서 빌드한 프로그램을 그대로 리눅스나 Mac OS에서 실행하려 하면 오류가 나는 것이 일반적입니다. C계열의 언어는 자바 처럼 플랫폼 종속성이 높습니다. 자바(Java)로 작성된 프로그램은 플랫폼에 맞는 JVM만 설치되어 있다면 문제 없이 동작을 합니다.
Java코드 자체가 플랫폼 종속적이 아니고 가상머신 종속적이라는 점입니다. 프로그램 실행의 주체가 운영체제가 아닌 JVM이기 때문이며 이러한 점을 통틀어 플랫폼 종속성이 낮은 언어라고 표현을 합니다. 스마트폰 운영체제 중에 안드로이드도 이와 유사합니다.
JVM 기반의 프로젝트에서는 하나의 언어만을 선택을 하여 프로그래밍을 하지 않습니다. 다양한 프로그래밍 언어가 사용 될 수가 있습니다. 스크립트 언어(간결하고 짧은 소스코드)가 유리한 부분은 Groovy로 작업을 하고, 함수형 언어(최근 유행을 하는 빅데이터 등)가 유리한 부분은 Scala로 작업을 하며, 견고한 인터페이스와 대규모 통합이 필요한 곳은 Java로 작업한 뒤 이들을 서로 합쳐서 운영을 하는 것이 가능합니다. (Java에서 만든 객체를 Scala에서 그대로 사용하는게 가능합니다.)
실제로 현업에서는 Java와 통합해서 몇몇 인기 언어가 자주 사용이 됩니다. 각 각의 프로그래밍 언어에 대한 장단점을 알아두는게 좋습니다. 하나의 언어만 고집을 할 것이 아닌 카멜레온 처럼 환경이나 주어진 작업에 특성에 따라 적합한 언어를 선택을 할 수 있는 안목이 필요합니다. 프로그래밍 언어는 미래에도 새로운 언어들이 나올 수도 있습니다. 현재 사용을 하고 있는 프로그래밍 언어가 평생 사용을 할 수 있다는 보장을 하기에는 어려운 부분이 될 수 있습니다.
'IT' 카테고리의 다른 글
소스코드 블로그에 올리는 방법 (0) | 2017.09.07 |
---|---|
네이버 글자수세기 프로그램의 강점 (0) | 2017.09.07 |
자바스크립트 프로그래밍 소개 및 역사 (0) | 2017.09.06 |
블로그방문자늘리기 방법은 꾸준함이다 (0) | 2017.09.05 |
라즈베리파이 역사와 미래 (0) | 2017.09.03 |