이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
새로 보는 프로그래밍 언어
개발자의 가치를 높이는 프로그래밍 언어 대백과 CD 1 포함
베스트
IT 모바일 top20 1주
가격
45,000
10 40,500
YES포인트?
2,250원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  해외배송 가능?
  •  문화비소득공제 가능

이 분야의 이벤트

책소개

목차

1부 프로그래밍 언어의 기초

01장 소개

1.1 언어 설계의 기술
1.2 프로그래밍 언어의 스펙트럼
1.3 프로그래밍 언어를 공부해야 하는 이유
1.4 컴파일과 해석
1.5 프로그래밍 환경
1.6 컴파일 개요
1.7 정리
1.8 연습문제
1.9 탐구문제
1.10 참고자료

02장 프로그래밍 언어 구문
2.1 구문 명시: 정규식과 문맥 자유 문법
2.2 어휘 분석
2.3 구문 분석
2.4 이론적 기초 사항 【CD-14】
2.5 정리
2.6 연습문제
2.7 탐구문제
2.8 참고자료

03장 이름, 유효 범위, 바인딩
3.1 바인딩 시점의 의미
3.2 객체 수명과 저장 공간 관리
3.3 유효 범위 규칙
3.4 유효 범위의 구현 【CD-23】
3.5 참조 환경의 바인딩
3.6 유효 범위 내에서의 바인딩
3.7 분리 컴파일 【CD-30】
3.8 정리
3.9 연습문제
3.10 탐구문제
3.11 참고자료

04장 의미 분석
4.1 의미 분석기의 역할
4.2 속성 문법
4.3 속성 평가
4.4 동작 루틴
4.5 속성을 위한 저장 공간의 관리 【CD-37】
4.6 구문 트리 장식
4.7 정리
4.8 연습문제
4.9 탐구문제
4.10 참고자료

05장 타겟 머신의 구조
5.1 메모리 계층
5.2 자료 표현
5.3 명령어 집합 구조
5.4 구조와 구현
5.5 최신 프로세서를 위한 컴파일
5.6 정리
5.7 연습문제
5.8 탐구문제
5.9 참고자료

2부 프로그래밍 언어의 핵심 요소

06장 제어 흐름

6.1 수식의 값 계산
6.2 구조화된 흐름과 구조화되지 않은 흐름
6.3 열거
6.4 선택
6.5 반복
6.6 재귀
6.7 비결정성 【CD-65】
6.8 정리
6.9 연습문제
6.10 탐구문제
6.11 참고자료

07장 자료형
7.1 유형 시스템
7.2 유형 검사
7.3 레코드(구조체)와 베리언트(공용체)
7.4 배열
7.5 문자열
7.6 집합
7.7 포인터와 재귀형
7.8 리스트
7.9 파일과 입력/출력 【CD-65】
7.10 등가 검사와 대입
7.11 정리
7.12 연습문제
7.13 탐구문제
7.14 참고자료

08장 서브루틴과 제어 추상화
8.1 스택 배치의 복습
8.2 호출 순서
8.3 매개변수 전달
8.4 제네릭 서브루틴과 모듈
8.5 예외 처리
8.6 동시 실행 루틴
8.7 정리
8.8 연습문제
8.9 탐구문제
8.10 참고자료

09장 자료 추상화와 객체지향
9.1 객체지향 프로그래밍
9.2 캡슐화와 상속
9.3 초기화와 종결화
9.4 동적 메소드 바인딩
9.5 다중 상속 【CD-135】
9.6 객체지향 프로그래밍 다시 보기
9.7 정리
9.8 연습문제
9.9 탐구문제
9.10 참고자료

3부 다른 관점에서 바라본 프로그래밍 모델

10장 함수형 언어

10.1 역사적 기원
10.2 함수형 프로그래밍의 개념
10.3 스킴 복습/개관
10.4 계산 순서 다시 보기
10.5 고차 함수
10.6 이론적 기초 【CD-152】
10.7 한눈에 보는 함수형 프로그래밍
10.8 정리
10.9 연습문제
10.10 탐구문제
10.11 참고자료

11장 논리형 언어
11.1 논리형 프로그래밍의 개념
11.2 프롤로그
11.3 이론적 기초 【CD-163】
11.4 한눈에 보는 논리형 프로그래밍
11.5 정리
11.6 연습문제
11.7 탐구문제
11.8 참고자료

