このページの本文へ

Pythonが最高である3つの理由 (2/3)

2010年07月26日 10時00分更新

文●山崎徳之/ゼロスタートコミュニケーションズ代表取締役

  • この記事をはてなブックマークに追加
本文印刷

What's good?

PerlにもRubyにも、プログラミング言語にはそれぞれに「よい点」があるものです。Pythonにももちろんあります。読者のみなさんにPython使いたいと思ってもらえないと意味がないので、まずはPythonの長所を紹介しましょう。


Pythonのいいところ1:可読性(保守性)

 Pythonは、自分が昔書いたコードや、他人が書いたコードの挙動を、ソースを見て把握したり、手を加えたりする場合のハードルが低いです。Pythonではブロックをインデントで表す記法があり、“{”、“}”の位置が書く人の趣味でまちまちになる言語と比べると、誰が書いても同じになりやすいのです。

 また、PythonにはPerlとは真逆の「やりかたはひとつ」というポリシーがあり、ある処理をコードとして表現すると、ロジックに個性は出ても、記法に個性があまり出ない(多少は出ますけどね)。可読性(保守性)の高さは、プロダクションとしてコードを書くとき、非常に大きな利点になります。

Pythonではインデントがブロックの役割をはたすため、一度慣れてしまえばパッと見てコードが理解しやすいのが特徴です。ブレース({と})や行末のセミコロンがない、変数名に記号が付かないことなども、読みやすさの理由です。また、Pythonではひとつのことを実現するのに複数のやり方がある場合、それらが廃止されたり非推奨となることが多いです。たとえばリストにある値があるかどうかは、has_keyメソッドやin演算子などがありますが、これはinに統一されました。


Pythonのいいところ2:実績

 Pythonには日本での実績がほとんどないとはいえ、ワールドワイドではGoogleやFacebookで使われているという、これ以上ない実績があります。Pythonistaの中には「日本でも実績たくさんあるよ、何いってんだ」という意見があるかもしれませんが、そういう発想がPython普及のチャンスを減じている可能性があります。

 Perlを普及させた要因を考えてみましょう。「livedoorやmixi、モバゲーで使われている」という実績は、Perlの普及に確実に影響があったはずです。また、SledgeやMobaSiF、KVSのインターフェイス実装がたくさん出てきて、「あのくらい巨大になっても使えるんだ」という安心感を生み出しました。

 FacebookがPython製なのも、実はすごいメリットです。Facebookはいまや単一のサイトとしては世界一のUUを誇りますので、「Pythonにスケーラビリティはあるのか」という議論は不要(インフラは別です)といってもいいでしょう。また、ノンブロッキングWebサーバーである「Tornado」のような成果物もあります。さらに、Googleのオフィシャル言語ですので、Google App EngineでもPython実装が標準だったり、Google CodesにもPythonの成果物がたくさん増えたりしています。

 実績が豊富ということは、将来性が高いともいえます。たとえばソーシャルアプリはこの不況でも元気な数少ない分野ですが、ソーシャルアプリに取り組む日本の企業でPythonを使う事例が増えています。元気な業界が活用している言語は、それだけ将来性があると考えていいでしょう。


Pythonのいいところ3:実行速度

 もともとPythonを使いはじめた理由のひとつが、ベンチマークの結果でした。もちろんCやJavaより遅いですが、PythonはLL言語としては速い方です。

 もちろん他にもメリットはたくさんあると思いますが、これだけでも十分Pythonに手を出してみる価値があると思います。

この連載の記事

一覧へ

この記事の編集者は以下の記事をオススメしています