Language/JAVA

첫째날 [자바 개발 환경 구축]

구일일구 2022. 7. 21. 19:57
반응형

자바 국비 지원 학원 수업 첫째날.

드디어 여차저차하여 다니게 된 학원! 앞으로 열심히 해서 언젠가 개발자로 회사를 다니게 되는 날이 오겠지.

학원은 3:30 부터 10시까지. 아침이 아니라 다행이야..


오늘 배운 목차

1) 프로그래밍 언어란?

2) 자바란?

3) 자바 개발 환경 구축

4) 자바 프로그램 개발 순서

5) 주석과 실행문

6) 이클립스 설치 

7) 풀인원 설치와 실행 (X)


[1] 프로그래밍 언어란?

사람과 컴퓨터가 대화하는 것을 도와줌. 다리와 같은 역할. 고급 언어와 저급 언어로 구분됨.

고급언어 : 컴퓨터가 바로 이해할 수 없기 때문에 컴파일 과정 => 기계어로 변환 후, 컴퓨터가 사용함

저급언어 : 기계어에 가깝지만, 배우기 까다로움

소스 : 언어들로 작성된 내용

컴파일러 : 소스가 '컴파일러'라는 소프트웨어에 의해 기계어로 변환. 컴퓨터에서 실행됨

프로그램 : 컴퓨터에서 특정 목적을 수행하기 위해 프로그래밍 언어로 작성된 소스를 기계어로 번역한 것

이것이 자바다 p2


[2] 자바의 특징

1) 이식성이 높은 언어 (다른 환경에서도 잘 돌아간다는 뜻)

 

2) 객체 지향 언어 (Object Oriented Programming,

부품 객체를 먼저 만들고 조합하여 전체 프로그램 완성)

3) 함수적 스타일 코딩 지원 : 람다식 지원 => 컬렉션 요소를 필터링, 매핑, 집계 처리에 쉬워짐, 코드 간결

4) 메모리를 자동으로 관리 : 개발자가 메모리에 직접 접근X

 

5) 다양한 애플리케이션 개발 가능

Java SE
자바 프로그램들이 공통적으로 사용하는 자바 가상 기계(JVM) + 개발에 필수적인 도구 + 라이브러리API를 정의함
반드시 Java SE 구현체인 자바 개발 키트(JDK) 설치해야 함
Java EE
분산 환경(네트워크, 인터넷)에서 서버용 애플리케이션을 개발하기 위한 도구 및 라이브러리 API 정의
서버용 애플리케이션 : Servlet/JSP, EJB , XML 서비스 등

 

6) 멀티 스레드 쉽게 구현 가능 (스레드란 작업 단위를 말함)

 

7) 동적 로딩 지원

 

8) 오픈 소스 라이브러리 풍부

 


[3] 자바 가상 기계(JVM, Java Virtual Machine)

운영체제는 자바 프로그램을 바로 실행할 수 없음 : 자바 프로그램은 완전한 기계어가 아니기 때문.

따라서 자바 프로그램을 해석하고 실행할 수 있는 가상의 운영체제가 필요함 ==> JVM(자바 가상 기계)

운영체제별로 프로그램을 실행하고 관리하는 방법이 다르기 때문에 "운영체제 - JVM - 자바프로그램" 방식으로 설계했음

개발자는 운영체제와 상관없이 자바 프로그램을 개발할 수 있음

JVM은 운영체제에 종속적 ==> 자바 프로그램을 운영체제가 이해하는 기계어로 번역해서 실행해야 하기 때문

JVM은 JDK 또는 JRE를 설치하면 자동으로 설치됨 : JDK와 JRE가 운영체제별로 제공됨


[4] 자바 개발 환경 구축

* JRE = JVM + 표준 클래스 라이브러리

* JDK = JRE(JVM+표준 클래스 라이브러리) + 개발에 필요한 도구

 

* Java 11 version 설치

* Eclips IDE for Java EE Developers 설치 : 웹 애플리케이션 등 네트워크 환경에서도 실행할 수 있게 하도록 하기 위해서

이것저것 옵션 선택하는 것도 알려주셨다.. 하지만 아직은 영어라서 어려웡


[5] 자바 프로그램 개발 순서

자바 소스 파일(.java)  ➡️ 컴파일러(javac.exe) ➡️ 바이트 코드 파일(.class) ➡️ 자바 가상 기계(JVM) ➡️ 기계어 ➡️ 실행

* 클래스 : 필드 또는 메소드를 포함하는 블록

* 메소드 : 어떤 일을 처리하는 실행문들을 모아 놓은 블록

 

public class Hello {
}
//"Hello"는 클래스 이름

 

public static void main(String[] args) {
}
// "main"은 메소드 이름

 


[5] 주석과 실행문

주석 : 코드에 설명을 붙인 것

// : 행 주석

/* ~ */ : 범위 주석

 () : 메소드(Method = Member Function), 생성자

{} : 코드블럭(brace)

[] : 배열

<> : 제너릭

Ctrl + / 주석처리

Ctrl+ Shift + / 범위주석처리

ctrl + 마우스 : 모르는 클래스나 메소드들의 설명을 볼 수 있다. 대신에 영어다.

실행문의 끝에는 반드시 세미콜론을 붙여 실행문의 끝을 표시한다;

 

반응형