BT

現場からの報告:ハードコードされたソフトウェアでPython 3

| 作者: Jonathan Allen フォローする 595 人のフォロワー , 翻訳者 編集部N フォローする 0 人のフォロワー 投稿日 2011年8月13日. 推定読書時間: 2 分 |

原文(投稿日:2011/08/09)へのリンク

Python 3の製品バージョンが出て、2年半になる。 Python 2.xシリーズとの後方互換性を破ったので、それに対してたくさんの様々な反応がある。 Python 3に対する開発者の考え方を知るために Virgil Dupras氏にインタビューすることにした。

InfoQ: あなた自身についてと仕事でPythonをどう使っているのかをちょっと話していただけませんか?

Virgil Dupras: 私はオープンソースでクロスプラットフォームのデスクトップ アプリケーションを PyObjC と PyQtで開発していて、それらを自分のwebサイト、 http://www.hardcoded.net/に公開しています。以前は Delphiを使っていましたが、2005年にPythonに乗り換え、戻ることはありませんでした。

InfoQ: 3年前に Python 3に乗り換えた主な理由は何でしたか?

Virgil Dupras: 私はPythonが好きで、いつもコントリビューションでお返しがしたい、と思ってました。私はもっとコアの開発に関わりたいと考えていましたが、それほど自分は利口でない、と思ってます。確かにパッチは作れます(そして2,3提出しました)が、実際の話、Pythonのバグに出くわすことは殆どありません。なので提出するパッチも殆ど無いわけです。

そこでよく考えて、私がPythonを助ける最善の方法は、 Python 3の早期使用者になることで、それで自分が役だっていると思います。私はPython自身のバグには遭遇しませんでしたが、ライブラリの中には多くのバグがありました。私はまた py3kのライブラリにかなりのポーティングをしました。

InfoQ: 著しい変更のお蔭で、コードを移行する際に大きな問題が起きましたか?

Virgil Dupras: Python 3への移行で遭遇する唯一の大きな問題は str/bytes絡みですね。他は心配要りません。ポートする前に全部適当な__future__ importsを加えることで、全て簡単にポートされます。大丈夫です。たぶん割り算が問題になるかもしれません。しかしですね。"from __future__ import division" をもう使ってませんかね?

しかし、 str/bytesは、実際に用心が要ります。ポートする前に、どうやって文字列を使うかを本当に考えなければいけません。一ついやらしいことが、"re"ライブラリは bytesではなく stringsとでしか動きません。なので、もし「セミバイナリ」データをパースするのに正規表現を使っていると、問題に巻き込まれます。

しかし、そのような「厄介」な状況になければ、 str/bytesを扱うのは比較的単純です。リテラルの面倒を見て、それからすべての"open()"呼び出しをレビューして、それらがバイナリかテキストモードのどちらでオープンすべきかをチェックします。

InfoQ: あなたが好きなPython 2のフィーチャでPython 3に入っていないものがありますか?

Virgil Dupras: いいえ、欠点が少なくなった同じ言語ですから。

クロスプラットフォームのUI開発についてもっと知りたければ、 Virgil氏の記事 Cross-Toolkit Softwareを見て欲しい。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT