상위문서 : 정보기술
필수참고문서 :
1.문서개요
이 문서는 자바에 대한 기본 정보와 자바와 관련된 문서의 링크를 가지고 있습니다.
2.설명
자바는 프로그래밍언어이다. 자바로 만들어진 프로그램의 실행은 자바 가상 머신(JVM-자바 비주얼 머신)에 의하여 실행되는데 왜냐하면 자바로 만들어진 프로그램은 자바 가상 머신에서만 읽을 수 있는 바이트 코드(클래스(class) 파일)로 만들어지기 때문이다. 요약하면 자바로 만들어진 프로그램(바이트 코드)->JVM->기계어로 프로그램이 실행되는 것이다. 이는 장점이 될 수도 있고 단점이 될 수도 있다. 상세한 정보는 후술한다.
자바의 특성을 몇개 서술하면 이식성, 객체 지향 언어, 직접 주소값 참조 불가 등이 있다. 그리고 이름이 비슷한 자바스크립트와는 이름빼고 전혀 다른 언어이다.
자바의 특성을 몇개 서술하면 이식성, 객체 지향 언어, 직접 주소값 참조 불가 등이 있다. 그리고 이름이 비슷한 자바스크립트와는 이름빼고 전혀 다른 언어이다.
3. 자바의 장단점
3.1.장점
자바의 가장 큰 장점은 이식성이 뛰어나다는 점이다. 자바 가상머신만 있으면 윈도우에서 만들어진 프로그램을 리눅스나 맥에서도 실행이 가능하다. 더욱이 이는 CPU의 제약도 없다(CPU의 기계 명령어는 제조사별 CPU마다 다르다 이곳을 참조바람) 또 다른 장점으로는 현재(2017년 기준) 세계에서 가장 많이 쓰이는 프로그래밍 언어이다. 이것은 매우 큰 장점인데 개발하다 막혔을 때 비교적 다른 언어의 비해 솔루션을 쉽게 찾을 수 있고 라이브러리가 풍부하다는 것이다. 이러한 장점은 자바의 특유 매우 빠른 생산성으로 이어진다. 또한 자바는 C언어나 C++과 같이 포인터(메모리 주소 직접 참조)를 사용하지 않아 프로그램이 안정적이게 개발 할수 있으며 자동적으로 사용하지 않는 변수나 클래스를 가비지 컬랙터(쓰레기 수집기)가 회수하여 메모리에서 제거하여 프로그래머가 메모리 관리에 신경을 안쓰게 해준다.
3.2.단점
자바의 단점 중 하나는 속도가 다른 언어의 비해서 느리다 이것은 C언어나 C++은 컴파일러를 통해서 프로그램이 만들어지면 그 프로그램은 기계어의 집합인 것이다. 즉, 바로 실행이 가능하다는 소리이다. 하지만 자바는 자바 가상 머신이라는 중간과정 때문에 필연적으로 느려질 수 밖에 없다. 아무리 자바 가상 머신이 발전해서 속도가 느려진것을 해소했다 하더라도 다른 언어의 비해서 느리다는것은 부정할 수 없는 사실이다. 또한 가비지 컬렉터의 작동이 빠르게 처리해야하는 상황에서 발생하면 프로그램이 멈춘다. 이것을 프리징이라고 한다. 또한 자바는 다른 언어의 비해 어떤 기능을 하기위해서 필요한 소스코드의 길이가 길다.
4.이 문서의 하위문서
- 자바 자료형과 연산자
- 자바 조건문
- 자바 반복문
- 클래스(자바)
- 패키지(자바)