반응형
자바의 장단점
장점
1) 자바는 Simple하다.
- 자바는 간단하고 코드를 이해하기 쉬운 프로그래밍 언어 중 하나로 배우고 수행하기 쉽다.
- 게다가, 자바는 C와 C++의 포인터와 같은 복잡한 특징들을 전부 제거하여 코드를 더 쉽게 수행할 수 있게 만든다.
2) 자바는 객체지향 언어다.
- 자바의 주요 장점은 객체지향 언어라는 것이다.
- 객체지향이라는 개념을 사용하는 것은 이전의 언어와 다르게 쉽게 실행하고 안전하다.
3) 자바는 안전한 언어다.
- 포인터를 사용하는 C나 C++ 같은 언어는 메모리의 접근을 허락하기에 보안상 위험이 될 수 있다.
- 자바는 시스템의 하드웨어에 상관없이 어느 장치에서나 실행되고, 개발에 있어 비용 또한 감소된다.
4) 자바는 유지보수에 있어 싸고 경제적이다.
- 빌드에 있어 간단하기 때문에, 자바는 개발과 유지보수에 있어 경제적이다. 자바는 하드웨어의 시스템과 관계없이 어떤 장치에서도 실행되고,상당히 개발 비용을 절감시켜준다.
5) 자바는 플랫폼에 있어 독립적이다.
- 자바는 OS나 하드웨어에 있어 독립적이고 어느 장치에서나 실행된다.
6) 자바는 고수준의 프로그래밍 언어다.
- 자바는 자연어처럼 고급 언어다. 영어의 문법과 비슷해서 기억하기도 쉽다.
7) 자바는 휴대성이란 특성을 지원한다.
- 앞서 자바는 하드웨어에 상관없이 실행되는 특징으로, 자바는 휴대성의 특징을 지닌 언어다.
8) 자바는 자동 Garbage Collection을 제공한다.
- 자바에서는 C나 C++과는 달리, JVM이 자동으로 메모리를 관리한다. 따라서, JVM이 알아서 프로그램으로부터 삭제해주고, 우린 추가적으로 코드를 작성할 필요가 없다.
9) 자바는 멀티스레드를 지원한다.
- 최대 CPU활용을 위해서는 멀티스레딩이 키 포인트고 자바는 이러한 멀티스레딩을 지원하는 언어다. 하나 이상의 스레드들은 애플리케이션의 효율성과 성능을 증가시키기위해 공통 메모리를 공유한다.
10) 자바는 안전하다.
- 자바는 버그를 제거하기 위해 정기적으로 업데이트를 받는다. 이것은 자바를 가장 안정적인 프로그래밍 언어 중 하나로 만들어준다.거의 모든 버그들은 업데이트시 제거된다. 따라서, 자바의 정기적인 업데이트가 이렇게 중요한 이유다.
11) 자바는 분산형 언어다.
- 자바는 여러 컴퓨터 간에 데이터와 프로그램을 공유하는 메커니즘을 가지고 있기 때문에, 분산형 프로그래밍 언어다.이를 통해 시스템의 성능과 효율성이 증가한다.
12) 자바는 효율적인 메모리 할당 전략을 제공한다.
- 자바는 메모리를 주로 힙과 스택 영역의 두 부분으로 나눈다,. JVM은 요구사항에 따라 두 부분 중 하나에서 메모리를 할당한다.이렇게 하면 메모리를 효율적으로 관리할 수 있다.
13) 대량의 커뮤니티를 지원한다.
- 자바는 오랫동안 이어져왔고, 전 세계의 어떤 프로그래밍 언어보다 큰 개발자 커뮤니티를 만들 수 있었다.이 커뮤니티와 오라클의 도움으로 자바는 시대를 거쳐 매우 안정적인 언어가 되었다. C#과 R과 같은 새로운 언어와 달리거의 모든 쿼리를 'StackOverflow'로 해결하여 코드를 디버깅하는데 도움을 준다.
단점
1) 수행 속도가 느리고 부족하다.
- 자바는 C와 C++와 같은 네이티브 언어에 비해 많은 메모리를 소비한다. 또한, 코드를 기계어로 변환하기 위한 인터프리터의추가 작업때문에 속도도 느리다. JVM은 프로그램의 속도를 감소시키는 기능을 수행한다. Garbage Collection을 지원하는것도 지속적으로성능이 저하됨을 알 수 있다.
2) 부족한 GUI
- 자바는 GUI에 관해선 뒤떨어져있다. 자바에는 스윙, 자바FX, SWT등 GUI를 만들기 위한 많은 프레임워크가 있지만,복잡한 GUI를 구축할 만큼 충분히 개발되지는 않았다.
3) 백업 가능한 것이 없다,
- 자바는 사용자의 데이터를 백업하는 기능이 없다. 주로 데이터 저장에 중점을 두지만 백업 기능으로 보호되지는 않는다.
4) 상당한 메모리 공간이 필요하다,
- 자바는 C와 C++와 같은 프로그래밍 언어와 달리 더 많은 메모리를 차지한다.
5) 장황하고 복잡 한 코드, 자바는 매우 장황하고 복잡한 구문을 갖는다.
- 때때로, 그런 복잡한 구문들을 기억하는게 어려워진다.이런 이유로, 많은 프로그래머들이 비교적 간단한 C++이나 파이썬을 더 선호한다.
6) 요금을 지불해야 하는 라이센스
- 오라클은 2019년 1월 자바 11 이상 사용에 있어 수수료를 부과할 것이라고 말했다.자바는 이전까지 무료 소프트웨어였는데 이 때문에 프로그래머들의 많은 걱정이 나왔다.일반적인 목적을 위한 자바는 여전히 무료이지만, 개발과 모든 기능의 접근에 있어서는 수수료를 지불해야한다.
반응형
'Language > JAVA' 카테고리의 다른 글
디스패처 서블릿은 뭘까? 한 번 알아보자 (1) | 2024.12.29 |
---|---|
record (0) | 2024.08.25 |