피드로 돌아가기
Dev.toBackend
원문 읽기
Java는 JVM 기반 바이트코드 실행 방식으로 Write Once, Run Anywhere 원칙을 구현하는 범용 객체지향 프로그래밍 언어입니다
Java Features
AI 요약
Context
기존 언어들은 플랫폼 종속성으로 인해 각 운영체제에 맞게 소스코드를 수정해야 하는 이식성 한계가 있었다. C/C++ 환경에서는 개발자가 직접 메모리를 관리해야 하여 메모리 누수와 시스템 크래시 위험이 존재했다.
Technical Solution
- Java 소스코드 → Compiler → 바이트코드(.class) 변환 후 JVM이 플랫폼별 기계어로 해석 실행하는两层 컴파일 구조 적용
- 클래스와 객체를 기반으로 한 순수 객체지향 설계로 코드 재사용성과 모듈화 실현
- 자동 Garbage Collection과 JVM 샌드박스 보안 모델로 메모리 관리와 보안 위험 자동 처리
- 멀티스레딩 지원으로 하나의 프로그램 내에서 여러 작업을 동시에并发 처리 가능
- java.lang, java.util, java.io 등 풍부한 내장 라이브러리로 기본 기능 직접 구현 불필요
Impact
JIT Compiler를 통한 런타임 최적화로 반복 실행 시 기계어 변환 생략으로 성능 향상
Key Takeaway
JVM 추상화 계층을 통한 플랫폼 독립성은 이식성과 보안성을 동시에 확보하는 핵심 설계 결정이며, 자동 메모리 관리는 개발자의 생산성과 시스템 안정성을 높이는 주요 요인이다
실천 포인트
엔터프라이즈 백엔드 개발에서 Java 선택 시 JDK 설치만으로 Windows, Linux, Mac 환경에서 동일 바이너리 실행 가능하며, 멀티스레드 환경에서 SharedState 관리는 synchronized 또는 java.util.concurrent 패키지로 처리한다