7: 2015-06-22 (月) 12:38:51 njf[6] [7] [8] | 現: 2017-05-25 (木) 02:09:12 njf[6] [9] [10] | ||
---|---|---|---|
Line 71: | Line 71: | ||
開発用のエディタとしてEclipseを使います。理由は他の言語の開発などでもよく使われるので資料が多いのと、PyDevというPython統合環境用EclipseプラグインがデフォルトでGAEをサポートしているので、テンプレートなどが用意されており便利だからです。もちろん、使い慣れたエディタで作業してもかまいません。 | 開発用のエディタとしてEclipseを使います。理由は他の言語の開発などでもよく使われるので資料が多いのと、PyDevというPython統合環境用EclipseプラグインがデフォルトでGAEをサポートしているので、テンプレートなどが用意されており便利だからです。もちろん、使い慣れたエディタで作業してもかまいません。 | ||
+ | |||
+ | |||
+ | また、GoogleはGAEに対応したeclipse用のプラグイン「[[Google Plugin for Eclipse:https://developers.google.com/eclipse/]]」をリリースしています。Webゲームの保存程度ならそれを使う必要は無いのここでは触れませんが、アプリ開発などではこれを使うとプッシュ通知などのテンプレートを利用できたりします。 | ||
+ | |||
Eclipseのインストールについては「Eclipse インストール」などで検索するとわかりやすい記事が大量にヒットすると思いますのでそちらを参考にしてください。 | Eclipseのインストールについては「Eclipse インストール」などで検索するとわかりやすい記事が大量にヒットすると思いますのでそちらを参考にしてください。 | ||
ちなみにEclipseはデフォルト設定だと結構遅いので、非力なパソコンの場合は「eclipse 高速化」などで検索して特にメモリ関連の設定などはすこし変更しておいた方が良いかもしれません。 | ちなみにEclipseはデフォルト設定だと結構遅いので、非力なパソコンの場合は「eclipse 高速化」などで検索して特にメモリ関連の設定などはすこし変更しておいた方が良いかもしれません。 | ||
Line 82: | Line 86: | ||
Pythonのコード補完などがそれなりに使えるようになり、GAE用のテンプレートも用意されているので大変便利です。 | Pythonのコード補完などがそれなりに使えるようになり、GAE用のテンプレートも用意されているので大変便利です。 | ||
- | Eclipseへのインストールは「Help」から「Install New SoftWare」を選び、URLにPydevの配布場所を入力します。このURLは変更される場合もあり得るので、上記PydevのサイトでEclipse plugin用のURLを確認してください。この記事執筆段階では「http://pydev.org/updates/」となっています。 | + | Eclipseへのインストールは「Help」から「Install New Software」を選び、URLにPydevの配布場所を入力します。このURLは変更される場合もあり得るので、上記PydevのサイトでEclipse plugin用のURLを確認してください。この記事執筆段階では「http://pydev.org/updates/」となっています。 |
&ref(pydevInstall.png,mw:480,mh:360); | &ref(pydevInstall.png,mw:480,mh:360); | ||
Line 149: | Line 153: | ||
runtime: python | runtime: python | ||
api_version: 1 | api_version: 1 | ||
+ | |||
handlers: | handlers: | ||
- url: /.* | - url: /.* | ||
Line 160: | Line 164: | ||
もし、versionを変えずにサーバーに登録するとソースコードが上書きされてしまい、元に戻すことは出来ません。アップデートするときはよほどささいな変更で無い限り、必ずversionを上げていくようにしましょう。そうすればいざというときにすぐに元に戻すことが出来ます。 | もし、versionを変えずにサーバーに登録するとソースコードが上書きされてしまい、元に戻すことは出来ません。アップデートするときはよほどささいな変更で無い限り、必ずversionを上げていくようにしましょう。そうすればいざというときにすぐに元に戻すことが出来ます。 | ||
- | runtimeは使っている言語環境です。ここではそのまま、pythonです。 | + | runtimeは使っている言語環境です。ここではそのまま、pythonです。この部分は将来的にpython3などが登場する可能性があり、そのような状況を見越してpython27とバージョンを明示的に指定しておくことも出来ます。実際に公開するアプリの場合は、その方が良いかも知れません。ただし、python27を指定する場合はthreadsafeというパラメータをapp.yamlで指定する必要があります。 |
+ | |||
+ | threadsafe: [true | false] | ||
+ | |||
+ | trueだとリクエストが同時に処理され、falseだとシリアルに処理されます。通常は処理を速くするためにtrueにして必要なリソースの部分に排他をかけます。 | ||
api_versionはGAEのAPIのバージョンです。現在は1しか無いようですので1にしておきましょう。Python3対応で2になりそうですが分かりません。 | api_versionはGAEのAPIのバージョンです。現在は1しか無いようですので1にしておきましょう。Python3対応で2になりそうですが分かりません。 | ||
Line 167: | Line 175: | ||
この例はかなり単純ですが、これ以外にもスレッドの管理方法や静的ファイルの紐付けなどをapp.yamlで行います。GAEで最初に躓きやすい場所なので、簡単な例でしっかり使い方を覚えておきましょう。開発中にまったく実行すらされなくなった、という場合は大抵app.yamlに間違いがあります。 | この例はかなり単純ですが、これ以外にもスレッドの管理方法や静的ファイルの紐付けなどをapp.yamlで行います。GAEで最初に躓きやすい場所なので、簡単な例でしっかり使い方を覚えておきましょう。開発中にまったく実行すらされなくなった、という場合は大抵app.yamlに間違いがあります。 | ||
+ | また、GAE Launcherのログボタンを押すと、エラーメッセージなどが表示されるので、何かおかしいときはそこで原因が分かる場合もあります。わからない事もあります。ちなみにログは何かの不具合か最初ウインドウが真っ白に見えるかも知れませんが、少しスクロールすると表示されます。 | ||
つぎにhelloworld.pyですが、こちらは簡単です。 | つぎにhelloworld.pyですが、こちらは簡単です。 | ||
Line 178: | Line 187: | ||
以上がHello Worldプロジェクトの内容です。実際の開発ではフレームワークなどを使うのでもう少し複雑になりますが、GAEの開発の概要は理解できると思います。 | 以上がHello Worldプロジェクトの内容です。実際の開発ではフレームワークなどを使うのでもう少し複雑になりますが、GAEの開発の概要は理解できると思います。 | ||
- | 次はGAEでデータを保存する例を紹介する予定です。 | + | もちろん、これらのファイルをEclipse以外のテキストエディタで作成し、GAEのLauncherに登録しても実行することが出来ます。 |
+ | |||
+ | 次「[[Google App Engine for Python その2]]」でGAEでデータを保存する例を紹介します。 |
(This host) = https://njf.jp