목차
1. Java
📌 JAVA
Java는 사람과 컴퓨터가 소통하기 위해 사용하는 ‘프로그래밍 언어’입니다.
정확히는, 컴퓨터에게 명령을 내리기 위해 사용하는 언어 중 하나로,
1995년 미국의 Sun Microsystems(현재는 Oracle)에서 처음 개발되었으며,
객체지향(Object-Oriented) 프로그래밍 언어로 분류됩니다.
Java는 다음과 같은 특징을 가진 언어입니다:
- 💡 플랫폼 독립적:
"한 번 작성하면 어디서나 실행된다 (Write Once, Run Anywhere)"는 철학 아래,
JVM(Java Virtual Machine)을 통해 어떤 운영체제에서도 동일한 Java 프로그램을 실행할 수 있습니다. - 🧱 객체지향 프로그래밍(OOP):
코드 재사용과 유지보수가 용이한 객체 중심의 설계 방식을 따릅니다. - 🛠 범용 언어(General Purpose Language):
웹 애플리케이션, 모바일 앱(Android), 서버, 금융 시스템, IoT 등 다양한 분야에서 사용됩니다. - 🌐 강력한 생태계:
Spring Framework, Hibernate, Maven, Gradle 등과 같은
생산성 높은 라이브러리 및 프레임워크들이 풍부하게 구축되어 있습니다.
📌 Java의 등장 배경
Java는 1995년 Sun Microsystems에서 처음 발표된 객체지향 프로그래밍 언어입니다.
개발 당시 목표는 "한 번 작성하면, 어디서든 실행된다 (Write Once, Run Anywhere)"는 슬로건처럼,
플랫폼 독립적인 언어를 만드는 것이었습니다.
이를 위해 Java는 JVM(Java Virtual Machine)이라는 가상 머신을 통해 실행되며,
운영체제와 하드웨어에 구애받지 않고 동일한 코드가 실행될 수 있습니다.
2. Java의 특징
✅ 플랫폼 독립성 (JVM 기반)
- Java 코드는 JVM 위에서 실행되므로 Windows, macOS, Linux 등 운영체제에 관계없이 작동합니다.
- 컴파일된 .class 파일은 어떤 환경에서도 JVM만 있다면 실행됩니다.
✅ 객체지향 언어 (OOP)
- Java는 캡슐화, 상속, 다형성 등의 객체지향 원리를 중심으로 설계되어,
유지보수성과 재사용성이 뛰어납니다.
✅ 안정성과 보안
- 널리 사용되며 검증된 언어로,
대규모 프로젝트에서 안정성과 보안성이 입증되어 있습니다.
✅ 풍부한 생태계
- 다양한 라이브러리와 프레임워크(Spring, Hibernate 등)가 존재하며,
대기업에서도 널리 사용됩니다.
✅ 자동 메모리 관리 (GC)
- 개발자가 직접 메모리를 해제하지 않아도 되는
Garbage Collector를 통해 메모리 관리 부담을 줄입니다.
3. Java의 단점
⚠ 상대적으로 긴 코드
- Python 등의 언어에 비해 문법이 장황하고,
같은 기능 구현에도 코드가 길어지는 경향이 있습니다.
⚠ 성능
- JVM 위에서 실행되므로
C/C++처럼 하드웨어에 가까운 언어보다 속도가 느릴 수 있음.
⚠ 메모리 사용량
- JVM 기반 동작으로 인해 메모리 소모량이 높은 편,
제한된 환경에서는 부적합할 수 있음.
⚠ 진입 장벽
- 객체지향 개념과 문법이 상대적으로 어려워
프로그래밍 초심자에게는 어렵게 느껴질 수 있음.
4. Java와 다른 언어와의 비교
| 항목 | Java | C | Python | Kotlin |
| 실행 방식 | JVM 기반 | 컴파일 후 실행 | 인터프리터 | JVM 기반 |
| 플랫폼 독립성 | ✅ 매우 높음 | ❌ 없음 | ✅ 높음 | ✅ 높음 |
| 문법 난이도 | 중 | 높음 | 낮음 | 낮음 |
| 객체지향 지원 | ✅ 완전 지원 | ❌ 없음 | ✅ 지원 | ✅ 완전 지원 |
| 주 사용 분야 | 웹, 서버, 앱 | 시스템, 임베디드 | 데이터 과학, 웹 | Android, 웹 |
| 대표 특징 | 안정성, 범용성 | 고성능, 저수준 | 간결함, 유연함 | 현대적 문법, Null 안정성 |
🔍 비교 요약
- Java vs C
Java는 자동 메모리 관리와 플랫폼 독립성으로 더 개발자 친화적입니다.
반면 C는 성능과 하드웨어 제어 능력이 뛰어나지만 더 많은 책임을 개발자에게 요구합니다. - Java vs Python
Python은 문법이 간단하고 데이터 분석/AI 분야에 강하지만,
Java는 기업 시스템과 대규모 백엔드 개발에 더 적합합니다. - Java vs Kotlin
Kotlin은 Java의 불편함을 개선한 현대적인 JVM 언어입니다.
특히 Android 개발에서 Java를 빠르게 대체하고 있으며, 간결한 문법, Null 안정성이 강점입니다.
마무리
다음 게시글에서는 JDK, JRE, JVM에 대해 학습하겠습니다.
'study > Programming' 카테고리의 다른 글
| [JAVA 기초] 기본 자료형 (0) | 2025.04.06 |
|---|---|
| [JAVA 기초] Java 자료형의 개요 (0) | 2025.04.05 |
| [JAVA 기초] 변수란 무엇인가? (0) | 2025.04.04 |
| [JAVA 기초] Eclipse와 IntelliJ 설치 및 자바 실행 (0) | 2025.04.03 |
| [JAVA 기초] JDK, JRE, JVM 개념 및 설치 (0) | 2025.04.02 |