1. 자바  프로그래밍이란?


자바 프로그래밍이란 자바를 이용해 컴퓨터 프로그램을 만드는 작업이다


자바 : 컴퓨터 프로그래밍 언어

프로그램 : 지시 사항들이 나열된 순서, 어떠한 목적을 이루기 위한 수행 절차

프로그래밍: 프로그램을 만드는 것

컴퓨터 프로그래밍 : 특정한 프로그래밍 언어를 이용해 구체적인(목적을 가진) 컴퓨터

        프로그램으로 구현하는 기술


즉 자바 프로그래밍이란 “자바라는 컴퓨터 언어를 이용해 어떠한 목적을 이루기 위한 컴퓨터 프로그램(절차)을 만드는 것”이라 할 수 있다.



2. 컴퓨터와 CPU


1) 컴퓨터(computer)

수식 이나 논리적 언어로 표현된 계산을 수행하거나 작업을 통제하는 기계. 즉 계산기


2)CPU(central processing unit: 중앙 처리 장치)

소프트웨어 명령의 실행이 이루어지는 컴퓨터의 부분, 혹은 그 기능을 내장한 을 말한다.  CPU는 ALU(Arithmetic And Logic Unit) + Registers + CU(Control Unit)으로 구성되어있다.



ALU = 산술 연산

CU = 제어(반복) (ALU와 레지스터를 실질적으로 용도에 맞게 사용하는 컨트롤 장치.)

register = ALU에 값을 연산하기 전에 잠시 저장해 놓는 임시 메모리






3. 플랫폼(platform)

플랫폼이란 개발 환경, 어플리케이션 소프트웨어를 작동시킬때 기반이 되는 OS의 종류나 환경, 설정을 말한다. (기반/재료,환경)

+@ 예를 들면, MS-DOS상에서 동작하는 DOS가 플랫폼이며, MS-Windows상에서 동작하는 응용 소프트웨어에 있어서는 MS-Windows가 플랫폼이다. 또 어떤 소프트웨어가 제공하는 환경을 플랫폼이라고 하는 경우도 있다. MS-Windows가 제공하는 환경이 MS-Windows의 플랫폼이다)




4. 코드


1) 코드와 코드화

기록, 의사전달을 위한 기호화 / 뜻 의미가 부여된 기호는 코드가 된다. 또한 기록이나 의사전달을 위해 기호화 하는것을 코드화 라고 한다.


2)코드의 종류

고급(high level) 언어와 저급(low level)언어로 나뉠 수 있다. 고급 언어는 저급언어보다 사용하기 쉽고, 더 추상적이며, 더 이식 가능성이 높게 디자인된다. 어떤 언어의 경우에는, 문법적으로 올바른 프로그램들은 저급 언어로 컴파일(compile)되어 컴퓨터 상에서 실행(execute)되게 된다. 오늘날 대부분의 소프트웨어는 고급 언어로 작성된다. 그 후 오브젝트 코드로 컴파일되고 난 뒤 기계어로 변환된다.


a. 저급언어


기계어:CPU가 직접 해독하고 실행할 수 있는 비트 단위로 쓰인 컴퓨터 언어를 통틀어  일컫는다. 기계어는 프로그램을 나타내는 가장 낮은 단계의 개념이다.

기계어는 어셈블리어와 1 : 1로 쓰일 수 있다.




어셈블리어: (영어: Assembly language)는 기계어와 일대일 대응이 되는 컴퓨터 프로그래밍저급 언어이다. 컴퓨터 구조에 따라 사용하는 기계어가 달라지며, 따라서 기계어에 대응되어 만들어지는 어셈블리어도 각각 다르게 된다.




b. 고급언어

 고급 프로그래밍 언어란 사람이 알기쉽도록 씌어진 프로그래밍 언어로서, 저급 프로그래밍 언어보다 가독성이 높고 다루기 간단하다는 장점이 있다. 컴파일러 인터프리터에 의해 저급 프로그래밍 언어로 번역되어 실행된다. C 언어, 자바, 베이직 등 대부분의 프로그래밍 언어들은 고급언어에 속한다.


c. 컴파일

프로그래밍 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있도록 기계어로 번역해 주는 역할을 하는 번역기



물리 코드, 논리 코드    < - 보충 설명 필요


물리(장치)에 종속된 코드가 물리코드.


물리장치에 종속되지 않은 코드가 논리 코드



인터프리터(interpreter, 문화어: 해석기)는 프로그래밍 언어소스 코드를 바로 실행하는 컴퓨터 프로그램 또는 환경을 말한다. 원시 코드를 기계어로 번역하는 컴파일러와 대비된다. 인터프리터는 다음의 과정 가운데 적어도 한 가지 기능을 가진 프로그램이다.



치수횽아

(실행코드=숫자코드=이진코드)

수학 코드

kor = 60

eng = 70

math = 80

total = kor+eng+math

avg = total/3



패턴화된 모듈들 함수.


플랫폼을 함수화 한 것 = API


모듈화 - 재사용  , 집중화, 협업


모듈화의 기본 - 차단!

'Yame Programmer > JAVA' 카테고리의 다른 글

[이론] 9.값과 연산자  (0) 2015.06.10
[이론] ASCII / UNICODE  (0) 2015.06.10
[이론] 함수 그리고 객체와 캡슐  (0) 2015.06.03
[이론] WORA(자바 플랫폼)  (0) 2015.06.03
[이론] 프로그래밍의 종류  (0) 2015.06.03

+ Recent posts