본문 바로가기
IT/자바

자바의 역사 및 특징

by 모찌 2018. 8. 20.






안녕하세요. 자바 프로그래밍 언어를 공부하기에 앞서 자바의 역사 및 특징에 대해 알아보려고 합니다. 





바란?


자바는 썬 마이크로시스템즈(Sun Microsystems, Inc) 에서 개발해 1995년 발표한 객체지향 프로그래밍 언어 입니다. 1991년 썬의 엔지니어들은 오크(Oak)라는 언어를 개발했습니다. 오크는 C++의 장점을 도입하고, 단점은 보완한 언어입니다. 인터넷이 발달하며 오크를 인터넷에 적합하게 바꾼 언어가 자바입니다. 현재 웹 애플리케이션 구축용으로 자바가 인기를 얻고있습니다.







자바의 특징


운영체제에 독립적 입니다.

프로그램은 운영체제에서 실행됩니다. 한 운영체제에서 최적화 되어 실행할 수 있는 프로그램은 다른 운영체제에서는 실행 할 수 없는 것이 일반적입니다. '이것을 프로그램은 운영체제에 종속적이다.' 라고 합니다. 하지만 자바 언어로 개발된 프로그램은 자바가상머신(JVM)을 통해 변환 되어 해당 운영체제에서 실행됩니다. 그러므로 자바 실행 환경(JRE:Java Runtime Environment)이 설치 되어 있는 모든 운영체제에서 실행 가능 합니다.


객체지향언어 입니다.

부품에 해당하는 객체를 먼저 만들고 이것들을 조립해 나가며 전체를 프로그래밍 하는 기법을 객체지향 프로그래밍 이라고 합니다. 자바는 객체지향 프로그래밍 언어(Object-Oriented Pro-gramming Language) 입니다.


자동 메모리 관리(Garbage Collection)

자바는 가비지 컬렉터(Garbage Collectior)가 존재해, 사용하지 않는 객체를 제거해 줍니다. 이는 가비지 컬렉터가 메모리 관리를 담당해 프로그래머의 수고를 덜어 준다는 것을 의미 합니다. 자바언어로 프로그래밍 할때 보다 프로그래밍에 집중하게 해 줍니다.


동적 로딩(Dynamic Loading)을 지원합니다.

자바는 동적 로딩을 지원합니다. 전체를 모두 로딩할 필요 없이 필요한 시점에 필요한 클래스를 동적 로딩하여 객체를 생성합니다. 또한 유지보수를 해야 할 때, 전체를 다시 컴파일 하지 않고, 해당 클래스만 수정하면 됩니다. 


풍부한 API

자바는 오픈소스(Open Source) 언어 입니다. 풍부한 API를 참고해 개발하면, 개발 시간을 단축할 수 있으며 검증된 코드로 안전한 애플리케이션을 개발 할 수 있습니다.


네트워크와 분산처리를 지원합니다.

자바의 풍부한 API는 네트워크 관련 JAVA API를 제공해, 네트워크 프로그래밍을 보다 편리하게 할 수 있습니다.


멀티쓰레드를 지원합니다.

자바의 풍부한 API는 스레드 생성 및 제어와 관련된 JAVA API를 제공해, 멀티 쓰레드를 쉽게 구현할 수 있습니다.



자바를 처음 공부하면서 이 모든 내용을 한번에 이해할 수는 없는 것이 당연합니다. 차근차근 공부해 나가다 보면 나중에는 자바의 특징에 대해 모두 이해 할 수 있을 것 입니다. 







댓글