자바가 무엇인지 알아보았으니, 이번엔 자바의 장점과 단점이 무엇인지 알아보기로 하자.
장점
플랫폼 독립성
- 하드웨어 또는 운영체제와 같은 플랫폼에 독립적으로 실행 가능한 특성
- 자바는 Java Virtual Machine(JVM)을 기반으로 동작하기 때문에 자바로 만든 프로그램은 어떤 환경에서도 완벽히 똑같이 동작한다.
개발자가 많다
- 이게 무슨 장점이냐 할 수 있겠지만, 나온지 오래된 언어인 만큼 개발자 커뮤니티가 활성화되어 있어 정보 습득에 유리하다.
객체 지향 언어
- 신뢰성 있는 소프트웨어를 손쉽게 작성 가능하다.
- 코드 재사용이 유리하다.
- 객체지향 패러다임의 특성상 비교적 이해하고 배우기 쉽다.
오픈 소스
- 이용자들에 의해 기존 문제가 해결되고 발전하며 운영되기 때문에 발전 속도가 빠르고 정보를 얻기 쉽다.
- 오픈소스 라이브러리가 풍부해 짧은 시간 내 안정적인 애플리케이션 구현이 가능하다.
자동 메모리 관리
- Garbage Collector 는 객체가 프로그램에서 더 이상 사용되지 않고 명시적 프로그래밍에 의해 역참조 되거나 제거할 필요가 없는 항목을 참조하지 않을 때마다 자동으로 제거해준다.
- 이로 인해 사용자는 메모리 관리를 신경쓰지않고 비즈니스 로직에 집중할 수 있다.
단점
실행 속도가 느리다
- JVM을 거쳐서 실행되기 때문에 다른 언어에 비해 실행 속도가 느리다.
- 처리 속도가 중요한 애플리케이션에서 적합하지 않다.
그 외
- JVM을 사용하기 때문에 직접 하드웨어를 정밀하게 조정해야 하는 프로그램 개발에는 적합하지 않다.
- JVM에서 실행되기 때문에 더 많은 메모리를 소비한다.
- 프로그래머 검사가 필요한 예외가 등장한다면 무조건 프로그래머가 선언해주어야 함.
- 코드가 다른 언어에 비해 길고 장황해 가독성이 떨어질 수 있다.
'Computer Science > JAVA' 카테고리의 다른 글
자바 컬렉션 프레임워크(Java Collection Framework) 중 맵(MAP) 정리 (0) | 2022.04.18 |
---|---|
자바 컬렉션 프레임워크(Java Collection Framework) 중 셋(SET) 정리 (0) | 2022.04.15 |
자바 컬렉션 프레임워크(Java Collection Framework) 중 리스트(List) 정리 (0) | 2022.04.13 |
[JAVA] 객체 지향 프로그래밍(Object Oriented Programing) (0) | 2022.01.11 |
JAVA 란? (0) | 2021.12.16 |