Google App Engine + Silverlight でタスク管理アプリケーション開発(1)

はじめに

これまでに、Google App Engine(以下 GAE) でいくつか Web サービスやアプリを公開しました。

でも、まだリッチな UI のアプリケーションは作ったことがありません。そろそろ挑戦したいと思っていましたが、JavaScript をほとんど使ってこなかったので、いきなり HTML + JavaScript で実装するのはハードルが高いです。

そこで、GAE と Silverlight を組み合わせたアプリケーションを開発してみます。既に GAE + Flash で作られたアプリケーションは存在するので、Silverlight でもやってみようじゃないか、と。

このネタは長くなるので、連載記事にします。

開発するアプリケーションについて

この連載で開発するアプリケーションの詳細は次の通りです。

  • GAE+Silverlight でタスク管理アプリケーション
  • クライアントは Silverlight
  • できるだけ MVVM で作る
  • サービス側は GAE/Python
  • Kay Framework を使う
  • サービス側は RESTful な Web API のみ提供
  • Silverlight クライアントとサービスは JSON でデータをやりとりする
  • タスクの CRUD を実装したらひとまずゴール

今思いつくのはこんなところかな。

Kay のプロジェクトを作成

まずサーバー側から作成します。次のコマンドを実行して、プロジェクトのひな型を生成します。

python manage.py startproject silvertask-web

なお、Kay の導入方法は次の記事を読むといいです。

メインのアプリを作成

Kay では、複数の小さなアプリが集まって1つのWebサービスを構築するので、そのメインとなるアプリのひな型を生成します。

python manage.py startapp core

名前を core にしていますが、main とかでもいいです。シェルの入力補完を考慮して、ディレクトリ内の他のファイルと頭文字が被らない名前がお勧めです。core なら c[Tab] ですぐ補完できて楽ちん。

settings.py を編集

先ほど作成したメインのアプリを登録するために、settings.py の下記の箇所を修正します。

# 作成したアプリケーションを登録
INSTALLED_APPS = (
    'kay.auth',
    'core',
)

APP_MOUNT_POINTS = {
    'core': '/',
}

# セッション機能と認証機能を有効にする
MIDDLEWARE_CLASSES = (
    'kay.sessions.middleware.SessionMiddleware',
    'kay.auth.middleware.AuthenticationMiddleware',
)

Kay が提供している認証機能とセッション機能を使いたいので、ついでに登録しています。

今回はここまで

今回の変更内容は下記のページで確認できます。

準備が終わったので、次回から実装に入ります。モデルとビューを作成する予定です。Silverlight のクライアントを実装するのはまだ先になるかな。