12장 병행 처리
12.1 배경과 동기
12.2 병행 프로그래밍 기초
12.3 공유 메모리
12.4 메시지 전달
12.5 정리
12.6 연습문제
12.7 탐구문제
12.8 참고자료

13장 스크립팅 언어
13.1 스크립팅 언어란
13.2 문제 영역
13.3 월드 와이드 웹 스크립팅
13.4 혁신적인 기능
13.5 정리
13.6 연습문제
13.7 탐구문제
13.8 참고자료

4부 로우레벨로 되짚어본 프로그램의 비밀

14장 실행 가능한 프로그램 작성

14.1 후단 컴파일러 구조
14.2 중간 형태 【CD-169】
14.3 코드 생성
14.4 주소 공간 구조
14.5 어셈블리
14.6 링킹
14.7 동적 링킹 【CD-175】
14.8 정리
14.9 연습문제
14.10 탐구문제
14.11 참고자료

15장 코드 개선 【CD-180】
15.1 코드 개선의 여러 단계 【CD-182】
15.2 국소적 최적화 【CD-184】
15.3 기본 블록에서의 중복 제거 【CD-187】
15.4 전역 중복과 자료 흐름 분석 【CD-196】
15.5 루프 개선 I 【CD-207】
15.6 명령어 스케줄링 【CD-212】
15.7 루프 개선 II 【CD-216】
15.8 레지스터 할당 【CD-228】
15.9 정리 【CD-233】
15.10 연습문제 【CD-234】
15.11 탐구문제 【CD-239】
15.12 참고자료 【CD-241】

부록 A 이 책에서 다룬 프로그래밍 언어
부록 B "설계와 구현" 목차
부록 C "예" 목차

참고자료
부록 CD 활용 방법

저자 소개

저자 : 마이클 스콧
로체스터 대학의 교수며 컴퓨터 과학부의 학부장을 역임했다. 1985년에 위스콘신 메디슨 대학에서 컴퓨터 과학 박사학위를 받았다. 프로그래밍 언어, 운영체제, 고수준의 컴퓨터 구조가 접목되는 분야를 주로 연구하며, 특히 병렬 및 분산 컴퓨팅에 중점을 두고 있다. 링스(Lynx)라는 분산 프로그래밍 언어를 설계했으며 병렬 운영체제 샬럿(Charlotte)과 프시케(Psyche), 병렬 파일시스템 브릿지(Bridge), 공유 메모리 시스템 캐시미어(Cashmere)와 인터위브(InterWeave)를 공동 설계했다. 존 멜러 크러미와 공동 설계한 MCS 상호배제 잠금(MCS exclusion lock)은 다양한 상용이나 학문 목적의 시스템에 이용되었다. 메기드 마이클, 빌 쉐러와 함께 설계한 다양한 알고리즘은 java.util. concurrentstandard 라이브러리에 사용된다.
스콧 박사는 미국 컴퓨터 학회(ACM), 전기전자학회(IEEE), 사회적 책임을 위한 컴퓨터 전문가들 모임의 회원이다. 다양한 프로그램의 위원과 자격 교부 검토 위원을 맡아왔으며 NSF, ONR, DARPA, NASA, 에너지 및 국방부(the Department of Energy and Defense), 포드 파운데이션(Ford Foundation), 디지털 이큅먼트(Digital Equipment Corporation, 현재의 HP), 썬 마이크로시스템즈, 인텔, IBM 등에서 지원하는 프로젝트의 제1 연구자 혹은 공동 연구자로 활동해왔다. GRE의 컴퓨터 과학 분야 시험에 기여했으며, 95개의 논문을 발표했다. 2003년에는 ACM의 운영체제 원리에 대한 심포지엄에서 의장을 맡기도 했다. 1983년에 벨 연구소(Bell Lab)의 박사과정 장학금을 받았으며, 1986년에는 IBM의 능력 개발상을 받았다. 2001년에는 로체스터 대학에서의 우수한 업적 및 학부생 교육의 탁월함에 대한 로버트와 파멜라 괴르겐 상(Robert and Pamela Goergen Award for Distinguished Achievement and Artistry in Undergraduate Teaching)을 받았다.
역자 : 민병호
서울대학교 컴퓨터공학부를 졸업하고 동 대학원에서 석사 학위를 취득했다. 현재 국방과학연구소에서 다양한 분야의 소프트웨어 개발을 담당하고 있다. 컴퓨터 분야 전체에 관심이 많고 특히 보안, 네트워크, 프로그래밍 언어, 인공지능 분야를 연구 중이다. 누구나 이해할 수 있는 컴퓨팅 환경을 만드는 것이 꿈으로, 비전문가도 컴퓨터를 이용해서 생각을 현실로 쉽게 구현할 수 있는 날을 그리며 열심히 개발 중이다. 역서로 에이콘출판사에서 펴낸 『TCP/IP 완벽 가이드』가 있다.
역자 : 김진혁
서울대학교 컴퓨터공학부를 졸업하고 동 대학원을 졸업했다. 현재 삼성전자 반도체총괄에서 FLASH 저장장치 기반 소프트웨어를 개발하고 있다. 역서로 에이콘출판사에서 펴낸 『TCP/IP 완벽 가이드』가 있다.

