반응형
[0] 프로그래밍 정의
프로그래밍 : 컴퓨터가 작업을 수행할수있도록 프로그래밍 언어로 명령어의 집합체인 프로그램을 만드는 작업
컴파일 : 프로그래밍 언어를 컴퓨터가 실행 가능한 기계어로 번역하는 작업
컴파일러 : 기계어로 번역하는 작업을 하는 프로그램 ( 자바 컴파일러 , gcc)
[1] 객체 지향 프로그래밍
- 프로그램 구현을 시간의 흐름순이 아닌 객체 간의 관계와 협력을 기반으로 프로그램 만드는 것
- 객체지향 특징 : 상속, 캡슐화, 다형성
- OOP (object oriented programming)
- 사용언어 : Java , C++ , C# , Python , JavaScript , Ruby 등
- 반대 : 절차 지향 프로그래밍 (c언어)
[2] 자바 프로그래밍 의 특징
- 운영체제에 독립적이다
자바언어로 설계된 응용프로그램은 JVM (자바가상머신)과 통신한다
운영체제 버전 별 JVM을 연결하여 응용프로그램의 수정없이 사용이 가능하다
- 객체 지향 언어(OOP)이다
- 비교적 배우기 쉽다
- 자동 메모리 관리 (가비지 컬렉터)
- 네트워크와 분산처리를 지원한다 (자바 API를 사용한다)
- 멀티쓰레드를 지원한다 (자바 API)
- 동적 로딩을 지원한다 - 필요한 시점에 필요한 클래스를 로딩한다
- 플랫폼에 영향을 받지 않아 다양한 환경에서 사용 가능하다
- 유지보수가 쉽고 확장성이 좋다
- 프로그램이 안정적이다
- 풍부한 기능이 제공되는 오픈 소스이다
[3] JVM 자바 가상 머신
- Java Virtual Machine
- 자바로 작성된 모든 애플리케이션은 JVM을 통해서만 실행된다
- 자바가상머신
- 프로그램이 실행되는 환경이 JRE가 설치되어야한다
※ JVM이 생기게 된 이유 : 운영체제 별로 응용프로그램을 만드는것은 비용이 많이 발생하기 때문에 JVM 이라는 자바가상머신을 이용하여
1개의 응용프로그램을 윈도우에서 사용할때는 윈도우용 JVM 을 이용하여 실행 , 맥에서 사용할때는 맥 용 JVM을 이용하여 실행 , 리눅스에서 사용할때는 리눅스용 JVM 을 이용하여 실행한다. 각 운영체제 마다 프로그램을 만들지 않아도 되기 때문에 비용적 측면이 절약된다
[4] JDK 자바 개발 도구
- Java Development kit
- 자바에서 제공되는 개발용 라이브러리이다
- 자바가상머신 JVM 과 JAVA API(자바 클래스 라이브러리) 를 사용할수 있게 된다
[5] JRE 자바 환경
- Java Runtime Environment
- 자바 프로그램이 실행되는 환경
[6]JAVA 언어 실행 절차
1단계 | JAVA 언어로 소스 코드를 작성한다 (.java파일) |
2단계 | javac.exe 의 컴파일러를 통해 1단계의 소스 파일을 |
3단계 | 클래스 파일로 생성한다 (.class파일) 클래스 파일을 로드한다. 클래스파일을 파일형식, 악성코드 체크 하여 검사한다 |
4단계 | 소스 코드로 기재한 클래스 에서 main(String[] args) 를 호출한다 java.exe 라는 인터프리터로 실행한다 main 메서드의 첫줄부터 마지막 코드까지 모두 실행 된다 |
5단계 | 소스코드로 작업한 내용이 출력된다 프로그램이 모두 실행되면 종료되고 프로그램에서 사용했던 자원이 모두 반환된다 |
[7] 자바 활동 영역
- 웹 어플리케이션
- 모바일 어플리케이션
- 엔터프라이즈 애플리케이션
- 웹 / 앱 서버
[8] 자바 플랫폼 종류
- 1. JAVA SE 기본개발환경
- 2. JAVA EE 서버기반 프로그램 개발환경
- 3. JAVA ME 모바일/임베디드 개발환경
//임베디드 시스템이 탑재된 핸드폰, 노트북 등 : 펌웨어가 있는 소프트웨어가 장착된 상품
//딥러닝 : 파이썬으로 주로 언어 사용
반응형
'🌈 백엔드 > JAVA_기초' 카테고리의 다른 글
JAVA 개념_조건문 (0) | 2023.02.16 |
---|---|
JAVA 개념_ 반복문 (0) | 2023.02.13 |
JAVA 개념_ 자료형 (0) | 2023.02.13 |
JAVA 개념_연산자 (0) | 2023.02.13 |
JAVA 개념_변수 (4) | 2023.02.03 |
댓글