RustによるWebアプリケーション開発 設計からリリース・運用まで

ラストニヨルウェブアプリケーションカイハツセッケイカラリリースウンヨウマデ
RustによるWebアプリケーション開発 設計からリリース・運用まで
自分メモ
気になった本やコミックの情報を自分に送れます

内容紹介

+ もっとみる

目次

第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章 エコシステムの紹介
 axum、actix-web、rocket、warp、tonic……など

製品情報

製品名 RustによるWebアプリケーション開発 設計からリリース・運用まで
著者名 著:豊田 優貴 著:松本 健太郎 著:吉川 哲史
発売日 2024年09月30日
価格 定価:4,400円(本体4,000円)
ISBN 978-4-06-536957-9
判型 B5変型
ページ数 320ページ

著者紹介

著:豊田 優貴(トヨダ ユウキ)

いくつかのRustに関連する書籍・雑誌の執筆やレビュー、Web上のメディアでの連載の経験をもつ。また、日本国内向けのRustのカンファレンスも行っている。そのほか、Rustに関連するOSSへの貢献を行っている。著書に『実践Rustプログラミング入門』(秀和システム、共著)がある。

著:松本 健太郎(マツモト ケンタロウ)

株式会社estie。不動産業界をデータで支えるサービスをRustで開発するソフトウェアエンジニア。「Shinjuku.rs」や「Rust、何もわからない…」といったLT会を運営している。著書に『実践Rustプログラミング入門』(秀和システム、共著)がある。

著:吉川 哲史(ヨシカワ サトシ)

フェアリーデバイセズ株式会社プロダクト開発部部長/プログラマ。自社製品へRustを導入し、自らも実装を行う。著書に『実践Rustプログラミング入門』(秀和システム、共著)がある。

オンライン書店で見る

ネット書店
  • Amazon
  • e-hon
  • HMV&BOOKS online
  • 紀伊國屋書店
  • セブンネットショッピング
  • TSUTAYA ONLINE
  • honto
  • Honya Club
  • 楽天ブックス