품목정보

발행일
2008년 08월 21일
쪽수, 무게, 크기
1004쪽 | 2020g | 188*254*60mm
ISBN13
9788960770546

관련 자료

외국에서 생활하고 그 나라의 문화를 배우려면 일단 그 나라의 언어부터 익혀야 하듯이 컴퓨터가 이해하는 언어부터 배워야 컴퓨터를 이해하고 전문적으로 다룰 수 있게 된다. 이것이 개발자나 컴퓨터를 전공하는 사람에게 우선 프로그래밍 언어부터 가르치는 이유 중 하나다. 이 책을 읽고 있는 여러분도 C, C++, 자바 등과 같은 언어 중 한두 개는 잘 다룰 것이다. 그런데 지금 다룰 줄 아는 언어를 어떤 식으로 배웠는지 생각해보자. 아마도 "Hello, World!"를 출력하는 예제로 시작해서 자료형, 제어 흐름, 구조체, 포인터 등의 순서로 각 언어 구성소를 어떻게 사용하는지 배웠을 것이다. 누구도 프로그래밍 언어가 왜 자료형을 가지며, 어째서 특정 제어 흐름이 많이 쓰이는지, 또 포인터가 일부 언어에서는 매우 선호되지만 다른 언어에서는 아예 존재하지도 않는 이유는 무엇인지를 배우지는 않았을 것이다. 적어도 우리나라 대부분의 대학이나 개발자를 양성하는 기관에서는 프로그래밍 언어 자체를 넓고 깊게 다루는 강의는 찾아보기 힘든 것 같다.

이 책은 바로 프로그래밍 언어를 배우며 궁금할 수 있는 부분들, 왜 이런 식으로 언어가 정의됐을까 하는 의문을 품게 만드는 언어 구성소나 규약 등을 명확하고 쉽게 설명해준다. 또 프로그래밍 언어는 어떻게 분류할 수 있으며, 어떠한 것들이 주로 사용되고 어떤 개념들이 중요한지 등을 상세하고 친절하게 알려준다. 그렇기에 이 책은 초보자에게는 프로그래밍 언어의 개념을 확실히 잡아줄 수 있는 지침서이며, 이미 일부 프로그래밍 언어를 능숙히 다룰 줄 아는 독자에게는 다양한 언어의 특징과 장단점을 명확히 정리해주는 참고서다. 특히 이 책을 통해 다양한 언어의 강점과 약점을 분명히 알게 되어 어떤 방식의 프로그래밍 업무/과제가 주어져도 그에 맞는 최적의 언어를 선택해 가장 효율적으로 구현할 수 있게 될 것이다. 역자의 경우에도 머릿속에 산재해 있는 여러 언어들의 지식이 이 책을 통해 깔끔하게 정리되었다(사실 그 전까지는 가끔 여러 언어의 문법을 섞어 써서 컴파일 오류를 발생시키곤 했다).

