Show page source of ver4開発 #107251

= ver4開発

== UNIX版第1回開発会議(和倉温泉,2017-2-10~12)

=== 開発言語

 * 要件
   * C++に比べて、開発の敷居が低い
   * 質量分析やプロテオミクスに関するライブラリが充実していること

 * Pythonを用いる
   * JavaとPythonが要件を満たす。初期の学習・導入コストの低いPythonを選定
   * 方針として、「python3.4以降 + Windowsへの導入が容易なライブラリ」を用いて開発する
     * つまり正確には、「UNIX版」ではなく「マルチOS版」の開発
     * 開発者の環境がWindowsという話は秘密だ
 

=== GUIライブラリの選定

 * 以下のライブラリについて検討:

||'''ライブラリ'''||'''継続検討・不採用'''||'''備考'''||
||[https://riverbankcomputing.com/software/pyqt/intro PyQT]||不採用||ライセンスがGPL||
||[https://wiki.qt.io/PySide PySide]||不採用||LGPL。Winへの導入に挫折(nmake, cmake, qmakeについてエラーを吐き続け、[https://pypi.python.org/pypi/Shiboken Shiboken]までたどり着いて死んだ)(Macへの導入は容易)||
|| || ||※脂肪肝を乗り越えると逝けそう||
||[https://wxpython.org/ WxPython]||不採用||LGPLライクな独自ライセンス。WinはVisual C++ 2010 が要る(Macは容易に導入可能で、すぐにHello, world!が出た)||
|| || ||※VS2010でビルドされているWindows版Python3.4で動かそうとしたため。2.xは、[https://www.microsoft.com/en-us/download/details.aspx?id=44266: Microsoft Visual C++ Compiler for Python 2.7]を入れればインストールできる、はず。また、 python3.5 からはVS2015でビルドされているので問題は生じない、はず。(Windowsでのpython3系のバイオなりパッケージの利用には 3.5 以降に対応しているかどうかが分岐点になりそう。同じ理由でpython2.7系もWindowsでは避けたほうが良いという印象。[https://wiki.python.org/moin/WindowsCompilers: 参考])||
||[http://www.pygtk.org/ PyGTK]||不採用||GTK2用のバインディング。2011年4月で更新が止まっているので、チェックすらせず||
||[https://wiki.gnome.org/action/show/Projects/PyGObject?action=show&redirect=PyGObject PyGObject]||不採用||LGPL。Winではpython3.4環境で、 [https://sourceforge.net/projects/pygobjectwin32/: source forge のバイナリ・パッケージ]を利用可能(このパッケージは、wxPython同様にCランタイムのバージョンの関係で、python3.5 以降では動作しないので注意。Anaconda の次バージョンから3.4がサポートされなくなる。また現行版のAnacondaも3.6がデフォルトで有効なので、 conda コマンドで 3.6から3.4に切り替える必要あり。)||
||[https://kivy.org/#home Kivy]||継続検討||MITライセンス。Windowsへのインストールはあっさりできた。(逆にMacでは、Mac port のpy35-kivyが依存ライブラリとは指定していない pygameを別途インストールする必要があったので、少し苦労した。)今後優先して検討を進める。||