헬로 Bun : 차세대 자바스크립트 런타임+올인원 개발 키트를 만나다

헬로 Bun : 차세대 자바스크립트 런타임+올인원 개발 키트를 만나다

$23.48
Description
타입스크립트와 JSX를 아우르는 런타임 Bun으로 만나는 차세대 웹 개발
느리고 복잡한 노드 생태계의 판도를 바꾸기 위해, 차세대 자바스크립트 런타임이자 올인원 개발 키트인 Bun이 탄생했다. 자바스크립트/타입스크립트/JSX 코드를 바로 실행할 수 있고, 패키지 매니저, 모듈 시스템, 테스트 러너, 번들러, DB 등 다양한 기능을 내장했는데도 성능은 노드나 디노를 압도한다. 이 책은 Bun을 본격적으로 살펴보는 최초의 책으로서 Bun 기초부터 시나리오별 활용법과 예제 프로젝트까지, 웹 개발이 얼마나 우아할 수 있는지 보여준다.

저자

서대영

저자:서대영
서울시립대학교전자전기컴퓨터공학부를졸업한후삼성SDS에서웹개발자로커리어를시작했다.이후SK플래닛,원스토어,아마존에서백엔드개발을했다.현재는아내,아이와함께캐나다에거주하며에듀테크분야에서풀스택개발자로일하고있다.월방문자10만명의개인기술블로그(daleseo.com)에다양한주제의소프트웨어개발글을올리고있고,글로전달하기어려운내용은유튜브달레의코드(.youtube.com/@DaleSeo)채널에영상으로공유하고있다.

목차

베타리더후기x
시작하며xiii

PARTI반가워Bun!

CHAPTER1Bun시작하기3
1.1리눅스에서Bun설치하기3
1.2윈도우에서Bun설치하기5
1.3Bun설치확인하기6
1.4Bun업데이트하기7
1.5Bun실행하기8
1.6REPL실행하기9
_쉬어가는페이지런타임에대해서11

CHAPTER2Bun프로젝트생성하기13
2.1자바스크립트프로젝트란?14
2.2빈프로젝트만들기14
2.3프로젝트파일살펴보기16
2.4템플릿기반프로젝트만들기18
_쉬어가는페이지초기자에대해서20

CHAPTER3Bun으로프로그램실행하기21
3.1타입스크립트란?22
3.2타입스크립트실행23
3.3Node.js와의비교24
3.4타입스크립트설정26
_쉬어가는페이지타입스크립트의타입정의저장소DefinitelyTyped28

CHAPTER4Bun으로패키지관리하기31
4.1npm패키지저장소32
4.2패키지일괄설치33
4.3새로운패키지설치35
4.4기존패키지제거37
4.5기존패키지갱신38
4.6설치된패키지목록확인40
4.7전역패키지캐시42
4.8패키지잠금파일43
4.9패키지생명주기45
_쉬어가는페이지왜패키지의버전을잠가야할까?46

CHAPTER5Bun으로모듈불러오기49
5.1CJS모듈내보내기50
5.2ESM모듈내보내기51
5.3CJS모듈불러오기51
5.4ESM모듈불러오기53
_쉬어가는페이지자바스크립트의모듈시스템55

PARTIIBun으로무엇을개발할까?

CHAPTER6Bun으로CLI도구개발하기59
6.1명령줄인수읽기60
6.2명령줄에서입력받기61
6.3명령줄프로그램만들기63
_쉬어가는페이지사용자의입력을받기위한웹브라우저의API65

CHAPTER7Bun으로HTTP서버개발하기67
7.1기본요청처리68
7.2JSON통신69
7.3요청데이터읽기69
7.4쿼리문자열접근70
7.5양식데이터접근71
7.6HTTP상태코드71
7.7HTTP헤더설정72
7.8라우팅73
7.9예외처리74
7.10서버설정76
7.11프레임워크사용77
_쉬어가는페이지터미널기반HTTP클라이언트curl명령어79

CHAPTER8Bun으로웹소켓서버개발하기81
8.1핸드셰이크82
8.2서버측이벤트처리83
8.3웹소켓테스트84
8.4클라이언트에서데이터보내기85
8.5웹소켓닫기85
8.6서버에서데이터보내기86
8.7클라이언트측이벤트처리87
8.8실시간채팅애플리케이션구현87
_쉬어가는페이지웹소켓과Socket.IO93

