2009.02.20
Pythonの好きな点
成人男子8割の思春期最大の関心事は
「生涯の伴侶としてどのプログラム言語を選ぶか」
・・・についてのようです。(弊社調査)
そんな、人生最大の悩みについて、
Pythonを語るなど恐れ多い一介のヌルグラマですが、
それでもなお、お世話になっている君に感謝の意を表したいということで、
好きな点をまとめさせていただきました。
では、Pythonの良い所ッ!
1. Unicode型文字列
自分には驚きだったのですが、Unicode型というデータ型がありました。
文字符号化方式にとらわれず、論理的にほぼ全ての文字を処理できるため、
何かと爆弾の元になる文字コード周りの処理が明瞭です。
文字列とUnicodeの変換の際に、変換に失敗した文字がある場合の挙動を
「無視する」や「例外を発生させる」等からオプションで選べるのも気が利いています。
2. ファイル単位の名前空間
あるソースファイル内で使用する変数は、必ず同じファイル内で定義されています。
例えば、”foo” という変数名が使われている場合、
同じファイル内を探せば必ずどこかに定義されているということです。
ライブラリ/モジュールの読み込みも、
読み込み先として変数を作る必要があるため、
今、何を読み込んでいるのか、何を使っているのかがはっきりしています。
Railsでppを使ったらenvironment.rbでrequireしてなかったとか、
PHPでrequireしたら勝手にローカル変数が展開されてたりとか(これは使い方が悪いですが)、
そういう問題が起きにくいということです。
また、1ファイル=1名前空間 というのは、
理論上はわかりませんが、プログラミング実作業向きだと思います。
ただ、「明瞭だけど、面倒臭い」というトレードオフな点でもあり、
人によっては好みでは無いかもしれません。
3. インデントによるブロックの表現
Pythonの特徴として良く上がる点ですね!
自分もここを長所として上げたいのですが、
実際のコーディング作業時にメリットになるのではなく、別の点にあると思っています。
じゃあどこかというと、
ほとんどのサンプルコードやライブラリのインデントが
半角スペース4個に統一されているという点です。
半角スペースでは無く半角タブを使っていたり、
半角スペースは2個がいいとか、やれ3個であるべきだとか、
21世紀はノン・インデント・パターンだよね、とか(これは嘘)、
そういう終わりなき戦いがありません。
自分は色々とこだわりの無い人間なので、
上記メリットだけでも、インデントを使ったブロック表現はありがたいです。
(こっそり言いますが、この利点が無ければ {} や do end の方が好みです)
と、以上がPythonラヴな点であります。
Djangoについては、また今度にさせていただきます。
それでは、また!
・・・と、言い忘れましたが
自分が一番好きな言語は JavaScript です。
Trackback URL
Comment & Trackback
Comment feed
Comment