RustによるWebアプリケーション開発 設計からリリース・運用まで
- タイトル読み
- ラストニヨルウェヴアプリケーションカイハツ せっけいからリリース・うんようまで
- 著者ほか
- 豊田優貴/松本健太郎/吉川哲史・著
- 著者ほか読み
- とよだ・ゆうき/まつもと・けんたろう/よしかわ・さとし
- 発行
- 2024/09/26
- サイズ
- B5変
- ページ数
- 320
- ISBN
- 978-4-06-536957-9
- 定価
- 4,400円(税込)
- 在庫
- 在庫あり
書籍を購入する
内容紹介
Rustによるアプリケーション開発のベストプラクティス!
経験豊富な筆者が貴重な知識とテクニックを伝授。
「蔵書管理アプリケーション」の実装を通じて、設計、開発、保守、運用までハンズオンで学ぶ! 今こそ現場にRustを!
目次
第1章 本書で開発するもの
1.1 本書で開発する蔵書管理システムの概要
1.2 アプリケーションの機能
1.3 システムの設計
第2章 開発環境の構築
2.1 一般的なRustの開発環境構築
2.2 Docker Composeを用いたローカルPCでの開発環境構築
2.3 タスクランナーcargo-makeの導入
2.4 フロントエンドの環境構築
第3章 最小構成アプリケーションの実装
3.1 新しくプロジェクトを作る
3.2 「axum」でサーバーを起動する
コラム:Rustの非同期ランタイム
3.3 ヘルスチェックを実装する
コラム:impl IntoResponse
3.4 ユニットテストを書く
3.5 データベースと接続する
3.6 デプロイパイプラインを構築する
コラム:GitHub Actions
第4章 蔵書管理サーバーアプリケーションの設計
4.1 レイヤードアーキテクチャとは
4.2 なぜレイヤードアーキテクチャを採用するか
4.3 今回採用するレイヤードアーキテクチャ
4.4 依存性注入
4.5 レイヤードアーキテクチャをRustで実現するには
4.6 レイヤードアーキテクチャで再実装
4.7 各ワークスペースメンバーへのコードの移動
コラム:async-traitとは何か
コラム:RustのDIコンテナの候補としての「shaku」
第5章 蔵書管理サーバーの実装
5.1 実装の概要
5.2 シンプルな蔵書データの登録・取得処理の作成
コラム:todo!マクロとunimplemented!マクロ
コラム:コンパイルが成功するのにrust-analyzerのエラーが表示される場合の対応
5.3 本格実装の事前準備
5.4 ユーザー管理機能の実装
5.5 蔵書のCRUD機能のアップデート
5.6 蔵書の貸出機能の実装
5.7 蔵書データへの貸出情報追加の実装
5.8 フロントエンドとの結合動作確認
第6章 システムの結合とテスト
6.1 本書のアプリケーションのテスト戦略
6.2 rstestを使ったテスト
6.3 mockallを使ったテスト
コラム:「モック」
6.4 sqlxを使ったテスト
6.5 アプリケーションのテスト実装
第7章 アプリケーションの運用
7.1 オブザーバビリティ
7.2 ビルドスピードの改善
コラム:lld
コラム:Craneliftを利用する
7.3 OpenAPI
第8章 エコシステムの紹介