本書について

対象読者

  • Webアプリケーションの開発を行ったことがある
  • サーバサイドKotlinやNuxt.jsに興味があり、Webアプリケーションの作成に挑戦してみたい方
  • より実践的なポートフォリオを作りたい方
  • ドメイン駆動設計に挑戦したい方

本書の執筆環境と動作環境

  • Docker 19.03.13
  • Docker Compose 1.27.4
  • Java 11.0.9.j9-adpt
  • Kotlin 1.4.10
  • Node.js v14.15.0
  • Yarn 1.22.10
  • Ktor 1.3.2
  • Nuxt.js 2.14.0
  • Vuetify 1.11.2

環境構築については記載は行いませんが、JavaやKotlin、Node.jsは次のツールを利用していますので参考にしてみてください。

サンプルコード

本書のサンプルコードはGitHubに置いてあります。次のリポジトリからコードをダウンロードするかGitでチェックアウトしてご利用ください。

免責事項

本書に記載された内容は、情報の提供のみを目的としています。したがって、本書を用いた開発、製作、運用は、必ずご自身の責任と判断によって行ってください。これらの情報による開発、製作、運用の結果について、著者はいかなる責任も負いません。

目次

本書について

対象読者
本書の執筆環境と動作環境
サンプルコード
免責事項

第1章 前書の振り返り

1.1 フレームワーク
  • 1.1.1 Ktor
  • 1.1.2 Nuxt.js
1.2 ToDoアプリケーション

第2章 認証

2.1 JWTトークン
2.2 アカウントテーブル
2.3 サーバ側認証処理
2.4 ログイン処理の実装
2.5 JWTトークンを設定する

第3章 DIコンテナ

3.1 DIコンテナの導入
3.2 インタフェースと実装クラス

第4章 ユニットテスト

4.1 テストフレームワークの導入
4.2 プロジェクトディレクトリ構成の変更
4.3 テストクラスの作成
  • 4.3.1 Controllerのテスト
  • 4.3.2 Serviceのテスト

第5章 ドメイン駆動設計

5.1 ドメインモデリング
  • 5.1.1 ユースケース図
  • 5.1.2 ドメインモデル図
5.2 アーキテクチャ
  • 5.2.1 3層アーキテクチャ
  • 5.2.2 クリーンアーキテクチャ
5.3 ドメインモデルの実装
  • 5.3.1 infrastructure
  • 5.3.2 interfaces
  • 5.3.3 usecase
  • 5.3.4 domain
5.4 まとめ

終わりに

第1章 前書の振り返り

本書は「KtorとNuxt.jsで作るWebアプリケーション入門(https://book-tech.com/books/4a55a484-1fc9-46a5-a6fb-617114661584)」の続編です。前書をお持ちでない方向けに振り返りを行います。ご興味をお持ちいただければぜひご購入いただけると幸いです。

1.1 フレームワーク

タイトルにも記載されているKtorとNuxt.jsについて簡単に説明します。

1.1.1 Ktor

Ktor(https://jp.ktor.work/)とはIntelliJ IDEAなどのIDEやKotlinを開発しているJetBrains社が作成した軽量Webフレームワークです。
2018年11月にv1.0.0がリリースされ、2020年12月現在v1.5.0までアップデートされており、採用実績も増えています。

1.1.2 Nuxt.js

Nuxt.js(https://ja.nuxtjs.org/)は、Vue.jsの公式ガイドラインに沿って強力なアーキテクチャを提供するように設計されたフレームワークです。
サーバサイドレンダリングを行うアプリケーションの開発に必要な設定が、あらかじめ行われているのが特徴になります。

1.2 ToDoアプリケーション

前書では次について説明しています。

  1. プロジェクト作成
  2. KtorによるREST ful API
  3. Nuxt.jsによるフロントエンド
  4. フロントエンドとバックエンドの連携
  5. Herokuへのデプロイ

サンプルコードもGitHubにて公開していますので、ぜひ参考にしてみてください。完成画面は次になります。

ToDo一覧画面

図1.1: ToDo一覧画面

ToDo新規追加モーダル

図1.2: ToDo新規追加モーダル

試し読みはここまでです。
この続きは、製品版でお楽しみください。