자바 기초 용어 정리

이광훈·2023년 6월 11일
0

컴파일

: 우리가 만든 프로그래밍 언어를 기계가 이해할 수 있는 기계의 언어로 번역하는 것

👉 컴파일러가 기계가 이해할 수 있는 언어로 번역해줌

빌드

: 컴파일된 기계언어를 사용자에게 보여주기 위해 빌드하여 완성된 상품, 소프트웨어 가공물로 만듦

✔️ Java 👉 maven, gradle 과 같은 빌드 도구가 있음

배포

: 만들어진 산출물을 각각의 서버에서 동작하도록 하여 상품을 사용자들에게 공개하는 것

CI (Continuous Integration)

: 지속적 통합, 개발을 진행하면서도 품질을 관리

👉 CI의 간단한 순서

  1. 개발자가 구현한 코드를 기존 코드와 병합
  2. 병합된 코드가 올바르게 동작하고 빌드되는지 검증한
  3. 테스트 결과 문제가 있다면 수정하고 다시 1로 돌아감. 문제가 없다면 배포를 진행한다.

CD (Continuous Deployment)

: 지속적 배포 (= 지속적 제공(Continuous Delivery))

CI를 통해서 새로운 소스코드의 빌드와 테스트 병합까지 성공적으로 진행되었다면,

빌드와 테스트를 거쳐 github과 같은 저장소에 업로드하는 것


❗ 변수는 선언위치에 따라 나뉨

지역 변수 (Local Variable)

: 특정한 구역 ( { } ) 안에 생성되어 그 지역에만 사용할 수 있는 변수

👉 Method 안에 서식

멤버 변수 (Member Variable)

: 전체에서 어디서든 호출하면 사용할 수 있는 변수

객체변수 == 인스턴스 변수 👉 같은 클래스 안에서만 사용 가능

클래스변수 == static 변수 👉 다른 클래스에서도 사용 가능

🔸예시

🚧 **class Ex_variables** {

**int** global_int;  *// 전역변수(객체변수) : 같은클래스에서 호출이 가능*

**static int** global_statuc_int;  *// 전역변수(클래스변수) : 다른 클래스에서도 호출이 가능*

**void method**()
{

**int**

local_int = 0; *//지역변수 { }안에 생성되며 { }를 벗어나면*

}  *//method() 라는 메소드가 끝나는 시점에 바로 삭제*

}

🌐 자바의 메모리 구조

✅ Static // 정적, 고정된

: Static 변수, Static 메소드를 합쳐 클래스 멤버(정적 멤버)라고 함.

필드 부분에서 선언된 전역변수정적 멤버 변수들의 데이터를 메모리에 상주시킴

👉 Static 변수&메소드는 클래스에 고정됨 (객체(인스턴스)에 소속 X)

👉 JVM이 동작해서 클래스가 로딩될 때 생성

👉 프로그램이 종료될 때까지 메모리에 남음

✅ Stack

: 기본 자료형을 생성할 때 저장하는 공간, 임시적으로 사용되는 변수나 정보들이 저장됨

Heap

: 참조형(Reference Type)의 데이터 타입을 가진 객체, 배열 등을 저장하는 영역

new 키워드로 생성된 객체와 배열이 Heap 영역에 저장


GC(garbage Collection)

: 메모리 관리 기법 중 하나, 동적으로 할당했던 메모리 영역 중 필요 없게 된 영역을 해제함

👉 동적으로 할당했던 메모리 영역은 프로그램 런타임에 사용되는 Heap 영역 메모리를 뜻하고, 필요 없게 된 영역은 어떤 변수도 가리키지 않게 된 영역

JVM(Java Virtual Machine)

: 자바 프로그램 실행 환경을 만들어 주는 소프트웨어 (자바 가상 머신)

  • 자바 프로그램으로부터 생성된 바이트코드를 읽고, CPU 가 이해 할 수 있도록 기계어로 변환한 다음
    해당 프로그램을 실행하는 역할을 합니다.
  • 자바로 작성된 모든 프로그램은 JVM(자바 가상 머신)에서만 실행될 수 있으므로, 자바 프로그램을 실행하기 위해서는 반드시 자바 가상 머신이 설치되어 있어야 합니다.
📌 JVM을 사용하면 **자바 프로그램을 모든 플랫폼에서 제약 없이 동작**하도록 할 수 있습니다.

JDK(Java Development Kit)

: 자바 프로그램 개발에 필요한 도구 및 라이브러리를 제공하는 소프트웨어 개발 키트

  • 자바 프로그램을 작성할 수 있는 소스 코드 편집기와 함께 코드를 컴파일 실행, 디버그, 테스트 및 패키징 등 프로그램 작성을 위한 여러 도구가 포함되어 있습니다.

JRE(Java Runtime Environment)

: 자바 애플리케이션을 실행하기 위해 필요한 기본 소프트웨어 환경입니다.

  • JVM과 자바 프로그램을 실행(동작)시킬 때 필요한 라이브러리 API를 함께 묶어서 배포되는 패키지입니다.
  • 이외에도 자바 런타임 환경에서 사용하는 property 세팅이나 리소스 파일 (jar 파일) 을 가지고 있습니다.

CLI (Command line interface)

: 명령 줄 인터페이스 또는 명령어 인터페이스는 텍스트 터미널을 통해 사용자와 컴퓨터가 상호 작용하는 방식

크롤링 (Crawling)

: 소프트웨어와 같은 무언가가 인터넷을 돌아다니며 정보를 수집해 오는 작업

파싱 (Parsing)

: 구문 분석, 데이터를 분해 분석하여 원하는 형태로 조립하고 다시 빼내는 것

🔸예시

📢 Integer.parseInt();

👉 ()안의 문자열을 숫자형으로 구조화 해주어 **1 + 1**, **11**이 아닌 **2**가 나오게 해줌

Float.parseFloat(); 

👉 ()안의 문자열을 float형으로 구조화 해주어 **1.5 + 2.5**, **1.52.5**가 아닌 **4.0**이 나오게 해줌
profile
웃으며 일할 때, 시너지가 배가 된다고 믿는 개발자

0개의 댓글