Go言語プログラミング入門 on Google App Engine

概 要

Googleが開発したプログラミング言語「Go言語」の入門書です。Go言語は2009年に発表され、その後下火になっていましたが、PythonやJavaアプリケーションに対応したGoogle App Engine(GAE)が正式リリースされた時にGo言語への対応も発表され、SDKの提供がはじまりました。今後は、Go言語によるWebアプリケーション開発の機会が増えていくと期待されています。本書では、GAEの初心者を対象にMac OS X、LinuxをベースにGoプログラミングの基礎から解説。開発環境Google App Engine for Go(GAE/G)の構築から、実際にサンプルを使ったプログラミング練習、簡単なWebアプリケーションの作成まで、わかりやすく解説しています。サンプルファイルのダウンロードサービス付き。

著者 横山隆司
価格 本体3000円(税別)
ISBN 978-4-7980-3180-4
発売日 2011/12/15
判型 B5変
色数 1色
ページ数 376
CD/DVD
対象読者 中級
シリーズ
表紙イメージ
購入 アマゾンで購入する
楽天で購入する

※リンク先によっては、販売ページが用意されていないことがあります。あらかじめご了承ください。

新しいウィンドウで開く 書籍購入のご案内

サポート

サポート情報は以下からご参照下さい。

サポート情報へのリンク

目次

Chapter 1 はじめに

1-1 対象読者について

1-2 動作環境について

1-3 現時点でリリースされている他の言語との比較

1-4 Go言語、Google App Engine for GoのサポートOSについて

1-5 GAE/Gの参考資料

Chapter 2 開発環境の構築

2-1 Pythonのインストール

2-2 GAE/G SDKのインストール

GAE/G SDKのダウンロード

GAE/G SDKのインストール

環境変数PATHへの登録

2-3 Hello Worldで動作確認

2-4 エディタの設定

Go言語のソースコードのダウンロード

emacsの設定

vimの設定

Go言語の統合開発環境(Go IDE)

2-5 まとめ

2章のポイント

Chapter 3 Go言語基礎

3-1 Go言語について

オープンソース

Go言語の特徴

拡張子は「.go」

文字コードは「UTF-8」で保存

コンパイル

コメント

行末のセミコロンが必須ではない

3-2 型

3-3 変数

変数の宣言

変数の宣言(慣れてきた人へ)

未使用の変数は存在してはいけない

変数を使用する時のポイント

3-4 定数

定数の宣言

特殊な定数iota

定数でのポイント

3-5 条件分岐

if(条件分岐)

簡単な処理が含まれたif文

switch(条件分岐)

簡単な処理が含まれたswitch文

caseに判定条件を記述したswitch文

switch文での型判定

条件分岐でのポイント

3-6 演算子

算術演算子

比較演算子

論理演算子

アドレス演算子

インクリメント、デクリメント

レシーブ演算子

演算子でのポイント

3-7 繰り返し

C言語に似たFor文

Go言語のwhile文

無限ループ

Go言語でのforeach文

複数の変数を扱ったFor文

break, continue文

for文でのポイント

3-8 配列

配列の基本的な使い方

配列の要素数が動的に変わる場合

配列から一部のデータを抜き出す。

3-9 関数

最初のプログラムをもう一度

関数を定義する

Go言語の関数は複数の戻り値が返せる

戻り値を利用しない事を明示する

関数が終了した後の処理を登録する

関数でのポイント

3-10 Type

Typeのポイント

3-11 構造体

構造体を簡単に使う

構造体を定義する

構造体で利用するメソッドを定義する

構造体のメンバに構造体のメソッドからアクセスする

構造体でのポイント

3-12 インターフェイス

インターフェイスを使った簡単な例

構造体のメンバの値をインターフェイスで利用する例

インターフェイスでのポイント

3-13 パッケージ

パッケージとは?

import

アクセス指定

パッケージでのポイント

3-14 Map

Map

new関数とmake関数の使い分け

3-15 httpパッケージ

HTTPリクエストを解析する

HTTPレスポンスヘッダを設定する

3-16 templateパッケージ

httpsampleをtemplateを使って作り直す

templateで複数のデータを扱う場合

文字列定数ではなく、外部のファイルから読み取る

template内で条件分岐

template内で定数の使用と、書式付き出力

3-17 まとめ

3章のポイント

Chapter 4 Google App Engine API

4-1 GAE/Gの仕組み

4-2 app.yaml

HelloWorldの設定ファイルを解析

Go言語のプログラムではなく、静的なhtmlファイルを使う

4-3 環境の判定APIと本番環境へのデプロイ

環境判定API

本番環境へのデプロイ

環境の判定APIと本番環境へのデプロイのポイント

4-4 appengineパッケージ

開発環境での動作

本番環境での動作

ログ出力

appengineパッケージのポイント

4-5 データストア

データストアへの書き込み

データストアからの読み込み

データストアの更新・削除

クエリの実行確認の準備

ソート順の指定

特定の条件に合致するデータを取得する

抽出件数を調整する

取得開始行を指定する

Ancestor条件を付けたクエリを実行する

トランザクション

トランザクションを利用する時の注意点

データストアのポイント

4-6 ユーザ認証

app.yamlで認証の制限をかける

プログラムで認証の制限をかける

ユーザ認証のポイント

4-7 Blobstore

Blobstoreを使ってファイルの登録

4-8 Capabilities

サービスチェックプログラム

4-9 Channel

サーバ-クライアントの1対1の通信プログラム

Channelのポイント

4-10 Mail

メールの送信

メールの受信

開発環境でのメール受信テスト

デフォルトのアドレス以外のアドレスでメールを受信する

Mailのポイント

4-11 Memcache

Memcacheへの追加、読み出し

Memcacheのポイント

4-12 Task Queue

TaskQueueAPIを利用する

TaskQueueのポイント

4-13 URL Fetch

GoogleをFetchする

WebAPIを実行してデータを受け取るための準備

XMLデータを受け取る

JSONデータを受け取る

URL Fetchのポイント

4-14 Cron Jobを実行する

4-15 4章のまとめ

4章のポイント

Chapter 5 Google App Engine for Goを使ったWebアプリケーション作成

5-1 どんなアプリケーションを作成するか

5-2 基本機能が搭載された掲示板

投稿機能と表示機能を作成

削除機能を作成

5-3 ログイン情報を利用した機能を追加する

ログイン、ログアウト機能の追加

便利機能の追加

5-4 コメント機能の追加と不具合の修正

コメント機能の追加

改行の反映

メッセージNo.の採番時にトランザクションを実行する

5-5 5章のまとめ

5章のポイント(このアプリケーションを拡張するという課題)

補章 今後のSDKの変更と、APIの追加に備えて

gofixコマンド

godocコマンド

GAE/G SDK 1.6.0で追加されたAPIについて

Backendのホスト名を取得する

アプリケーションのリソースの利用状況を取得する

データストアの格納情報をコントロールする

データストアからの読み出し時に値を編集する

データストアへの書き込み時に値を編集する

Memcache APIに追加された機能

PR

秀和システム