『새로 보는 프로그래밍 언어』는 프로그래밍 언어 자체뿐만 아니라 이와 관련된 이슈를 모두 다룬다는 점에서도 큰 의미를 가진다(프로그래밍 언어 분야에 이런 책은 여태껏 없었다!). 특히 컴파일러, 컴퓨터 구조, 시스템 프로그래밍, 논리학 등과 같은 내용도 훑어봄으로써 소프트웨어 분야 전체를 정리할 수 있는 기회도 제공해준다. 그러면서도 각 주제를 비교적 깊게 다루고 있으며, 풍부한 예를 통해 독자의 이해도 도모하고 있다. 프로그래밍 언어 분야의 정석으로 자리 잡을 수 있을 만큼 잘 쓰여진 책이다. 개발자라면 꼭 읽어 봐야 할 책이다.

이 책을 읽고 나면 여러분이 알고 있는 프로그래밍 언어의 세계, 그리고 컴퓨터의 세계가 한층 더 넓어질 것이다.

『새로 보는 프로그래밍 언어』는 방대한 내용을 다루는 만큼 책에서 미처 다루지 못한 심화 내용을 부록 CD에서 다룬다. 각 장에서 좀 더 깊게 다루는 내용을 CD에 담은 것이므로 책의 내용이나 흐름을 따라가기 위해 CD를 바로 참고할 필요는 없다. 물론 CD에 있는 내용도 중요하므로 꼭 읽어보자.

--- 옮긴이의 말

출판사 리뷰

핵심만 놓고 보자면 『새로 보는 프로그래밍 언어』는 프로그래밍 언어의 동작 원리에 대한 책이다. 많은 언어의 상세를 나열하기보다는 학생이나 개발자가 접할 만한 모든 언어의 기초가 되는 개념에 초점을 맞춘다. 이 책은 다양하고 구체적인 예를 이용하며 여러 언어가 각각 다른 방법으로 설계된 이유를 알게 해주는 트레이드오프(tradeoff)를 살펴본다. 또 컴파일러나 해석기(interpreter)를 만드는 방법(극소수 개발자가 수행하는 업무)을 설명하기보다는 컴파일러가 입력 프로그램에 무엇을 왜 하는지에 초점을 맞춘다. 그러므로 『새로 보는 프로그래밍 언어』는 언어 설계와 구현을 함께 살펴보며 특히 이들의 상호작용 방법에 중점을 둔다.

★ 이 책에 쏟아진 각계의 찬사 ★

『새로 보는 프로그래밍 언어』는 독자의 흥미와 관심을 잘 이끌어내는 교과서다. 각 주제마다 소개, 심화, 예시, 다른 주제와의 통합이 매우 잘 되어있다. 저자는 최신 정보를 이용해 다양한 프로그래밍 언어의 예를 들어가며 수많은 개념을 세세히 설명한다. 학생이 읽기에 적합한 수준으로 쓰였으며, 교육 목적으로 추가된 부분 덕분에 각 장은 쉽게 읽을 수 있고 다시 참조하기도 용이하다.
- 카말 다부르 / 드폴 대학

『새로 보는 프로그래밍 언어』는 고전 언어와 최근에 나온 언어를 총망라하면서도 깊이와 폭의 균형을 매우 잘 맞추고 있다.
- 징케 리 / 포트랜드 주립 대학

『새로 보는 프로그래밍 언어』는 프로그래밍 언어의 이론과 구현을 다룬 책 중 가장 포괄적이다. 스콧 교수는 오늘날 사용되는 주요 언어 전체를 아우르는 기본 원리와 더불어 각 언어를 구별 짓는 언어 설계 시의 선택까지 잘 설명하고 있다. 몇 가지 개정을 통해 독자들은 내용을 좀 더 친숙하게 받아들일 수 있게 됐다.
- 윌리엄 칼훈 / 블룸스버그 대학

스콧 교수는 최신 정보를 추가하고 학생들의 이해도를 높임으로써 개정판 ??새로 보는 프로그래밍 언어??를 성공적으로 출간했다. 새로 추가된 스크립팅 언어와 스크립팅 언어의 사용을 설명하기 위한 XML 용례를 다룬 장은 이번 개정판에서 가장 중요한 내용 부분이다.
- 아일린 헤드 / 빙햄턴 대학

