Java - Java(자바)란 무엇인가? 역사와 사용처

자바(Java)란 무엇인가? – 역사, 사용처, 실행과정까지

자바(Java)는 1995년에 썬 마이크로시스템즈(Sun Microsystems)에서 개발한 객체지향 프로그래밍 언어입니다. 지금은 오라클(Oracle)이 관리하고 있으며, 다양한 플랫폼에서 실행될 수 있도록 설계된 범용 언어입니다.

자바는 단순히 문법만 배우는 언어가 아닙니다. 그 역사를 알고, 불편함을 극복해온 과정을 이해할 때 진짜 실력을 키울 수 있습니다.


자바의 사용처

자바는 매우 다양한 분야에서 활용됩니다.

  • 백엔드 애플리케이션 개발 (Spring Framework 등)

  • 모바일 앱 개발 (안드로이드)

  • 웹 개발 (JSP, 서블릿)

  • 게임 개발 – 대표적으로 마인크래프트가 자바로 만들어졌습니다.

하지만 보통 우리가 가장 많이 접하는 분야는 웹/앱 개발입니다.


자바에서 개발할 수 있는 것들

자바에서는 여러 가지를 만들 수 있지만, 이 과정에서는 크게 두 가지를 다룹니다.

  1. 어플리케이션(Application)

  2. 서블릿(Servlet) – 웹 기반의 컴포넌트


자바 프로그램 실행 과정

자바는 컴파일 언어입니다. 따라서 실행되기 위해 몇 가지 단계를 거쳐야 합니다.

1. 소스코드 작성

  • .java 확장자로 저장

  • 예: Hello.java

2. 컴파일

  • OS가 직접 .java 파일을 실행할 수 없기 때문에, 먼저 컴파일을 해야 합니다.

  • 명령어: javac Hello.java

  • 이 과정을 통해 바이트코드(Bytecode) 생성

  • 바이트코드 확장자는 .class입니다. → Hello.class

3. 실행

  • 명령어: java Hello (확장자 제외)

  • .class 파일을 JVM이 읽어들여 실행

  • 바이트코드는 JVM에서 인터프리터 방식으로 처리됨

즉, 자바는 컴파일과 인터프리터의 특징을 모두 가진 언어입니다.


컴파일 언어와 인터프리터 언어의 차이

  • 컴파일 언어는 실행 전에 전체 코드를 번역 → 성능이 좋음

  • 인터프리터 언어는 코드를 한 줄씩 바로 실행 → 수정 후 테스트가 빠름

자바는 중간 단계인 바이트코드를 만들어내고, 그걸 JVM이 해석하기 때문에 플랫폼 독립성을 가집니다.


개발 환경 설정 (JDK, 환경변수)

회사가 요구하는 버전이 다를 수 있으므로, 버전 세팅에 익숙해져야 합니다.

1. JDK 설치

  • 현재는 JDK 21 버전을 사용 중

2. 환경변수 설정 (JDK가 어디에 설치돼 있는지 OS에 알려주는 과정)

  1. JAVA_HOME 설정

    • 예: C:\Program Files\Java\jdk-21

  2. Path 설정

    • JAVA_HOME\bin 경로를 추가

    • 환경변수 목록에서 위로 올려 가장 먼저 인식되도록 설정

예전에 비하면 요즘은 설치만 하면 자동으로 설정되지만, 수동 설정도 반드시 익혀야 함

3. CMD에서 확인

  • javac -version

  • java -version

  • 정상적으로 나오면 설치 완료

CMD는 설정 반영이 안 될 수 있으니, 끄고 다시 실행해야 반영됨


콘솔에 익숙해져야 하는 이유

우리는 나중에 MQTT, 리눅스 기반 서버 등으로 가게 됩니다.
그땐 GUI 없이 콘솔로만 작업하는 경우가 많습니다.
지금 익숙해져야 나중에 훨씬 수월해집니다.


중요한 자바 기본기

  • 클래스명과 파일명은 반드시 같아야 함

  • 텍스트 파일을 .java로 확장자 바꾸는 방법도 알아야 함

  • 소스코드, 컴파일, 실행까지 모든 과정을 스스로 할 수 있어야 진짜 실력

이걸 편한 IDE만 쓰다가 나중에 기초가 없으면 결국 벽에 부딪힌다


빌드란?

코드를 수정할 때마다 컴파일을 새로 해줘야 하나요?
→ 네. 바뀐 내용을 반영하려면 컴파일을 다시 해야 합니다.


총정리 – 자바 실행 4단계

  1. 소스코드 작성.java

  2. 컴파일javac 명령어로 .class 생성

  3. 바이트코드 실행java 명령어로 실행

  4. 콘솔 익숙해지기cd, dir, cls 등 명령어 반복 연습


마무리

편리한 도구가 있다고 해서 내부 구조를 몰라도 된다는 건 착각입니다.
기초가 없는 상태에서 기술을 쌓다 보면 언젠가 반드시 한계를 마주하게 됩니다.
지금 불편함을 느끼더라도, 이 과정을 꼭 직접 해보시기 바랍니다.

편한 게 다 좋은 게 아닙니다.
지금의 편안함은 많은 사람들의 노력과 불편함 위에 쌓인 것입니다.

  • 디자인 툴(맥스, 마야 등)에서 텍스처 경로 개념 = 자바 환경변수 설정 개념과 유사


태그: #자바기초 #JDK설정 #자바컴파일 #바이트코드 #개발환경 #자바실행 #자바입문


댓글

가장 많이 본 글