GAE: GAEやるならNetBeansがいいよ!

GAEの勉強をGAE本を読みながらしているのだけれど、なーんかうまいこと進まない。
だいたいの概念などはわかったんだけれど、なんかすっきりしないというか…。ちなみに読んでいるのはこれ。

物事が進むまでには突き抜けるための時間の投資が必要である事はわかっているのだけれど、さも単純そうなところで躓いてしまうと精神的に焦ってしまい、さらにテンパってしまう。これはよくない。とりあえず、地道に一度GAE本を終わらせてから…と思っていて、進めている行程をtwitterで呟いていたら、きしださん(@kis)から「JDOはやめとけ!Low Level API使う方がいい!」という主旨のアドバイスを頂いた。さらに、「GAEのデータストアを勉強したいんだったら僕の本読んでねw」というふうに言われたので、さっそく買ってきて読んだw。投資は惜しまないのだ。

いやー、この本はかなりいい!!GAEの本質(制限のあるリソース内でどう短く処理をするか)をズバッと説明しつつ、無駄と思われるJDOとJPAについてはデータの持ち方に無理が生じてくるという理由で一切の説明なし!その分、Low Level APIの説明を丁寧に行ってくれているので非常にすっきりとしつつも濃い内容です!しかもお安い!!普通のGAE for Java本って3,500円くらいが妥当なところを、この本は2,500円でおつりがくる。素晴らしい。

なにより、この本でよかったのはIDEをNetBeansに乗り換える決心をさせてくれたことです。「NetBeansいいよーっていう人はなんでいいっていうんだろう?Eclipseでいいやん!?」ってずっと思っていたのですが、GAEに関して言えば、NetBeansはめちゃくちゃ快適です(ただし、サンプルをこなしたりするレベルでしか使ってないです!)。コードアシストが強力で、ソースも見やすい。Eclipseよりもいいなぁと。
AndroidはEclipseでの開発なので、Eclipseでやりますが、GAEに関してはNetBeansでやろうと思いました。

あと、最初に紹介した本については、ダメだというわけではなく、自分に合わなかったというだけです。書き方自体はけっこうわかりやすいし、もともと準備されているJDOをメインにしている点も評価できるし、テンプレートエンジンVelocityを使って書いていくのもロジックとデザインを分離していくという点で、合点はいくのです。APIの説明も多いし。

たぶん、EclipseとNetBeansの手間の違いも影響してるんで、一概に本の問題ではないと思いますが、きしださんの本のほうが自分的には理論的で好きです。GAEはCPU時間を短くする必要があるからテンプレートエンジンを使うよりもJSPのほうがいいとか、JDOは重いうえにデータの持ち方に無理が生じるから、Low Level APIできちんと学んだほうがいいとか。
そのほうが自然と負荷も減らせるし、速いプログラムが組めますからね。

これらを学んだうえで、slim3を使うとさらによさげな気がします。
きしださんのNetBeansの本も欲しくなってきたな…。また余裕ができたら買おう。


Java: GAE for Javaの環境作成

私のEclipse(Galileo)はAndroid用にカスタマイズ(というほどのものでもないが)されているせいか、Google Pluginのインストールが何故か上手く行きませんでした…。入っても、ビルドエラーが発生…。

誰かがAndroid用とGAE用にEclipseを2つインストールしてると言ってたなぁと思って、そうtwitterで呟いたら、stachibanaさんがそうしているとのこと。やっぱり原因不明で壊れることあるから、そういう対策をしておいたほうがよさそう。

そこで、Eclipseをインストール開始。
Heliosもあるけれど、信頼と実績を取って、Galileoでw

http://www.eclipse.org/downloads/packages/release/galileo/sr2

Eclipse の Java Developers をDLしてから、Google Pluginをインストールしようとしたら、他の依存関係があってできませんでした。WTPがいるとか。じゃあと思ってWTPをインストールしようとしたらまた依存関係…。うがー!となってJava EE DevelopersをDLしてインストールしたら、すんなりとGoogle Pluginもインストールできました。

以下が、Google Pluginの更新URLです。
Eclipseからのインストールに使います。

http://dl.google.com/eclipse/plugin/3.5

しかし、ビルドの時点でエラーが…。原因はJREで、Android用にインストールしたJVM J2SE5というやつだと何故かエラーが発生してしまってダメでした。なので、Snow Leopardにもとから入っているJVM 1.6を選択してみたところ、ビルドが通りました。実行して、Hello App Engine! を見る事に成功!長かったー!実際には夕方からやっていたので、相当時間がかかってます…。

しかし、ビルドエラーが原因だったということは、ひょっとしてEclipseを入れ直さなくても、JREの指定を変えればよかっただけだったのか…?とか思いましたが、まぁどちらにしろ、環境は分けておいたほうがいいだろうと思います。いや、思わせて下さい。


Mac: Quick Look Helperを停止させる

MacBookのバッテリーの持ちが悪くなるのと異常に熱くなる原因。
いつも、どのタイミングでかはわからないのだけれど、Quick Look HelperというやつがCPUを150%近く占有してしまう。この150%ってのはCPUコアが2つあるからで、200%になったら使い切ってるということになるので、150%でも問題はないのだけれど、これが動き出すと全体的にモッサリする上にCPU温度が80度を超えてくるので、腿の上にMacBook置いて作業とかしてたらめちゃくちゃ熱い!

耐えられないので、常に切るようにしたいと思っていたら、情報があったので、載せておきます。ただし、副作用は知りませんので。

sudo vi /System/Library/LaunchAgents/com.apple.quicklook.plist

を実行して、xmlファイル内に以下を追加してください。

<key>Disabled</key>
<true/>

多分、dist内に追加だと思います。


日記:退職しました

本日を以て退職しました!
実際の退職日は有休消化をいれて12月中旬なのですが、
今日が最後の出社日でした。
今のところ、Androidアプリ開発やWebアプリのパッケージ開発などを
行っていこうと思っています。

個の力では限界があることはわかっていつつも、
出来る限りのことをやってからステップアップしたい。
そう考えています。

ひとまずは自由になるので、明日は淡路島に行ってきます。
淡路島一周のイベントが明後日にあるのですが、果たして天気は大丈夫なのか…。


日記:はかどった一日

今日は帰ってからAndroidアプリの開発の続きをやってました。
今やっているアプリの詳細は、今回は個人の作品ではないので(Androidのコーディングは私一人ですが)、まだ話せません。まぁ出来上がってリリースされたら報告という感じでしょうけれど、一番面倒かな〜と思っていた部分が2つともできたので、後は簡単な処理をつけていくだけのはず…と思っていたら、今思い出しました…。あと1つ強敵がおったわ〜(-_-;)

今回は全く会ったこともない人達との協業です。
個人のアプリも作っていきたいのですが、まずはチームプレーを的確に行うことで、他のメンバーに信頼してもらいたいなと思います。まずは信頼からですからね、何事も。

個人で考えているアイデアもあるので、このアプリが終わったら、GAE on PythonとAndroidでプロトタイプを作ってみようと思います!11月からはずっとアプリ開発に専念できるので、ワクワクしますね!!収入が安定しなくなるという面ではとても不安ですが、その分、頭に汗を流させて世の中が便利・もしくは楽しくなるようなアプリを作っていきたいです!!