Pythonではじめるソフトウェアアーキテクチャ

書籍情報
ISBN978-4-320-12443-1
判型B5 
ページ数456ページ
発売日2019年02月26日
本体価格6,000円
Pythonではじめるソフトウェアアーキテクチャ 書影
Pythonではじめるソフトウェアアーキテクチャ

新刊

スケーラビリティ,頑健性,セキュリティ,パフォーマンスが優れているアプリケーションをPythonで実現!
 本書は,Pythonを用いたアプリケーション設計方法を様々な観点から解説します。ビジネス要求を満たす製品を構築するためには欠かすことのできない,保守性,再利用性,テスト容易性,スケーラビリティ,パフォーマンス,ユーザビリティ,セキュリティを取り上げ,読者が頑健かつ柔軟なソフトウェアの設計方法を理解することを目的としています。
 またDevOpsや継続的インテグレーション,最適なオブジェクト指向の使用方法なども紹介しています。これらを理解することで,読者はビジネス規模が拡大しても耐え得る,スケーラブルなアプリケーション設計を構築できるようになるでしょう。
 アプリケーション構築に欠かせない,各フレームワークのメリットなどにも焦点を当てており,これからアプリケーションを設計しなければならないエンジニアにとって価値の高い実践的な内容も含んでいます。特に第7,8章で解説されるデザインパターンとアーキテクチャパターンは,汎用的に使える知識であり,たとえPythonを使用しないエンジニアでも大きな恩恵を受けることができるでしょう。

本書で学ぶこと
- 品質属性を正しく考慮したプログラムの実装
- スケーラブルなWebアプリケーションの設計
- Pythonの特徴を活かしたデザインパターン
- テストツールを用いたパフォーマンスの最適化
- Pythonアプリケーションをリモート環境やクラウドへデプロイする方法
- Pythonのセキュアアーキテクチャアプリケーション

目次

第1章 ソフトウェアアーキテクチャの原則
1.1 ソフトウェアアーキテクチャの定義
1.2 ソフトウェアアーキテクチャの特性
1.3 ソフトウェアアーキテクチャの重要性
1.4 システムアーキテクチャとエンタープライズアーキテクチャ
1.5 アーキテクチャの品質属性
1.6 まとめ

第2章 修正容易性と可読性
2.1 修正容易性とは
2.2 修正容易性に関連する品質属性
2.3 可読性とは
2.4 可読性向上のテクニック
2.5 凝集度と結合度
2.6 修正容易性向上のテクニック
2.7 静的解析ツールとメトリクス測定
2.8 コードリファクタリング
2.9 まとめ

第3章 テスト容易性
3.1 テスト容易性とは
3.2 テストの戦略
3.3 ホワイトボックステスト
3.4 テスト駆動開発
3.5 まとめ

第4章 パフォーマンス
4.1 パフォーマンスとは
4.2 ソフトウェアパフォーマンスエンジニアリング
4.3 パフォーマンステストツールと測定ツール
4.4 計算量
4.5 パフォーマンス測定
4.6 プロファイリング
4.7 その他のツール
4.8 データ構造のプログラミングパフォーマンス
4.9 まとめ

第5章 スケーラビリティ
5.1 スケーラビリティとパフォーマンス
5.2 並行性
5.3 マルチスレッディング
5.4 マルチプロセッシング
5.5 マルチスレッディング vs. マルチプロセッシング
5.6 非同期処理
5.7 並行処理の選択肢
5.8 並行処理のライブラリ
5.9 Webを用いたスケール
5.10 WSGI
5.11 スケーラビリティアーキテクチャ
5.12 まとめ

第6章 セキュリティ
6.1 情報セキュリティアーキテクチャ
6.2 セキュアコーディングとは
6.3 一般的な脆弱性
6.4 Pythonのセキュリティ
6.5 Webアプリケーションのセキュリティ
6.6 セキュアコーディングの注意点
6.7 セキュアコーディングの開発方針
6.8 まとめ

第7章 デザインパターン
7.1 デザインパターンの構成要素
7.2 デザインパターンのカテゴリ
7.3 生成に関するパターン
7.4 構造に関するパターン
7.5 振る舞いに関するパターン
7.6 まとめ

第8章 アーキテクチャパターン
8.1 MVCの概要
8.2 Django
8.3 Flask
8.4 イベント駆動型プログラミング
8.5 マイクロサービスアーキテクチャ
8.6 パイプとフィルタのアーキテクチャ
8.7 まとめ

第9章 デプロイ容易性
9.1 デプロイ容易性とは
9.2 マルチティアアーキテクチャ
9.3 Pythonでのデプロイ
9.4 デプロイパターン
9.5 まとめ

第10章 デバッグのテクニック
10.1 printによるデバッグ
10.2 シンプルなデバッグテクニック
10.3 ロギング
10.4 デバッガ
10.5 発展的なデバッグ――トレース
10.6 まとめ

索 引