CHAPTER9Bun으로파일입출력하기95
9.1파일의메타데이터읽기96
9.2파일을문자열로읽기97
9.3파일을바이너리데이터로읽기98
9.4파일을스트림으로읽기98
9.5파일을JSON객체로읽기99
9.6파일에문자열쓰기100
9.7파일복제하기101
9.8Node.js의API지원102
9.9폴더관리하기103
_쉬어가는페이지웹스트리밍105

CHAPTER10Bun의내장DB사용하기107
10.1데이터베이스접속108
10.2테이블생성하기109
10.3데이터삽입하기110
10.4데이터갱신하기111
10.5데이터삭제하기111
10.6데이터조회하기112
10.7데이터베이스닫기113
10.8다른데이터베이스사용113
_쉬어가는페이지SQLite데이터베이스119

PARTIIIBun으로도대체못하는게뭐임?

CHAPTER11Bun으로테스트하기123
11.1테스트작성하기124
11.2테스트실행하기124
11.3테스트그룹화하기125
11.4테스트실행제어127
11.5테스트전/후처리130
11.6함수모킹131
11.7모듈모킹133
11.8날짜/시간모킹135
11.9프리로드사용하기136
11.10파라미터화테스트137
_쉬어가는페이지테스팅프레임워크139

CHAPTER12Bun으로프로젝트빌드하기141
12.1기본프로젝트빌드142
12.2비자바스크립트파일불러오기145
_쉬어가는페이지빌드도구149

CHAPTER13Bun으로셸스크립트실행하기151
13.1셸명령어실행하기152
13.2셸명령어의결과를변수에저장하기153
13.3셸명령어에변수의값을삽입하기154
13.4오류처리155
13.5환경변수설정156
13.6실행경로변경157
_쉬어가는페이지셸의리다이렉션158

CHAPTER14Bun으로RESTAPI실전개발하기159
14.1데이터베이스160
14.2비즈니스로직구현160
14.3비즈니스로직테스트162
14.4RESTAPI구현165
14.5RESTAPI테스트166
14.6서버진입점구현170
14.7API서버직접테스트170
14.8API서버테스트스크립트173
14.9터미널클라이언트175
_쉬어가는페이지Elysia에대해서180

CHAPTER15Bun이제공하는유틸리티183
15.1실행지연184
15.2UUID생성186
15.3인코딩188
15.4해싱189
15.5비밀번호191

마치며193
찾아보기197

출판사 서평

세배빠른올인원자바스크립트개발키트Bun100%활용법

노드(Node.js)의등장은획기적인사건이었지만,시간이흐르며생태계는오버엔지니어링으로비대해졌고개발자들은뒷목을잡게되었다.Bun은복잡하지않고(패키지매니저,테스트러너,번들러내장)타입스크립트를바로실행할수있으며(트랜스파일러내장)CJS와ESM을모두지원한다.이러한여러기능을갖췄으면서도성능은노드와디노를압도한다.
이책은차세대자바스크립트런타임이자올인원개발키트인Bun을본격적으로살펴보는최초의도서로,핵심만간결히부담없이Bun을접할수있게구성되었다.Bun에내장된패키지관리,모듈시스템,테스팅,번들링,DB(SQLite),빌드등오늘날대규모웹개발에서필수적인기능들을하나씩살펴보며편안하게Bun에익숙해질수있다.여기에CLI도구,HTTP/웹소켓서버,채팅앱,셸스크립트실행,할일관리(to-do)RESTAPI등간단하면서도실무에도움이되는예제프로젝트들도수록되어있다.
Bun은많은자바스크립트개발자가오랫동안기다리던만능자바스크립트도구라고저자는말한다.npm보다30배빠른패키지매니저이고Jest보다20배빠른테스트러너이며Webpack보다200배빠른번들러다.느리고불필요하게비대해진노드중심툴체인에지쳤다면이책과함께Bun을만나보자.복잡하게만느껴지던자바스크립트웹개발이실은얼마나우아할수있는지다시금깨닫고초심을찾을수있을것이다.

주요내용
●설치,프로젝트생성,실행,패키지,모듈등Bun기초
●CLI도구,HTTP서버,웹소켓서버,채팅앱등을구축하며Bun익숙해지기
●파일입출력,DB,테스팅,프로젝트빌드등심화주제
●Bun과Elysia로to-do관리RESTAPI구축하기