1. 컴퓨터 구조 이해
• CPU(일반 연산 장치), RAM(저장 장치)
그래픽 카드(GPU+RAM>화려한 그래픽 가능)> 완전히 다른 컴퓨터이다.
• 연산이란?
메모리에 있는 데이터를 가져와서 처리하고 다시 그 메모리에 둔다.
• 레지스터란?
실시간으로 처리가능한 메모리공간/ 매우 빠르지만 공간은 적다.
매우 비쌈> 아껴서 사용해야 함.
*메모리를 너무 많이 쓰는 프로그래밍 만들면 레지스터에서 바로 처리불가능하고
메인 메모리에 까지 데이터를 가져오고 가져다 둬야하므로 속도가 매우 느려짐-
>메모리를 어떻게 최적화하는 지 생각해야 함.
• 컴퓨터 2진수(bit)
Byte(8bits) _ _ _ _ /_ _ _ _
바이트 단위로 정보 저장하고 표현함.
32 GByte?
K =10의 3승 =2의 10
M = 10의 6승
G = 10의 9승 = 10억
32 GByte > 320억개의 바이트
2. 하드웨어와 소프트웨어의 조화
• 변수는 메모리상의 데이터를 구분하여 관리하기 위해 만들어짐.
3. 프로그래밍 언어의 역사
• 자연어 - 인간의 언어
기계어 - CPU가 이해하는 언어
프로그래밍 언어 -:자연어적 특성과 기계어적 특성을 모두 담고 있다.
기계어에서 자연어로? 프로그래밍 언어의 발전과정!
• 컴파일의 역할
1) 기계어로 바꾸어줌
2) 문법오류 필터
잘만들어진 코드를 보자 (리눅스 소스)
• 컴파일러와 인터프리터
- 자바 : 기계어를 보냄
- 자바 스크립트 : 소스코드를 보냄
• 절차 지향형에서 객체 지향형으로
- CPU중심에서 메모리 중심으로 변경됨.
>알고리즘과 자료구조론
> 이유 : 데이터 양과 중요성이 증대
>데이터가 많아지다 보니 분산하고 위계있게 데이터 관리
>OODB : Object Oriented DataBase : 객체 지향형 데이터 관리
• 객체 지향형이란?
- 컴퓨터 프로그램을 여러 독립적인 부품들의 조합, 즉 객체들의 유기적인 협력과 결합으로 파악하고자
하는 컴퓨터 프로그래밍 패러다임
'CS공부 > 학점은행_자바프로그래밍' 카테고리의 다른 글
5 배열 (0) | 2023.07.19 |
---|---|
2주 1차 변수와 기본 연산자 (0) | 2023.06.26 |
1주 2차 Java의 역사와 특징 (0) | 2023.06.26 |