본문 바로가기
EXTERNAL ACTIVITY/Code Presso -웹개발 트랙 체험단-

<코드 프레소 웹 개발 트랙 > 처음 시작하는 Java 프로그래밍[1]

by jaeaemin 2022. 1. 10.

https://www.codepresso.kr/

JAVA 

- 1991년 제임스 고슬링의 주축 그린 프로젝트로 시작되어 현재 JAVA 18까지 출시



자바의 특징 

  • WORA(write once run anywhere) 
  • 하드웨어에 의존적이던 기존 언어 스타일에서 탈피
  • Java는 한번 작성 및 컴파일 된 결과물이 어디서든 동작 가능(anywhere) 

  " JVM을 통해서 한번 컴파일 된 결과물은 하드웨어,OS 등 상관 없이 실행가능 "

  • 객체 지향 언어로 상속, 다형성, 캡슐화 등 언어적으로 지원한다.
  • 코드는 Class를 기본 단위로 구성 된다.
  • 자동화 된 메모리 관리를 지원한다 ( JVM의 GC(garbage collector)가 자원 회수 ) 

자바는 WORA를 지원하므로 완성된 프로그램은 JVM을 통해 구동되어서 하드웨어나, 다른 OS를 사용하는데 상관없지만 , C나 C++은 따로 컴파일과 링킹 과정을 거쳐야 한다

 

 

 

 

자바의 특징 2

 

  • 소스코드를 컴파일 시 , ByeCode를 생성한다.

byecode란 Java 코드를 빌드 했을 경우 생성되는 중간 코드로 어셈블리어와 유사한 형태

 

  • JVM에 의해 관리된다.

Bytecode를 생성하기 위한 가상 머신으로 WORA의 구현 핵심이다. 

OS와 HW와 상관없이 독립적으로 Bytecode를 실행 가능하게 한다. (번역기 역할)

실행 flow는 다음과 같다.

[ Java 소스코드 ] => [ 컴파일 ] => [ Bytecode ] =>  JVM에 의해서 구동됨 

 

  • JRE 

Java Runtime Envirorment의 약자로 JVM + Java 실행 라이브러리 등 포함하는 환경 

Java 애플리케이션을 실행하기 위한 기본 단위이다.

  • JDK  

Java Developemnt Kit의 약자로 JRE + Java 개발 도구를 포함한다

Java 개발을 위해서는 JDK가 필수적이고 , Java 실행을 위해서는 JRE가 필수적이다.

 

 

 

 

 

 


 

실습하기 위한 개발 환경 

  • JDK 11  
  • Jetbrain InteliJ Community Edition (IJ) 

           - IJ는 IDE(통합 개발환경)으로 유료지만, 무료 community 버전 사용 가능 !  (그외 : Eclipse , VSC ..)

 

JDK 설치  

https://www.oracle.com/java/technologies/downloads/#java11-mac

윈도우 PC에는 JAVA가 깔려 있어서 MAC으로 설치를 진행하였다 ( jdk-11 DMG )&amp;nbsp;

 

 

java -version 명령어를 통해서 설치된 버전을 확인 할 수 있다.

 

 

 

 

 

 

IntelliJ 설치 

https://www.jetbrains.com/ko-kr/idea/download/#section=mac

intelliJ 설치는 PC의 운영체제에 맞게 설치하면 된다. 

 

맥에서 설치 완료 된 화면&amp;nbsp;
hellojava 라는 프로젝트 생성 모습&amp;nbsp;

 

 


 

 

JAVA 기본 용어

 

클래스 


- 클래스는 Java 프로그램의 기본 단위로 적용할 수 있다.

- Java 프로그램은 한 개 이상의 클래스로 구성된다.

( 일반적으로 1개의 클래스 = 1개의 Java 파일  >> "필수가 아닌 권장" )

- 클래스명과 파일명은 동일해야하고, 일반적으로 클래스명은 대문자로 시작한다.

 

- Java는 객체지향(Object Oriented) 언어이다. 

- 객체는 속성(attribute)과 행동(method)을 가진다. 

- 클래스는 무엇인가 ?  => 객체를 만들기 위한 틀 또는 탬플릿 

 

"클래스는 객체를 생성하고 , 객체는 속성과 메소드를 가진다 " 

자바 코드에서 클래스의 속성과 메소드는 다음과 같이 나타낼 수 있다.

 

메인 메소드 

Java 프로그램의 시작점이다 .

public class HelloWorld {
	public static void main(String[] args) {
    	System.out.println("Hello Jaemin!!");
    }
}

- 위의 프로그램에서는 HelloWorld 클래스의 main 메소드가 시작단위 이므로 프로그램이 시작하자마자 "Hello Jaemin!!"이 출력된다.

 

 

블록

여러 라인의 코드를 중괄호 {}로 묶은 단위

클래스 블록과 메소드 블록 등으로 나눌 수 있음. 

프로그램은 중괄호로 시작해서 끝나게 된다. 

 

 

세미콜론

실행 가능한 코드라인(명령문)은 세미콜론으로 종료되어야 한다.

실행의 기본단위 statement의 종료지점엔 항상 세미콜론이 위치해야 한다.

 

 

들여쓰기 ( indentation )

Java에서는 들여쓰기가 실행에 영향을 주지 않음 

하지만 들여쓰기는 코드의 가독성을 높여주기 위해 협업과 코드이해를 위해 반드시 필요함

  • 들여쓰기는 대다수의 IDE에서 지원하므로 자동 들여쓰기(Formatting) 기능을 사용할 수 있다.
  • IntelliJ의 경우    Ctrl + Alt + L

 

표준 입출력

Java는 키보드 등으로 입력을 받고, 모니터에 출력하기 위한 기본 라이브러리를 제공한다 

자주 사용하는 함수는 System.out.println() 함수로 출력 및 줄 바꿈을 동시에 수행해준다.

 

 

자바에서 자주 겪는 에러 

- 자바는 대소문자를 구분하므로 이점을 유의해야 한다.

- 자바는 세미콜론 단위로 코드라인을 해석하기 때문에 세미콜론에 주의해야 한다.

- IntelliJ의 에러탐지&출력을 제공하므로 Problems 탭에서 에러의 상세 정보를 확인 가능하다.

 

 

 

 

 


- 코드프레소 <처음 시작하는 자바 프로그래밍> 

- 코드프레소 JAVA 웹 개발 체험단 활동 중 

반응형