2017年2月4日土曜日

QtをPythonで! 何から始めたらいいのかな…

前から興味のあったデスクトップアプリ開発のため、Qtの学習をしてみたいと思います。言語は最近はじめたPython。食わず嫌いだったんだけど、思い立って入門Python3っていう入門書を買って読んでみたら、わりと初心者に優しかったんですね。今だと勢いもあるし、ここはひとつPython / Qt / PyQtでいってみたいと思います。

でもいままでGUIアプリを書いたことがないわたし、何から始めたらいいか全然検討もつきません。調べた結果をこの記事にまとめました。情報公開してくださってる方に感謝。

いっぱい勉強のネタがあるなぁ… がんばろっ! (^O^)/

これから使うPythonについて

PythonAnaconda 4.3.0でインストールし、Python 3.6を使用する予定です。Anacondaというのは、Pythonの実行環境にサードパーティのライブラリや、開発環境を全部入りにしたインストーラです。

Qtってなに?

Qtはグラフィックスを扱うライブラリ群です。マルチプラットフォームで、一回書いたプログラムをUnix/Linux/Windows/Macといろんなプラットフォームで動かすことができるようになる、夢のようなライブラリ群。 夢かも知れない…

ほかにもwxPython、TkInter、Kivyなどのグラフィックを扱うライブラリがありますが、それらはまた別の機会に。

開発者

現在はThe Qt Companyで開発されているそうです。私が知っているのはTrollTechという会社が開発していたってことくらい。その頃に一回Qtの本買った気がします。読んだはずだけど、忘れちゃいました。 ( > <) たしかUnixやLinuxのX Windowのウィンドウマネージャのプラットフォームとして使われていたと思います。

ライセンス

Qtのライセンスはオープンソースですが、ライセンスが意外と厳しくLGPLv3、場合によってGPL、商用ライセンスとマルチライセンス形態で、商売するなら買わないといけません。

商用ライセンスは結構お高いんでしょう? って言っても安くはなりません。個人が使うのであれば、はじめは月$99くらい、その後は大体月$300くらい? 高いです! 永続ライセンスはなんとお見積! ご連絡ください! となっています。なお、販売代理店が日本にもありますので、商売になりそうなら相談したらいいかもしれません。

わたしの場合、まずは趣味だしGPLで使うことにします…

PythonからはPyQtやPySideというPythonのライブラリからQtを呼び出して使うことになります。PyQtとPySideの違いはライセンスのようですが、使えるPythonのバージョンなどの関係から今回はPyQtを使うことにします。

入手方法

Download Qt for Application Developmentで、”Get your open source package”をクリックするとダウンロードページに移動します。自分の環境にあったインストーラをダウンロードすることもできるし、”View All Download”から好きなインストーラをダウンロードすることもできます。

AnacondaにはQtが含まれているので、ダウンロードする必要はありません

バージョン

2017年2月3日現在の最新版は公式サイトで配布されているものは Qt 5.8.0 です。
Anaconda (4.3.0) では Qt 5.6.2 です。

参考情報

PyQtってなに?

PyQtはPythonからQtの機能を使うためのPythonライブラリです。これとは別にPySideというライブラリもあります。違いはやはりライセンス。PyQtのライセンスが厳しく、これを嫌った人たちがオルタネイティブとしてPySideを開発しているそうです。

開発者

Riverbankという会社が開発しています。

ライセンス

GPLv3か商用のデュアルライセンスで、LGPLを認めていません。Qtより厳しいです。商用の方は£350 (GBP)、今の為替レートで約5万円ほど。まぁQtに比べたらお安いですね。なんだか高額商品の販売商法のような気がしないでもありません。いえ、決してそんなことはなく。

なお厳しいライセンスは飯を食っていくため! と表明しています。こういう開き直り正直さっていいですね。

入手方法

Riverbank | Software | PyQt | PyQt5 Downloadからダウンロードします。
Anacondaをインストールするとすでに入っているので、Anacondaを使う人はだいぶ楽できますね。

バージョン

2017年2月3日時点の最新版はPyQt5 5.7.1です。
Anaconda (4.3.0)ではPyQt 5.6.0です。少し古いですね。Anacondaでアップデートできそうですが、いつやろうか悩みます。

参考情報

次は何しようかな…

まずは環境整えます。そのあとPyQtについて本格的に学習していきたいと思います。今のAnaconda環境、なんだか変なので再インストールして導入する予定です。

参考サイト

  • 5 Top Python GUI Frameworks for 2015 - Dice Insights (2016-11-22)
    この記事、タイトルがいい! 毎年使いまわしできる! こんなネタの組み方、思いつかなかった… なんだか今年の漢字っぽくってちょっとうけました。で、2017年のがあるかと思ってぐぐったら…Web Frameworkだったよ… はやとちり…
0 件のコメント:
コメントを投稿

気づいたこと、不具合、ご意見など、コメント待ってます!