機械学習だけじゃない! Pythonでサーバーレスアプリ開発!『ほぼPythonだけでサーバーレスアプリをつくろう』発行技術の泉シリーズ、8月の新刊
[19/08/27]
提供元:PRTIMES
提供元:PRTIMES
インプレスグループで電子出版事業を手がける株式会社インプレスR&Dは、『ほぼPythonだけでサーバーレスアプリをつくろう』(著者:長谷場 潤也、安田 譲)を発行いたします。
最新の知見を発信する『技術の泉シリーズ』は、「技術書典」をはじめとした各種即売会や、勉強会・LT会などで頒布された技術同人誌を底本とした商業書籍を刊行し、技術同人誌の普及と発展に貢献することを目指します。
『ほぼPythonだけでサーバーレスアプリをつくろう』
https://nextpublishing.jp/isbn/9784844398974
[画像1: https://prtimes.jp/i/5875/2868/resize/d5875-2868-263997-0.jpg ]
著者:長谷場 潤也、安田 譲
小売希望価格:電子書籍版 1800円(税別)/印刷書籍版 2000円(税別)
電子書籍版フォーマット:EPUB3/Kindle Format8
印刷書籍版仕様:B5判/カラー/本文164ページ
ISBN:978-4-8443-9897-4
発行:インプレスR&D
<<発行主旨・内容紹介>>
本書は、「ほぼ」PythonだけでAWSを利用したサーバーレスアプリケーションを構築するためのガイドブックです。
バックエンドにChalice、フロントエンドにTranscrypt、ユニットテストとAPIテストにpytest、UIテストにSeleneを利用します。
実装部分をアプリエンジニアが、テスト部分をQAエンジニアが、それぞれの専門を活かして解説しています。
(本書は、次世代出版メソッド「NextPublishing」を使用し、出版されています。)
開発環境の構築から丁寧に解説
[画像2: https://prtimes.jp/i/5875/2868/resize/d5875-2868-552225-1.jpg ]
Python製のトランスパイラであるTranscryptで画面を実装
[画像3: https://prtimes.jp/i/5875/2868/resize/d5875-2868-115689-2.jpg ]
ユニットテスト、APIテストの方法も解説
[画像4: https://prtimes.jp/i/5875/2868/resize/d5875-2868-924801-3.jpg ]
<<目次>>
第1章 Pythonでサーバーレスアプリの実装をしよう
1.1 Pythonとは
1.2 サーバーレスとは
1.3 Chaliceとは
1.4 Transcryptとは
第2章 サーバーレスアプリ開発環境の構築をしよう
2.1 開発用PCを用意する
2.2 Pythonをインストールする
2.3 Javaをインストールする
2.4 Gitをインストールする
2.5 HTTPieをインストールする
2.6 Web Server for Chromeをインストールする
2.7 Access key IDとSecret access keyを取得する
2.8 AWSコマンドラインインターフェイスをインストールする
2.9 AWSの認証情報を設定する
2.10 作業用ディレクトリーを作成する
2.11 仮想環境を作成する
2.12 Chaliceをインストールする
2.13 Boto3をインストールする
2.14 Transcryptをインストールする
第3章 ChaliceでWeb APIの実装をしよう
3.1 開発するWeb API
3.2 プロジェクトを作成する
3.3 AWSにデプロイする
3.4 AWSから削除する
3.5 ローカル環境で実行する
3.6 モジュールを分割する
3.7 パス変数を受け取る
3.8 HTTPエラーを返す
第4章 DynamoDBでデータの永続化をしよう
4.1 DynamoDBとは
4.2 テーブルを設計する
4.3 DynamoDBをシミュレートする
4.4 テーブルを作成する
4.5 初期データを投入する
4.6 DynamoDBに接続する
4.7 データを登録する
4.8 データを更新する
4.9 データを削除する
4.10 AWS環境にデプロイする
第5章 Transcryptで画面の実装をしよう
5.1 HTMLで画面を作成する
5.2 CORSに対応する
5.3 初期表示処理を実装する
5.4 新規登録機能を実装する
5.5 変更機能を実装する
5.6 完了/完了取り消し機能を実装する
5.7 削除機能を実装する
5.8 AWSにデプロイする
第6章 AWS CodePipelineでCI/CD環境の構築をしよう
6.1 CI/CDとは
6.2 バックエンドのCI/CD環境を構築する
6.3 バックエンドのソースコードをGitで管理する
6.4 バックエンドの動作を確認する
6.5 フロントエンドのCI/CD環境を構築する
6.6 フロントエンドのソースコードをGitで管理する
6.7 フロントエンドの動作を確認する
6.8 お疲れ様でした!
第7章 Pythonでサーバーレスアプリのテストをしよう
7.1 実装しておしまいじゃないよね
7.2 V字モデルをみてみよう
7.3 テストピラミッドという理想形
7.4 だから「テスト」も「つくる」の範疇
第8章 pytestでユニットテストをしよう
8.1 PythonにおけるxUnit
8.2 ユニットテストの環境を用意する
8.3 ユニットテストを書いてみる
8.4 テストコードを実行する
8.5 ユニットテストの落とし穴
8.6 使えそうなテスト技法
8.7 技法を踏まえてテストケースを追加する
8.8 どのくらいテストできているか
8.9 モックを使ってテストする
8.10 不安が退屈に変わるまで
第9章 pytestでAPIテストをしよう
9.1 APIテストでもpytest
9.2 サーバーとデータベースの準備をする
9.3 APIテストの環境を用意する
9.4 APIテストを書いてみる
9.5 ここでも使える同値分割・境界値分析
9.6 組み合わせテストのテクニック
9.7 pictのインストールと使い方
9.8 テストのパラメーター化
9.9 実行してみると?
第10章 SeleneでUIテストをしよう
10.1 End to Endを自動化する
10.2 スモークテスト
10.3 UIテストの環境を用意する
10.4 Seleniumだけでやってみる、あえてね。
10.5 そしてSelene
10.6 Page Objectパターン
10.7 はやるかな?
第11章 手動テストは……さすがに手でやろう
11.1 手動テストはなくならない
11.2 じゃ今までのことは?
11.3 まだ確認してないことを手動テストで
11.4 完璧を目指すよりも……
第12章 CI/CD環境で自動テストをしよう
12.1 触れていなかった自動テストのメリット
12.2 CI/CD環境に自動テストを設定する
12.3 どのようにテストを運用するか
12.4 お疲れ様でした!
<<著者紹介>>
長谷場 潤也(はせば じゅんや)
技術系同人サークル「Thunder Claw」のニンジャスレイヤー好きのほう。第1章から第6章までを担当。埼玉西武ライオンズとクイズマジックアカデミーをこよなく愛するWebエンジニア兼Androidエンジニア。好きな大阪桐蔭は中村剛也、好きな富士大学は外崎修汰、好きなクイズ形式はアニメ&ゲーム並べ替え。
安田 譲(やすた じょう)
技術系同人サークル「Thunder Claw」のポプテピピック好きのほう。第7章から第12章までを担当。根っからの特撮好きな元システムエンジニア、現QAエンジニア。雨宮慶太がデザインする怪人や、坂本浩一がこだわる足のカットには日々感銘を受けている。過去6つの特撮作品にてエキストラ出演経験あり。
<<販売ストア>>
電子書籍:
Amazon Kindleストア、楽天koboイーブックストア、Apple Books、紀伊國屋書店 Kinoppy、Google Play Store、
honto電子書籍ストア、Sony Reader Store、BookLive!、BOOK☆WALKER
印刷書籍:
Amazon.co.jp、三省堂書店オンデマンド、hontoネットストア、楽天ブックス
※ 各ストアでの販売は準備が整いしだい開始されます。
※ 全国の一般書店からもご注文いただけます。
【インプレスR&D】 https://nextpublishing.jp/
株式会社インプレスR&D(本社:東京都千代田区、代表取締役社長:井芹昌信)は、デジタルファーストの次世代型電子出版プラットフォーム「NextPublishing」を運営する企業です。また自らも、NextPublishingを使った「インターネット白書」の出版などIT関連メディア事業を展開しています。
※NextPublishingは、インプレスR&Dが開発した電子出版プラットフォーム(またはメソッド)の名称です。電子書籍と印刷書籍の同時制作、プリント・オンデマンド(POD)による品切れ解消などの伝統的出版の課題を解決しています。これにより、伝統的出版では経済的に困難な多品種少部数の出版を可能にし、優秀な個人や組織が持つ多様な知の流通を目指しています。
【インプレスグループ】 https://www.impressholdings.com/
株式会社インプレスホールディングス(本社:東京都千代田区、代表取締役:唐島夏生、証券コード:東証1部9479)を持株会社とするメディアグループ。「IT」「音楽」「デザイン」「山岳・自然」「旅・鉄道」「学術・理工学」を主要テーマに専門性の高いメデイア&サービスおよびソリューション事業を展開しています。さらに、コンテンツビジネスのプラットフォーム開発・運営も手がけています。
【お問い合わせ先】
株式会社インプレスR&D NextPublishingセンター
TEL 03-6837-4820
電子メール: np-info@impress.co.jp