『새로 보는 프로그래밍 언어』는 언어의 다양한 개념과 상세한 구현사항을 매우 명확히 설명할 뿐만 아니라 컴퓨터 구조와 컴파일러가 언어의 설계 및 구현과 어떻게 연관되는지 잘 설명하고 있다. 이 책은 프로그래밍 언어가 프로그래머와 컴퓨터를 연결해주는 다리며 컴퓨터 과학의 진정한 중심이라는 것을 보여준다.
- 제임스 라루스 / 마이크로소프트 리서치

『새로 보는 프로그래밍 언어』는 교과서에서 가장 중요한 세 가지 질적 요구사항인 폭, 깊이, 명확성 간의 균형을 잘 맞추고 있다. 스콧 교수는 가장 오래된 언어부터 가장 최신 언어에 이르는 프로그래밍 언어 전반을 모두 다루고 있으며, 학생들이 각 언어의 중요한 특징을 쉽게 이해할 수 있는 정도로 충분히 깊게 설명하고 있다. 이와 동시에 지나치게 어렵거나 특수한 내용으로 인해 학생들이 헤매는 일이 없도록 주의를 기울였다. 최근에는 스크립팅 언어가 주요 기술로 부상하고 있기에 이를 다룬 새로운 장은 이번 개정판에서 가장 귀중한 추가 부분이다. 프로그래밍 언어 분야의 금자탑이 될 거라 확실하다.
- 크리스토퍼 비커리 / 퀸즈 대학, 뉴욕시립대

★ 이 책의 구성 ★

1부는 프로그래밍 언어의 기초적인 내용을 다룬다.
(1) 언어 설계와 구현에 대한 소개, (2) 프로그래밍 언어 구문(syntax), (3) 이름, 유효 범위, 바인딩, (4) 의미 분석(semantic analysis), (5) 목표 기계의 구조(target machine architecture). 이 중에서 항목 (2)와 (5)에서는 주로 구현에 대한 내용을 다룬다. 항목 (1)과 (4)에는 언어 설계와 구현에 대한 내용이 섞여 있으며, 항목 (3)에서는 언어 설계에 대한 핵심 쟁점을 주로 다룬다.

2부에서는 프로그래밍 언어의 핵심 요소를 다룬다.
(6) 제어 흐름, (7) 자료형, (8) 서브루틴과 제어 추상화, (9) 자료 추상화와 객체지향. 마지막 항목은 초판에서보다 좀 더 앞부분에서 다루었는데, 이는 객체지향 언어가 현대 컴퓨팅에서 차지하는 중심적 위치를 반영한 것이다.

3부는 다른 관점에서 바라본 프로그래밍 모델을 다룬다.
(10) 함수형 언어(functional language), (11) 논리형 언어(logic language), (12) 병행, (13) 스크립팅 언어. 초판에서는 함수형 언어와 논리형 언어를 한 장에서 다뤘다.

4부는 언어 구현이라는 주제를 다시 다룬다.
(14) 실행 가능한 프로그램 만들기(코드 생성, 어셈블리, 링킹), (15) 코드 개선(최적화).

그림: 책을 읽는 다양한 순서

★ 개정판에서 추가된 내용 ★

● C99, C# 2.0, 자바 5 등 프로그래밍 언어 설계 분야의 최신 내용을 다룬다.
● 스크립팅 언어를 새로 추가된 장과 책 전반에서 설명하며, 펄, 파이썬, 루비, Tcl, PHP, 자바스크립트, XSLT 등을 다룬다.
● 병행처리를 광범위하게 설명하며 C#과 자바의 새로운 병행 패키지(JSR 166)를 다루는 장도 포함한다.
● 반복자, 예외, 다형성, 템플릿/제네릭, 유효 범위 규칙, 선언 정렬, 분리 컴파일, 가비지 콜렉션, 쓰레드와 동기화 등 새로운 내용이 추가됐다.
● 부록 CD에 추가 자료를 제공한다. 고급/선택적인 내용, 수백 개의 실제 용례를 담고 있으며, 검색 도구, 인터넷상의 사용설명서, 튜토리얼, 컴파일러, 해석기에 대한 링크도 제공한다.

★ 부록 CD 소개 ★

● 독자가 선택해 볼 수 있는 심화학습과 보충설명
● 300개 이상의 소스파일
● 공개 컴파일러와 해석기 링크 모음

추천평

