serversim
학습시뮬레이터템플릿가격
…
…
메뉴 열기
학습↗시뮬레이터↗템플릿↗가격↗
내 Documents문서
전체 목차/1장/1.44 / 40

1.4 · 언어와 번역

왜 컴퓨터 과학에서는 추상화가 중요할까?

매번 트랜지스터부터 생각하지 않고도 프로그램을 만들 수 있는 이유는 무엇일까요?

잘 만든 층은 아래가 어떻게 구현됐는지 몰라도 위에서 안전하게 사용할 약속을 제공합니다.

먼저 생활 비유

커피 머신의 버튼

버튼을 누르는 사람은 보일러 압력과 펌프 회전을 몰라도 됩니다. 대신 “에스프레소 버튼”이라는 안정된 약속을 믿습니다.

컴퓨터 예제로 바꾸기

한 줄 아래의 여러 층

print("hello")

함수, 표준 라이브러리, 시스템 호출, 장치 드라이버, 화면 장치가 층층이 협력합니다.

직접 움직여 보기1 / 4

지금 일어나는 변화

내 코드

하고 싶은 일을 간단한 이름으로 표현합니다.

번역 파이프라인내 코드단계 1함수·라이브러리단계 2운영 체제단계 3하드웨어단계 4print 요청현재: 내 코드

이 그림에서 기억할 한 문장

추상화는 복잡함을 없애지 않고, 지금 필요한 층만 생각할 수 있게 경계를 만듭니다.

현재 상태

이동하는 것
print 요청
현재 위치
내 코드
다음 위치
함수·라이브러리

30초 확인 문제

추상화의 가장 큰 목적은 무엇일까요?

처음 보는 용어 두 개

인터페이스
두 층이 서로 사용할 수 있도록 정한 약속
구현
약속 아래에서 실제 일을 수행하는 방법

이 절을 다 읽었다면

추상화는 복잡함을 없애지 않고, 지금 필요한 층만 생각할 수 있게 경계를 만듭니다.

← 이전 절

1.3 링커는 흩어진 코드를 어떻게 하나로 합칠까?

다음 절 →

2.1 CPU에서 운영 체제, 프로세스, 스레드까지