TIL. 산대특) AWS 공공 빅데이터 웹 백엔드 과정 1일차

hyuko·2022년 12월 28일
1

산대특 국비과정

목록 보기
1/9

컴퓨터 언어란?

  • 컴퓨터와 의사소통을 하기 위한 언어

컴퓨터가 이해할 수 있는 언어 -> binary code(이진수 명령어)
0 과 1로 이루어져 있다.

이를 사람이 읽기 편하게 만들어진 언어가 어셈블리 언어이다.

이 후에 나온 고급언어로는 C, Python, Java 등이 있다.

컴퓨터가 이해하기 쉬운 언어일 수록 저급언어
사람이 이해하기 쉬운 언어일 수록 고급언어 이다.

이러한 고급언어는 사람이 이해하기는 쉽지만, 컴퓨터는 이해할 수 없다.
그렇기 때문에, 번역이 필요하다.

이때 번역을 하는 과정을 컴파일이라고 한다.
이 컴파일을 하는 녀석을 컴파일러라고 부른다.

Java 란?

제임스 고슬링이 고안하여 만든 언어이다.
Write Once Run Anywhere (한번 작성하면 어디서든 실행이 된다)

Java 가 등장하기 이전

C언어나 C++ 을 이용해 개발을 하였다.
이 소스코드를 쓰기 위해서는 윈도우, 리눅스, 맥os 등
각각의 하드웨어에 따라서 컴파일러를 직접 다 만들어야 구동이 가능했다.

C같은 경우에는 파일이 각각 .c 로 이루어져 있으나
프로그램을 실행하기 위해서는 obj 단위로 묶어 링크 작업을 통해
exe 파일로 만들어야 프로그램 실행이 가능하다.
하드웨어인 메모리 용량 보다 큰 프로그램이라면 실행자체가 불가능 하다.

또한 C++ 은 소멸자를 이용해 메모리 관리를 직접 해주어야 한다.

Java가 등장한 이후

Java의 소스 코드같은 경우에는
JVM(Java Virtual Machine) 자바 가상 머신으로 인해 컴파일러를
하나로 통일하였다.

그렇기 때문에 같은 소스코드로 운영체제 하드웨어가 다르더라도 실행이 가능하다.

Java 의 특징

  1. java는 객체 지향 언어(OOP)이다. (절차적인 언어에 객체 개념이 추가된 것)

java는 각각의 class단위로 끊어져 있어 jvm 메모리에 올라갈 수만 있다면
class 단위로 끊어서 컴파일이 가능하고 그렇기 때문에 하드웨어, 운영체제에
종속되지 않는다 하지만 jvm 같은경우 운영체제에 맞게 다운로드 해주어야 하기
때문에 jvm은 운영체제에는 종속적이다.

  1. 가비지 컬렉터

C++ 에서는 소멸자로 직접 소멸 시켜줘야 했던 것을 java는 동적메모리 관리에
따른 쓰레기값을 자동으로 수거 해준다. 덕분에 개발자가 개발에만 집중하고 메모리
관리를 굳이 할 필요가 없어졌다.

Java 개발 환경 구축

Java 통합 개발 환경
IDE > JDK > JRE > JVM

  • IDE (Integrated Development Environment)
  • JDK (Java Development Kit)
  • JRE (Java Run Environment)
  • JVM (Java Virtual Machine)
  1. jdk 11버전 설치

    https://www.oracle.com/kr/java/technologies/javase/jdk11-archive-downloads.html
    위의 링크를 통해 들어가서 오라클 사이트 로그인을 한 후에 다운로드 받을 수 있다.

  1. sts4 tools 다운로드

    spring.io 접속후 > Projects > sts4 들어간후 각각의 맞는 운영체제의 툴을 다운받는다

  2. 기본적인 환경 설정

    window + e 누른 후 내 pc 오른쪽 마우스 클릭 후 설정 > 고급 시스템 설정
    고급 > 환경변수 클릭 > 시스템 변수에 JAVA_HOME 추가 (경로는 jdk 11 폴더)
    path 클릭 환경 변수 편집에서 새로 만들기 %JAVA_HOME%\bin 추가


  3. sts 설정

    window > preferences > encoding 검색 > java 관련 모든 것 UTF-8 설정 업데이트

font는 가독성을 위해 D2Coding을 사용한다.
window > preferences > General > Appearance > Colors and Fonts > basic
Text fonts 에서 변경 가능하다.

D2Coding 같은 경우는 구글에서 검색해서 다운로드 가능하다. D2Coding All 을 설치
해주기로 한다.

Hello World! 가장 간단한 출력

※ 주의할 점 !

패키지 명에는 java를 쓰면 안된다(동작시 오류발생)
클래스명의 앞은 무조건 대문자이다.

public class HelloJava{
	// 프로그램의 시작점
	public static void main(String[] args) {
    	// tab 들여쓰기 코드의 가독성을 높인다.
        // 주석: 코드 내부에 메모를 할 때 사용을 한다.
        // 컴파일시에 무시된다.
        // 한줄 주석
        /*
        *	여러줄 주석
        *	1
        *	2
        *	3
        */
        
        /**
		 *  클래스, 메소드 등의 정보를 설명하기 위한 주석
		 */
         
    	System.out.println("Hello World!")
    }
  }

출력 결과

profile
백엔드 개발자 준비중

0개의 댓글