March 9, 2010

Pythonの開発環境のメモ(EclipseやPyDev等)













Cisco、Solaris、Linux、鯖管、情シス、ネットワークセキュリティと、もっぱらインフラ系の仕事ばっかりしてましたが、最近になってプログラミングにハマっております(私事的に)。





 そろそろ環境は整ってきた感じなので、プログラミング素人目線でやってきた環境構築についてひとまずまとめてみようかと思います。言っておきますけど、この記事の読者対象はプログラミング初心者のつもりで書いていますよ。





Pythonのインストール





 まずは最初はPythonそのもののインストールが必要です。PyJUGのダウンロードページから必要なパッケージをダウンロードしてインストールしましょう。バージョンごとに別ディレクトリにインストールするのが良いでしょう。



 (2010年3月時点のバージョンの使い分け)

 これも素人目線で物を言いますので、正確性については目をつぶってください・・・。


Python 3.0.x

2008年8月にリリースされた現在の最新ブランチ

2.x系のコードの互換性は考慮されているが、重要な仕様変更もある

Python 2.6.x

2.x系のメインブランチ

特に何も気にしなければ、Linuxなどではこのリリースがインストールされる(と思う)

Python 2.5.x

Google App Engineがサポートしている最新リリース




 したがって、Google App Engineでの開発を予定している人は2.5.xを。そうでなければ2.6.xを。最新のPythonを追っかたい人は3.0.xをという感じでいいとおもいます(キリッ





Eclipseのインストール





 プログラムを書いて、デバッグして、実行して、エラー。デバッグして、実行して・・・という事をするためには、様々なツールが必要です。テキストエディタやコンパイラー等々。それらを個別に集める必要なく、今はセットになって提供されています。その最もメジャーなのがEclipseです。


 2010年月現在では最新バージョンは3.5.xで、コードネーム ガリレオ(Galileo)と呼ばれています。実におもしろい紹介記事はコチラ


 ダウンロードページから見つけてください。 Eclipse Classicというものを選択しましょう。日本語環境をお求めの方は、Blanco Eclipse Dictributionというのを利用すると良いかもしれません。


 Eclipseの初回起動時には、workspace(作業スペース)のパスを設定しますが、間違ってもDropboxなどのオンライン共有スペースにしないでください。端末の環境によってworkspace内のファイルの互換性が変わりますし、数千もの作業ファイルをオンライン共有したくはありません。私は一度試して撃沈しましたが・・・orz。オンライン共有するのは、最低限のソースコードだけにしましょう。





PyDevのインストール





 Eclipseにはモジュール形式で様々な言語に合わせた環境を構成することが出来ます。ここではPythonのためのPyDevをインストールします。インストール方法の記事はたくさんあり、Googleでたくさん確認できます。参考にしてください。インストール元のロケーションを選択するときは、http://pydev.org/updates を指定しましょう。





EclipseでGoogle App Engineのセッティング





 EclipseからGoogle App EngineのSDKを直接利用することができます。セッティング方法はGoogleでも確認できますこのサイトこのサイトが比較的参考になると思います。





Subversion(Subclipse)のインストール





 これは私もまだよくいじっていませんが、ソースコードリポジトリで自分のソースコードを管理したい人には、EclipseのSubversionモジュール、Subclipseをインストールするといいと思います。有名なリポジトリとして、SourceForgeGoogle Codeなどがあると思います。Google Codeでのリポジトリ作成はこの記事を参考にしました。


 Blanco Eclipse Distributionをインストールした場合は、Subclipseをインストールすると日本語環境などの状態が失われる報告があります。私が身を持って経験しました・・・orz。





Pythonの日本語処理

 Pythonは日本語などのダブルバイト文字をUnicodeで通常は扱うので、最初は日本語の入出力に戸惑うかもしれません。printで日本語表示を期待すると、文字コードがそのまま出てくる(文字化けではなくて)とか。


 このサイトでちょこちょこっと説明してくれているので、参考になると思います。