프로그래밍 기초

oYJo·2024년 6월 22일

Java

목록 보기
1/25
post-thumbnail

1. 프로그래밍 기초

1) 프로그래밍

프로그램(Program)
: 컴퓨터가 인식할 수 있는 명령어의 나열(집합)

프로그래밍(Programming)
: 프로그램을 작성하는 과정(코딩)

프로그래머(Programmer)
: 프로그램을 작성하는 사람


2) 프로그래밍 언어

프로그래밍 언어
: 프로그램을 작성하기 위한 언어 체계, 사람이 컴퓨터와 소통하게 하는 요소

프로그래밍 언어 순위 사이트

  • TIOBE Index (https://www.tiobe.com/tiobe-index/)
    : 프로그래밍 언어의 인기도를 나타내는 지표
    Google, Yahoo, Youtube, Wikipedia 등의 검색엔진을 통해 검색되어지는 결과 수로 순위를 매김

  • PYPL(http://pypl.github.io/PYPL.html)
    : Google trends 통계 데이터를 기반으로 특정 프로그래밍 언어 튜토리얼이 검색된 수로 순위를 매김


3) Java 프로그래밍 언어 특징

💧인도네시아 자바 섬에서 만들었는데 그 사람이 커피를 좋아해서 이름과 모양을 넣음

  1. 운영체제(OS)에 독립적
    → (OS 관계없이 동일 코드로 동작. 이식성이 높다고도 표현함.)
  2. 객체 지향 프로그래밍(OOP) 언어
  3. 사용하기 쉬운 언어
    능률적이고 명확한 코드 작성 가능
    다른 언어의 단점 보완(포인터, 메모리 관리)
  4. 자동 메모리 관리(Garbage Collection)
  5. 동적 로딩 지원
    → 필요 할 때마다 불러오는 형식
  6. 멀티쓰레드 지원
    → 한번에 여러가지 일처리가 가능하다
  7. 네트워크와 분산환경 지원

4) JVM (Java Virtual Machine)

Java를 실행하기 위한 가상 기계로 OS(운영체제)에 관계없이 독립적으로 동작.
→ C : OS가 코드를 직접 해석하기 때문에 C언어는 OS 따라 코드가 다른 부분이 존재.
→ Java : OS에 맞는 JVM을 설치하여 OS 종류 관계없이 JVM이라는 가상머신이 Java 코드를 동일하게 해석.

JVM이 Java 코드를 해석하는 순서
개발자가 작성한 Java 코드를 Compiler(컴파일러)가 byte code(.class 파일)로 번역
→ JVM에 전달
→ JVM이 Interpreter(인터프리터) 방식으로 한 줄 씩 해석함


5) Java 개발 환경

💧JVM만 있다고 사용할 순 없다
JRE = JVM + 라이브러리 : 말 그대로 실행만 가능한 것
JDK = 개발환경

Java SE : Java Standard Edition
Java EE : Java Enterprise Edition
Java ME : Java Micro Edition

이클립스(Eclipse) 설치


7) Open JDK 설치

💧개인이 사용할 땐 문제가 안 되는데, 단체로 사용하면 유료가 된다
21.01 버전까지 있는데, 11버전으로 배울 예정
실무에선 7, 8을 제일 많이 사용한다

OpenJDK 다운로드 페이지로 이동(https://jdk.java.net/archive/)


8) 자바 설정

💧amazon corretto 다운 후에도 버전 변경이 안된다면 환경변수편집에서 위로 올리면 된다

환경 변수 설정



환경 변수 테스트


9) Eclipse IDE(통합 개발 환경) 설치

IDE(Integrated Development Environment, 통합 개발 환경)

  • 애플리케이션 개발에 사용되는 공통된 개발자 도구를 하나의 GUI에 결합한 소프트웨어
  • 소스 코드 편집기(작성 중 오류 검사, 자동완성, 구문 강조), 로컬 빌드 자동화(자동 컴파일, 패키징, 테스트), 디버거(버그 위치 표시) 를 내장하고 있음.
  • Eclipse, Visual Studio Code, IntelliJ 등 여러 IDE가 존재함.

Eclipse다운로드 페이지(https://www.eclipse.org/downloads/)





10) Java 프로그래밍 기본

클래스 (Class)
객체를 만들기 위한 일종의 설계도
자바에서 모든 코드는 반드시 클래스 안에 존재해야 하며, 서로 관련된 코드들을 그룹으로 나누어 별도의 클래스를 구성할 수 있다.
→ 클래스들이 모여 하나의 Java 애플리케이션을 구성한다.

 public class 클래스명{
    
    	/*
         * 주석을 제외한 모든 코드는 블록 클래스 { } 내에 작성
         */     
    }

주석 (Comment)
코드에 대한 설명이나 그외 다른 정보를 넣을 때 사용하는 것
컴파일 시 컴파일러가 주석 부분은 건너뛴다.

  • /* */ : 범위 주석, /*와 */ 사이 내용은 주석으로 간주
  • // : 한 줄 주석, // 뒤의 내용은 주석으로 간주

메인 메서드 (Main Method)
public static void main(String[] args) 고정된 형태의 메서드 선언부로 Java 애플리케이션을 실행하는 데 필요한 메서드 (프로그램 실행 시 java.exe에 의해 호출됨)
모든 클래스가 main 메서드를 가지고 있어야 하는 것은 아니지만 하나의 Java 애플리케이션에는 main 메서드를 포함한 클래스가 반드시 하나 이상 존재해야 한다!

    public class 클래스명{
    
		public static void main(String[] args){ // 메인 메서드의 선언부

				// 실행될 코드를 작성
        
        }
    }
profile
Hello! My Name is oYJo

0개의 댓글