Image
Image

3.프로그래밍 기초 탄탄

3.프로그래밍 기초 탄탄

1)메모리와 CPU
-CPU(프로세서): 연산과 제어 담당  1+1 : 연산담당
-메모리: 기억과 저장을 담당 1+1의 결과값인 2를 저장하는 역할


2)프로그래밍 언어 와 기계어의 차이

-프로그래밍 언어 
ㄴ개발자가 컴퓨터를 제어하기 위해 사용하는 언어 및 관련 코드(Javascript,C#,JAVA,Python,PHP)

-기계어
ㄴ컴퓨터 기계가 실제 이해하는 언어(0,1,0,1….), 

-컴파일이란? 사람이(개발자가) 작성한 프로그래밍언어 소스를 컴퓨터가 이해할수 있는 기계어로 변환하는 일, 
-컴파일러? 개발언어별 실제 컴파일을 실행하는 라이브러리나 소프트웨어를 말한다.

3)인터프리팅 언어와 컴파일링 언어의 차이

-인터프리팅 언어? 
ㄴ사용자의 해당 기능 호출 시점(런타임)에서 관련 소스코드를 위에서부터 아래로 순차적으로 해석해가며 소스를 컴파일해 기계어로 변환하여 개발자 코드를 실행하는 개발언어를 말하며 다소 실행 속도가 느리다.(Javascript,python,php,asp.jsp,html,css)

-컴파일 언어? 
프로그래밍 개발소스를 미리 컴파일 해 런타임 시 별도 기계어 변환과정없이 바로 실행되어 실행속도가 인터프리터 언어보다 빠르다.전체 소스코드를 보고 명령어를 수집하고 재구성,속도가 빠르다.( C, C++,C#,JAVA)


4)프로그래밍 메모리 구조

-Code 저장 메모리 영역
ㄴ프로그램 코드 저장영역
ㄴ컴파일러가 메모리 영역 결정


-Data 저장 메모리 영역 
ㄴ전역변수,정적변수,배열,구조체등 저장
ㄴ프로그램 시작시 생성, 종료시 반환 
ㄴ컴파일러가 메모리 영역 결정

-Heap 영역 : 동적 메모리 영역 할당,
ㄴ메모리 주소값에 의해 참조되고 사용됨
ㄴ 클래스,오브젝트를 저장, new 함수를 통해 생성
ㄴ 개발자가 정의 런타임시 결정


Stack 영역 : 프로그램 컴파일러가 자동 할당하는 임시 영역
ㄴ지역변수,매개변수,리턴값 등 잠시 사용되다 사라지는 데이터를 저장하는 영역
ㄴ함수 호출시  생성되고 함수가 끝나면 시스템에 반환
ㄴ 컴파일 타임에 크기결정


 

5)웹 브라우저 구조와 렌더링 프로세스

웹서버에서 제공되는 HTML문서와 해당 문서에서 사용하는 CSS,Javascript코드들은 웹브라우저의 렌더링 엔진을 통해 해석되어 다음과 같은 프로세스를 통해 브라우저 화면에 표시됩니다.
DOM Tree 생성을 위한 HTML파싱 -> Rendertree 생성 ->RenderTree 배치 -> RederTree 그리기 


웹 브라우저의 핵심기능을 담당하는 렌더링 엔진의 역할과 브라우저별 유형을 참고바랍니다.


-렌더링 엔진 역할
ㄴHTML문서 파싱
ㄴDOM 구조 로드
ㄴHTML파싱,RenderTree생성
ㄴUI Backend Layer기반 노드표시

-렌더링 엔진 유형
ㄴIE – Trident
ㄴ크롬- Webkit
ㄴ파이어폭스- Gecko
ㄴ사파리 – Webkit(애플제작)
ㄴ오페라- Presto


Image

댓글목록

Image