“이것이 자바다 – 자바 프로그래밍의 정복”
다음은 내가 쓴 연구 기사입니다.
1장. 자바 시작하기
실제로 Java를 사용하는 과정에서 기초가 없어서 실수도 많이 했고… 예전에 샀던 책을 꺼냈어요. 물론 이 책의 자바 버전은 현재 버전과 다르지만 현재 자바 버전으로는 문제가 없기 때문에 책과 함께 정리해서 공부해보도록 하겠다.
1. 1 프로그래밍 언어란 무엇입니까?
- 기계어: 0과 1로 구성된 이진 코드.
- 자연어: 컴퓨터가 이해하기 어려운 언어(문자 집합).
- 프로그래밍 언어: 인간이 기계어와 자연어를 통해 컴퓨터(?)와 통신할 수 있게 해주는 언어.
- 고급 언어: 인간이 이해하기 쉬운 언어 > 컴퓨터가 즉시 이해하지 못함 > 컴파일 필요
- 저수준 언어: 기계어에 가깝고 인간이 이해하기 어려운 언어.
컴파일은 앞서 언급한 바와 같이 프로그래밍 언어를 컴퓨터가 이해할 수 있는 기계어로 변환하고 컴파일러라는 소프트웨어를 통해 처리하는 작업이다.
1.2 자바란?
1.2.1 자바 소개
1995년 Sun Microsystems에서 출시한 Java는 현재까지 가장 성공적인 프로그래밍 언어 중 하나입니다.
이 역사(?) 소개는 개인적으로 별로 중요하지 않은 것 같아서 일단 생략하겠습니다.
. . 나중에 정리하겠습니다.
1.2.2 자바의 특징
- 이식성이 높은 언어 : 실행 환경이 다른 시스템간 프로그램 전송 및 실행 기능
- Java는 JRE(Java Runtime Environment)가 설치되어 있는 한 소스 코드를 수정하지 않고도 모든 운영 체제에서 실행할 수 있습니다.
- Java는 JRE(Java Runtime Environment)가 설치되어 있는 한 소스 코드를 수정하지 않고도 모든 운영 체제에서 실행할 수 있습니다.
- 객체 지향 언어 : 자바는 100% 객체지향 언어 > 객체용으로 만들어졌기 때문에 캡슐화, 상속, 다방향 기능 지원
- 기능적 코딩 지원 : 자바 함수형 프로그래밍의 람다식은 자바 8부터 지원되며 현재 자바 8, 9…, 11은 상당히 함수형 코딩을 지원한다.
- 자동 메모리 관리 : C, C++ 등 메모리에 생성된 객체를 삭제하기 위해서는 개발자가 수동으로 삭제해야 하며, 자바의 경우 개발자가 직접 메모리에 접근할 수 없고, 자바는 메모리를 직접 관리한다.
- 다양한 어플리케이션 개발 가능
- 간편한 멀티스레딩
- 동적 로딩 지원
- 풍부하고 강력한 오픈 소스 라이브러리
1.2.3 자바 가상 머신(JVM)
컴파일러에 의해 변환된 바이트코드 파일을 해석하고 실행할 수 있는 가상 운영 체제입니다.
자세한 내용은 별도의 게시물에서 다룹니다.
JAVA::JVM에 대해 알아보기
이 글은 백기선의 “자바, 코드를 다루는 다양한 방법” 강좌를 듣고 내용을 공부한 후 작성한 글이다.
JVM 이해 Java로 작업할 때 JVM, JRE, JDK 및 Java 정보
개발상훈.
1.3 Java 개발 환경 구축
1.3.1 자바 개발 키트(JDK) 설치
Oracle에서 무료로 다운로드할 수 있습니다.
물론 유료이지만 BCL 라이선스가 있으면 학습이나 테스트를 위한 개인적인 사용에 큰 장벽이 없습니다.
확실하지 않은 경우 OpenJdk를 선택하여 설치하면 됩니다.
1.3.2 API 문서
Java 프로그램을 개발하기 위해서는 JDK에서 제공하는 표준 클래스 라이브러리를 사용해야 합니다.
JDK에서 제공하는 많은 API들을 제공하는 문서로 아래 링크는 8버전인데 버전별로 정리되어 있으니 버전 확인 후 사용하시면 됩니다.
자바 플랫폼 SE 8
docs.oracle.com
1.4 자바 프로그램 개발 순서
1.4.1 소스코드 생성부터 실행까지
- .java 소스 파일 생성
- 컴파일러(javac.exe)를 사용하여 바이트코드 파일(.class) 생성
- 실행할 JVM으로 명령(java.exe)을 실행합니다.
Java로 작성된 프로그램이 실행될 때까지 위의 단계를 실행하십시오.