HelloWorld

[Java/자바] 자바란 무엇인가

프로그래밍 언어/JAVA

컴퓨터 프로그램을 만드는 일을 프로그래밍(programming)이라고 합니다.

그렇다고 사람의 언어를 컴퓨터가 이해할 수는 없기 때문에 JAVA, C, C++, C#등의 프로그래밍 언어를 사용하고,

프로그래밍 언어 문법에 잘 맞는지 확인하고 컴퓨터가 이해할 수 있는 언어로 번역해야 합니다.

이 작업이 컴파일(compile)이며 컴파일 작업을 하는 프로그램을 컴파일러(compiler)라고 합니다.

우리가 공부할 언어 자바(Java)는 프로그래밍 언어이고, 자바 개발 환경을 설치하면 컴파일러도 함께 설치됩니다.

 

과거 가장 많이 쓰이던 언어는 C, C++ 이었는데, 독립적으로 작동하는 더 안정된 프로그래밍 언어가 필요하여 개발된 언어가 자바 입니다.

 

자바의 특성

 

1. 플랫폼에 영향받지 않고 다양한 환경에서 사용 할 수 있다.

 

자바는 플랫폼에 종속되지 않는 프로그램을 개발할 수 있습니다.

자바에서 Example 이라는 이름의 프로그램을 만들고 컴파일하면 Example.class 라는 파일이 생성됩니다.

이 파일을 바이트 코드라 하며, 이 바이트 코드를 실행하려면 운영체제에 맞는 자바 가상 머신이 필요합니다.

운영체제에서 직접 실행하는게 아니라 가상머신에서 먼저 실행하고, 이 가상머신이 운영체제에 맞는 완벽한 실행 파일로 바꿔줍니다.

즉 .class 파일을 만들어 두면 플랫폼에 종속되지 않고 어느 환경에서나 실행할 수 있습니다. 그렇기에 다양한 운영체제가 공존하는 인터넷 환경에서 사용하기 적합한 언어입니다.

 

 

 

2. 객체 지향 프로그래밍 언어이기 때문에 유지보수가 쉽고 확장성이 좋다.

 

자바는 객체지향 언어입니다.

객체 지향 프로그래밍이란 일의 순서대로 프로그래밍하는 것이 아닌, 여러 객체의 협력을 통해 프로그램을 구현하는 것을 말합니다.

각 객체의 상호 관계를 이용하여 프로그래밍 함으로, 공통으로 사용하는 부분을 수정하지 않고도 프로그램에 새 기능을 쉽게 추가할 수 있습니다. 이 때문에 객체 지향 언어로 프로그램을 잘 설계한다면, 유지보수가 쉽고 확장성이 좋습니다.

 

 

3. 프로그램이 안정적입니다.

 

자바는 C나 C++처럼 포인터를 사용하지 않기 때문에 메모리를 직접 제어할 수 없습니다. 프로그램에서 메모리를 직접 제어하게되면 오류가 발생 할 수 있는데, 자바에서는 프로그래머가 직접 하지 않고 가비지 컬렉터(Garbage Collector)를 이용하므로 메모리를 효율적이고 안정되게 관리 할 수 있습니다.

가비지 컬렉터(Garbage Collector)란 : 이름 그대로 쓰레기를 수집하는 기능으로, 사용하지 않는 동적 메모리를 주기적으로 수거합니다.