001. JAVA란 무엇인가?

슈레더·2021년 6월 19일
0

JAVA

목록 보기
1/1
post-thumbnail

JAVA란?

자바는 컴파일러(Compiler)를 통해 기계어로 변환되는 언어이다.

인터프리터와 컴파일러의 차이는 인터프리터는 한 줄씩 실행되는 반면 컴파일러는 모든 파일을 기계어로 변환하여 실행하는 구조를 가지고 있다. 그렇기 때문에 대부분의 경우 컴파일 과정을 거치는 언어들이 인터프리터 언어보다 빠른 속도를 보여준다.

JAVA의 특징

  • 이식성이 높은 언어

자바 이전의 언어들은 특정 CPU에서만 작동하거나(어셈블리) 특정 OS에 따라 다르게 작성해야 하는(C,C++)언어들이 대부분이었다. 자바는 이 부분의 문제를 해결하고자 JRE(Java Runtime Environment)가 설치되어 있는 모든 운영체제에서 실행이 가능하도록 만들어졌다.

  • 객체 지향 언어

자바는 OOP(Object Oriented Programming) 개념을 사용하는 언어이다. 객체는 프로그램이 동작하는 부품이라고 생각하면 될 것이다. 여러 부품(객체)들을 만들고 조립하여 하나의 프로그램을 실행하는 개념이 OOP이다.

  • 함수적 스타일 코딩 지원

최근에 함수형 프로그래밍 스타일이 대세를 이루고 있어 자바 또한 8버전부터 람다식을 지원하며 함수형 프로그래밍 스타일을 지원하기 시작하였다. 람다식을 사용하면 컬렉션의 요소를 필터링, 매핑, 집계 처리하는데 쉬워지고 코드가 간결해지는 장점이 있다.

  • 메모리 자동 관리

자바는 95년에 발표된 언어이고 C++를 개선하는 것 또한 여러 목표 중에 하나였다. 그래서 자바는 자동으로 메모리를 관리해주는 기능을 추가하였다. C, C++의 경우 메모리의 생성과 소멸을 개발자가 직접 설계해야 하였지만 자바는 가비지 컬렉터(Garbage Collector)를 실행시켜 자동으로 사용하지 않는 메모리를 수거한다. 이를 통해 개발자는 메모리 관리에 수고를 덜고 핵심코드에 집중할 수 있게 되었다.

profile
shreder0804

0개의 댓글