기계어(machine lnaguage) : 0과 1로 이루어진 2진 코드
사람이 쓰는 언어와 기계어의 다리 역할이 프로그래밍 언어이다.
프로그래밍 언어는 고급 언어와 저급 언어로 구분.
고급 언어 : 컴퓨터와 대화할 수 있도록 만들어진 언어 중에서 사람이 쉽게 이해할 수 있는 언어. 컴퓨터가 바로 이해할 수 없기 때문에 컴파일(compile) 과정 통해 컴퓨터가 이해할 수 있는 0과 1로 이루어진 기계어로 변환 후 컴퓨터가 사용하게 된다.
저급 언어 : 기계어에 가까운 언어. 사람이 쉽게 이해할 수 없기 때문에 배우기 까다로움. 대표적으로 어셈블리어 (기계어로 일대일 대응되는 언어)
우리가 말하는 프로그래밍 언어 : 고급언어. C, C++, JAVA
소스(source) : 언어로 작성한 내용.
컴파일러(compiler) : 소스를 소프트웨어에 의해 기계어로 변환된 후 컴퓨터에서 실행할 수 있다.
프로그램(program) : 컴퓨터에서 특정 목적을 수행하기 위해 프로그래밍 언어로 작성된 소스를 기계어로 번역한 것.
자바(JAVA) : 1995 썬 마이크로시스템즈에서 자바 언어 발표
특징
- 이식성이 높다 : 어디서든 자바 실행 환경만 설치되어있으면 구동 가능
- 객체 지향 언어이다 : 캡슐화, 상속, 다형성 기능 지원
- 함수적 스타일 코딩 지원 : 람다식 이용 -> 컬렉션의 요소를 필터링, 매핑, 집계 처리하는데 쉬워짐
- 메모리를 자동으로 관리
- 다양한 애플리케이션을 개발할 수 있음 : 윈도우, 리눅스, 유닉스, 맥 등 다양한 체제에서 실행하는 프로그램 개발가능
- 멀티 스레드(multi-thead) 쉽게 구현 : 동시에 여러 가진 작업 처리 / 대용량 작업 빨리 처리하기 위해 사용
- 동적 로딩 지원 : 여러 객체가 서로 연결되어 실행되는데 객체가 필요한 시점에 클래스를 동적으로 로딩해서 객체 생성 -> 유지보수 쉽게 빠르게 진행 가능
- 막강한 오픈 소스 라이브러리가 풍부 : 검증된 오픈소스 라이브러리 사용하면 개발 기간 단축하며 완성도 높은 애플리케이션 개발 가능
자바 가상 기계 (JVM) : 자바가 완전한 기계어가 아니어서 중간 단계의 바이트 코드 -> 해석하고 실행하는 가상의 운영체제, 즉 자바를 실행시키는 가상의 기계
- <이것이 자바이다 1> 한빛미디어
'JAVA' 카테고리의 다른 글
변수와 타입 (0) | 2019.06.18 |
---|---|
이클립스 설치 (0) | 2019.06.18 |
자바 프로그램 개발 순서 (0) | 2019.06.18 |
자바(JAVA) 개발 환경 구축_2. 환경변수 설정 (0) | 2019.06.18 |
자바(JAVA) 개발 환경 구축_1. JDK 설치 (0) | 2019.06.18 |