Skip to content

DaleSeo/hello-bun

Repository files navigation

헬로 Bun 🥟

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

book

구매 링크

저자 정보

Bun이 어떻게 진화하는지에 대해서는 블로그나 유튜브를 통해서 꾸준히 소식을 전할 예정입니다. 그리고 디스코드를 통해서 책의 내용에 대해서 피드백을 구하고 독자 여러분과 소통하고 싶습니다.

목차

PART I 반가워 Bun!

  • 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
  • 2.1 자바스크립트 프로젝트란? 14
  • 2.2 빈 프로젝트 만들기 14
  • 2.3 프로젝트 파일 살펴보기 16
  • 2.4 템플릿 기반 프로젝트 만들기 18
  • _쉬어 가는 페이지 초기자에 대해서 20
  • 3.1 타입스크립트란? 22
  • 3.2 타입스크립트 실행 23
  • 3.3 Node.js와의 비교 24
  • 3.4 타입스크립트 설정 26
  • _쉬어 가는 페이지 타입스크립트의 타입 정의 저장소 Definitely Typed 28
  • 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
  • 5.1 CJS 모듈 내보내기 50
  • 5.2 ESM 모듈 내보내기 51
  • 5.3 CJS 모듈 불러오기 51
  • 5.4 ESM 모듈 불러오기 53
  • _쉬어 가는 페이지 자바스크립트의 모듈 시스템 55

PART II Bun으로 무엇을 개발할까?

  • 6.1 명령줄 인수 읽기 60
  • 6.2 명령줄에서 입력받기 61
  • 6.3 명령줄 프로그램 만들기 63
  • _쉬어 가는 페이지 사용자의 입력을 받기 위한 웹 브라우저의 API 65
  • 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
  • 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
  • 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
  • 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으로 도대체 못 하는 게 뭐임?

  • 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
  • 12.1 기본 프로젝트 빌드 142
  • 12.2 비자바스크립트 파일 불러오기 145
  • _쉬어 가는 페이지 빌드 도구 149
  • 13.1 셸 명령어 실행하기 152
  • 13.2 셸 명령어의 결과를 변수에 저장하기 153
  • 13.3 셸 명령어에 변수의 값을 삽입하기 154
  • 13.4 오류 처리 155
  • 13.5 환경 변수 설정 156
  • 13.6 실행 경로 변경 157
  • _쉬어 가는 페이지 셸의 리다이렉션 158
  • 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
  • 15.1 실행 지연 184
  • 15.2 UUID 생성 186
  • 15.3 인코딩 188
  • 15.4 해싱 189
  • 15.5 비밀번호 191

기타 링크