컴퓨터 과학은 추상화 위에 추상화를 쌓는 데 있어 탁월한 분야다. 단순화된 인터페이스 뒤로 상세한 구현을 감추는 컴퓨터 과학 분야의 추상화는 미덕인 동시에 필수 불가결한 것이다. 운영체제, 데이터베이스, 컴파일러는 지난 40년 동안의 이론과 개발을 통해 나온 매우 복잡한 프로그램이다. 대부분의 경우 프로그래머가 소프트웨어를 생산적으로 사용하기 위해서 소프트웨어의 내부 구현이나 구조를 이해할 필요는 거의 없거나 전혀 없다. 대개는 모르는 게 약이다.

그러나 불투명한 추상화는 새로운 것을 탄생시키기 위한 좋은 기초가 아니라 진보를 막는 장애물이 될 수도 있다. 이 책의 주제인 프로그램과 프로그래밍 언어에 대해 생각해보라. 프로그램의 실행은 너무 느린데 프로파일링(profiling)을 통해 병목지점을 정확히 판단할 수 없거나 병목지점이 알고리즘으로 설명되지 않는 경우 어떻게 하겠는가? 생각해 볼 수 있는 몇 가지 문제점으로는 언어 구성소를 기계 명령어로 변환하는 부분, 프로세서와 기계 명령어가 상호작용하는 부분 등이 있다. 이런 문제를 해결하기 위해서는 각 추상화 단계와 그 연결성을 이해해야 한다.

추상화는 학습에도 필요하다. 영어의 극히 작은 부분만을 이용해서 작성한 프로그램이 어떻게 이진법만 사용하는 기계를 제어할 수 있는지, 프로그래밍 언어가 굉장히 다양해지고 그 수도 늘었지만 왜 모두 비슷한지 등과 같은 질문은 컴퓨터, 컴파일러, 프로그래밍 언어와 그 상세를 구분하지 않고는 답할 수 없다.

전반적인 컴퓨터 과학 교육 과정을 통해 이러한 질문에 답할 수 있게 된다. 대부분의 학부 과정에는 컴퓨터 구조, 운영체제, 프로그래밍 언어 설계, 컴파일러에 대한 과목이 들어있다. 모두 들을 만한 가치가 있는 좋은 과목이지만 다른 과목에 비해 결코 쉽지는 않다. 게다가 가끔 이 교과목들의 강의는 서로 독립적으로 이뤄지며, 강의에서 서로의 연관성에 대한 부분이 빠지곤 한다.

이 책은 컴퓨터 구조, 운영체제, 컴파일러 등을 구분 짓는 추상화 그 이상을 살펴봄으로써 앞서 언급한 질문에 대한 답을 제시한다. 마이클 스콧은 언어 구현, 실행 시간 시스템, 컴퓨터 구조에 유능한 연구자로 컴퓨터 과학의 다양한 분야를 모두 이용해서 현대 프로그래밍 언어에 대한 일관성 있는 이해를 도모하는 데 탁월하다.

이 책은 언어의 다양한 개념과 구현 상세를 매우 명확히 설명할 뿐만 아니라 컴퓨터 구조와 컴파일러가 언어의 설계 및 구현과 어떻게 연관되는지 잘 설명한다. 더욱이 언어가 해결하려는 문제점이 언어 설계에 어떤 영향을 주는지 명확히 설명하기 위해 다양한 언어가 실질적으로 사용되는 예를 잘 설명하고 있다.

고백하자면 이 책을 처음 읽었을 때는 걱정되었던 것이 사실이다. 당시 나는 마이클 스콧의 접근 방식이 교과 과정에서 프로그래밍 언어와 컴파일러의 중요성을 퇴락시키며, 학생들로 하여금 이 분야를 표면적으로만 이해하게 만든다고 생각했다. 그러나 다시 한번 책을 읽은 지금은 그 반대라는 걸 알게 되었다. 이 책은 프로그래밍 언어와 컴파일러를 적절한 상황에 등장시킴으로써 프로그래밍 언어가 프로그래머와 컴퓨터를 연결해주는 다리며 컴퓨터 과학의 진정한 중심이라는 것을 보여준다.
제임스 라루스 (마이크로소프트 리서치)

리뷰/한줄평1

리뷰

5.0 리뷰 총점

한줄평

첫번째 한줄평을 남겨주세요.