728x90

자바(JAVA)란 무엇인가?

자바는 선마이크로시스템즈라는 회사에서 최초 발표한 객체지향 프로그래밍 언어입니다.

티오베 프로그래밍 순위에 따르면 아직도 자바는 2위에 랭크하며 건재함을 가지고 있는 언어입니다.

자바 순위

자바 공식사이트에서는 아래 사진과 같이 자바 기술과 필요한 이유에 대해서 정리합니다.

JAVA 기술

자바의 특징은 무엇인가?

1. 객체지향언어

자바는 객체지향 언어로 하나하나의 재료들을 가지고 객체를 만들고 그 객체들을 모으고 연결하여 객체지향 프로그래밍(OOP) 개념으로 프로그램을 완성할 수 있게 합니다.

객체지향의 특징으로는 캡슐화, 상속 성 다형성을 지원합니다.

 

 

2. 이식성

어떠한 환경에서도 이식성이 뛰어나 프로그램 실행이 가능합니다.

예를 들어 자바 프로그램을 Window OS에서 실행하던 프로그램을 리눅스에서 실행해도 정상적으로 작동합니다.

즉 자바 실행환경(JRE)만 설치가 되어 있으면 어떠한 운영체제에서도 실행 가능합니다.

 

3. 메모리 자동관리(Garbage Collector)

다른 언어는 메모리를 사용하게 되면 해제를 시켜주는 명령어를 실행시켜주어야 메모리에 과부하가 걸리지 않는다.

하지만 자바는 메모리에 직접 접근할 수 없으므로 해제 명령어를 사용할 수 없습니다.

그렇다면 자바는 어떻게 메모리를 관리할 것 인지에 대해 의문이 생기실겁니다.

그렇게 나타난 것이 Garbage Collector 줄여서 GC라고 부릅니다. GC를 실행하여 메모리 사용을 마친 것들을 찾아 자바에서 메모리를 해제를 시켜줍니다.

그러므로 따로 메모리에 대해서 신경 쓰지 않고 관리를 안 해도 되어서 다른 언어보다 편리하게 사용하실 수 있습니다.

 

4. 함수적 스타일 코딩 지원

JAVA 8 함수적 프로그래밍이 가능한 람다식을 지원합니다.

 

람다식 장점

  • 코드를 간결하게 작성
  • 개발자의 의도가 명확해져 가독성이 향상
  • 함수를 따로 구현 없이 처리 가능

5. 멀티스레드 빠르게 구현

하나의 프로그램이 동시에 여러 작업을 처리해야 하는 경우, 병렬 처리가 가능한 멀티스레드를 구현해야 합니다.

자바는 멀티쓰레드 구현에 필요한 API를 제공해주어 멀티쓰레드를 빠르게 구현이 가능합니다.

 

6. 동적 로딩 지원

 

프로그램을 실행할 때 필요할 때마다 동적으로 메모리를 생성하고 필요 없는 메모리를 자동으로 해제시킵니다.

그러므로 큰 프로그램도 작은 메모리에서 실행이 가능합니다.

 

 

자바란 무엇이며 자바의 특징은 무엇인지에 대해서 정리를 해보았습니다.

코딩을 하면서 중요한 것은 제일 기초가 튼튼해야 한다고 생각합니다.

자바를 시작하시는 분들 또는 아직 자바를 정확히 모르셨던 분들은 자바에 대해서 정확하게 알고 가시길 바랍니다.

반응형

+ Recent posts