이미 소장하고 있다면 판매해 보세요.
|
베타리더 후기 x
시작하며 xiii PART I 반가워 Bun! CHAPTER 1 Bun 시작하기 3 1.1 리눅스에서 Bun 설치하기 3 1.2 윈도우에서 Bun 설치하기 5 1.3 Bun 설치 확인하기 6 1.4 Bun 업데이트하기 7 1.5 Bun 실행하기 8 1.6 REPL 실행하기 9 _쉬어 가는 페이지 런타임에 대해서 11 CHAPTER 2 Bun 프로젝트 생성하기 13 2.1 자바스크립트 프로젝트란? 14 2.2 빈 프로젝트 만들기 14 2.3 프로젝트 파일 살펴보기 16 2.4 템플릿 기반 프로젝트 만들기 18 _쉬어 가는 페이지 초기자에 대해서 20 CHAPTER 3 Bun으로 프로그램 실행하기 21 3.1 타입스크립트란? 22 3.2 타입스크립트 실행 23 3.3 Node.js와의 비교 24 3.4 타입스크립트 설정 26 _쉬어 가는 페이지 타입스크립트의 타입 정의 저장소 Definitely Typed 28 CHAPTER 4 Bun으로 패키지 관리하기 31 4.1 npm 패키지 저장소 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 CHAPTER 5 Bun으로 모듈 불러오기 49 5.1 CJS 모듈 내보내기 50 5.2 ESM 모듈 내보내기 51 5.3 CJS 모듈 불러오기 51 5.4 ESM 모듈 불러오기 53 _쉬어 가는 페이지 자바스크립트의 모듈 시스템 55 PART II Bun으로 무엇을 개발할까? CHAPTER 6 Bun으로 CLI 도구 개발하기 59 6.1 명령줄 인수 읽기 60 6.2 명령줄에서 입력받기 61 6.3 명령줄 프로그램 만들기 63 _쉬어 가는 페이지 사용자의 입력을 받기 위한 웹 브라우저의 API 65 CHAPTER 7 Bun으로 HTTP 서버 개발하기 67 7.1 기본 요청 처리 68 7.2 JSON 통신 69 7.3 요청 데이터 읽기 69 7.4 쿼리 문자열 접근 70 7.5 양식 데이터 접근 71 7.6 HTTP 상태 코드 71 7.7 HTTP 헤더 설정 72 7.8 라우팅 73 7.9 예외 처리 74 7.10 서버 설정 76 7.11 프레임워크 사용 77 _쉬어 가는 페이지 터미널 기반 HTTP 클라이언트 curl 명령어 79 CHAPTER 8 Bun으로 웹소켓 서버 개발하기 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.IO 93 CHAPTER 9 Bun으로 파일 입출력하기 95 9.1 파일의 메타 데이터 읽기 96 9.2 파일을 문자열로 읽기 97 9.3 파일을 바이너리 데이터로 읽기 98 9.4 파일을 스트림으로 읽기 98 9.5 파일을 JSON 객체로 읽기 99 9.6 파일에 문자열 쓰기 100 9.7 파일 복제하기 101 9.8 Node.js의 API 지원 102 9.9 폴더 관리하기 103 _쉬어 가는 페이지 웹 스트리밍 105 CHAPTER 10 Bun의 내장 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 PART III Bun으로 도대체 못 하는 게 뭐임? CHAPTER 11 Bun으로 테스트하기 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 CHAPTER 12 Bun으로 프로젝트 빌드하기 141 12.1 기본 프로젝트 빌드 142 12.2 비자바스크립트 파일 불러오기 145 _쉬어 가는 페이지 빌드 도구 149 CHAPTER 13 Bun으로 셸 스크립트 실행하기 151 13.1 셸 명령어 실행하기 152 13.2 셸 명령어의 결과를 변수에 저장하기 153 13.3 셸 명령어에 변수의 값을 삽입하기 154 13.4 오류 처리 155 13.5 환경 변수 설정 156 13.6 실행 경로 변경 157 _쉬어 가는 페이지 셸의 리다이렉션 158 CHAPTER 14 Bun으로 REST API 실전 개발하기 159 14.1 데이터베이스 160 14.2 비즈니스 로직 구현 160 14.3 비즈니스 로직 테스트 162 14.4 REST API 구현 165 14.5 REST API 테스트 166 14.6 서버 진입점 구현 170 14.7 API 서버 직접 테스트 170 14.8 API 서버 테스트 스크립트 173 14.9 터미널 클라이언트 175 _쉬어 가는 페이지 Elysia에 대해서 180 CHAPTER 15 Bun이 제공하는 유틸리티 183 15.1 실행 지연 184 15.2 UUID 생성 186 15.3 인코딩 188 15.4 해싱 189 15.5 비밀번호 191 마치며 193 찾아보기 197 |
달레
|
자바스크립트 생태계는 폭발적으로 성장하여 같은 목표를 가진 라이브러리가 여러 개 있으며, 이 중 어떤 것을 써야 할지 고민하는 것은 피곤한 일입니다. 자바스크립트 프로젝트는 갈수록 규모가 커지고 애플리케이션이 복잡해져서 빌드와 테스트, 배포를 하려면 다양한 개발 도구를 다룰 줄 알아야 합니다. 타입스크립트가 어떻게 자바스크립트로 컴파일(compile)되고, JSX가 어떻게 자바스크립트로 트랜스파일(transpile)되며, 최종적으로 어떻게 최적화되어 번들로 클라이언트에 배포되는지 정확히 파악하기가 어려워졌습니다.
--- p.xi 옛날에는 자바스크립트로 작성된 프로그램은 이렇게 브라우저를 통해서 클라이언트 측에서만 실행할 수 있었습니다. 그러다 2009년에 Node.js가 등장하면서 서버 측에서도 자바스크립트 프로그램을 실행할 수 있는 길이 열리게 되었습니다. (…) Bun은 Node.js와 Deno처럼 기본적으로 백엔드 개발에 사용하기 위해서 만들어진 자바스크립트 런타임이며, Zig라는 아직 많은 분들에게 생소할 수도 있는 차세대 프로그래밍 언어로 개발이 되었습니다. --- p.11 test.todo() 또는 it.todo() 함수를 사용하여 아직 완성되지 않은 테스트 케이스를 표시해놓으면 테스트를 실행할 때마다 상기할 수 있어서 좋습니다. 애플리케이션 코드보다 테스트 코드를 먼저 작성하는 테스트 주도 개발(test-driven development, TDD)을 실천할 때 특히 유용하게 사용되는 기능입니다. --- p.127 앞에서 구현한 REST API를 테스트하기 위한 코드를 tasks-api.test.ts 파일에 작성하겠습니다. 비즈니스 로직에 대한 테스트는 이미 했으니, API에 대한 테스트를 작성할 때는 비즈니스 로직을 실행하는 메서드를 spyOn() 함수를 사용해서 모킹(mocking)을 해주겠습니다. (…) Bun 위에서 돌아가는 Elysia 프레임워크도 웹 표준 API인 Request와 Response 클래스를 지원하므로 마치 브라우저에서 API를 호출하는 것처럼 자연스럽게 테스트 코드를 짤 수 있습니다. --- pp.166-167 |
|
세 배 빠른 올인원 자바스크립트 개발 키트 Bun 100% 활용법
노드(Node.js)의 등장은 획기적인 사건이었지만, 시간이 흐르며 생태계는 오버엔지니어링으로 비대해졌고 개발자들은 뒷목을 잡게 되었다. Bun은 복잡하지 않고(패키지 매니저, 테스트 러너, 번들러 내장) 타입스크립트를 바로 실행할 수 있으며(트랜스파일러 내장) CJS와 ESM을 모두 지원한다. 이러한 여러 기능을 갖췄으면서도 성능은 노드와 디노를 압도한다. 이 책은 차세대 자바스크립트 런타임이자 올인원 개발 키트인 Bun을 본격적으로 살펴보는 최초의 도서로, 핵심만 간결히 부담 없이 Bun을 접할 수 있게 구성되었다. Bun에 내장된 패키지 관리, 모듈 시스템, 테스팅, 번들링, DB(SQLite), 빌드 등 오늘날 대규모 웹 개발에서 필수적인 기능들을 하나씩 살펴보며 편안하게 Bun에 익숙해질 수 있다. 여기에 CLI 도구, HTTP/웹소켓 서버, 채팅 앱, 셸 스크립트 실행, 할 일 관리(to-do) REST API 등 간단하면서도 실무에 도움이 되는 예제 프로젝트들도 수록되어 있다. Bun은 많은 자바스크립트 개발자가 오랫동안 기다리던 만능 자바스크립트 도구라고 저자는 말한다. npm보다 30배 빠른 패키지 매니저이고 Jest보다 20배 빠른 테스트 러너이며 Webpack보다 200배 빠른 번들러다. 느리고 불필요하게 비대해진 노드 중심 툴체인에 지쳤다면 이 책과 함께 Bun을 만나보자. 복잡하게만 느껴지던 자바스크립트 웹 개발이 실은 얼마나 우아할 수 있는지 다시금 깨닫고 초심을 찾을 수 있을 것이다. 주요 내용 ● 설치, 프로젝트 생성, 실행, 패키지, 모듈 등 Bun 기초 ● CLI 도구, HTTP 서버, 웹소켓 서버, 채팅 앱 등을 구축하며 Bun 익숙해지기 ● 파일 입출력, DB, 테스팅, 프로젝트 빌드 등 심화 주제 ● Bun과 Elysia로 to-do 관리 REST API 구축하기 |