Chapter 01

はじめに

oubakiou
oubakiou
2021.10.31に更新

対象読者

本書では何らかの技術スタックにおいて既にWebアプリケーション開発を経験した事のある読者を対象としているため、初学者には不親切な箇所があります。0から学びたい場合には初学者向け書籍「0から分かる100%TS」をお待ち下さい。

本書(上巻)に登場する技術スタック

記載のバージョンは本書で動作確認を行ったバージョンですが、必ずしも同一バージョンでなければいけないというわけではありません。

TypeScript

JavaScriptへの変換が可能な静的型付き言語です。

https://www.typescriptlang.org/

React v17.0.2

宣言的なUIライブラリです。

https://ja.reactjs.org/

Material-UI

マテリアルデザインを採用したReactコンポーネント集です。2021/6現在の最新安定版はv4.11.4ですが、2021/9にリリース予定のv5ではデフォルトCSSライブラリのJSSからEmotionへの変更やUnstyled componentsの提供といった大規模な変更が予定されているため、本書では先んじてv5.0.0-alpha.36を採用しています。

https://material-ui.com/

Next.js v12.0.1

Reactをベースに、pageコンポーネントの概念やファイルベースでのルーティング定義、SSR/SSG/ISRなどの機能を備えたフレームワークです。

https://nextjs.org/

Apollo

GraphQL ClientのJavaScript実装であるAppolo Clientや、GraphQL ServerのJavaScript(Node.js)実装であるAppolo Server等を提供しているプロジェクトです。

https://www.apollographql.com/

Prisma

RDBのスキーマをPSL(Prisma Schema Language)で定義し、マイグレーションやORM機能を提供するライブラリです。

https://www.prisma.io/

Cloud Functions for Firebase

GCP(Firebase)におけるFaaSです。

https://firebase.google.com/docs/functions?hl=ja

Firebase Hosting

GCP(Firebase)における静的ファイル配信サービスです。

https://firebase.google.com/docs/hosting?hl=ja

MySQL

RDBです。

Vercelについて

本書ではFirebase/GCP系サービスを中心に採用しています。しかし中核ライブラリとして採用しているNext.jsには開発元であるVercel社による専用のホスティングサービスが存在します。無料のホビープランもあるので選択肢の一つとして検討するのも良いでしょう。

表紙は何?

Llama? No, it's a Guanaco

https://search.creativecommons.org/photos/998f1299-0d34-4dfb-a1e1-73e7f0d364a3

内容に誤りや誤字脱字などを見つけたら

著者までお知らせください。(必ずしも返信できるわけでは有りません)

Releases

v0.1.0 (2021/9/27)

  • オープンβ

v0.1.1 (2021/10)

  • 古くなっている箇所の修正
  • 取り扱っているバージョンを明記するよう変更
  • サンプルコードのGithubリポジトリ追加

下巻について

クリスマスまでには出版されることになっている