很多人其實不是很清楚為什麼筆者在部門開發會選擇PySide2 而非PyQt5,雖然之前的文章有簡單介紹差別,但還是很多人無法理解。
以下將完整介紹差異性
PySide2使用的是LGPL授權,引用的函式庫、模組都可以在程式發布時合法的使用在商業情境或其他開源情境上。
PyQt5有兩種授權方式:GPL開源授權或商用授權。前者意味著直接使用PyQt5的程序也需要基於GPL授權方式將程式碼完全開源,若要在商業使用,需要額外支付購買費用,才能被應用在商業領域中。而購買PyQt5商業授權的價格為XXX美元,價格不斐。
就搜尋引擎能查找到的資源來看,PySide2的資料明顯少於PyQt5。
但官方網站的教學文件中有提供兩者的差別,可同時切換來觀看。
否則,多數人都覺得PySide2 不好入門的主要原因就是文件相對少很多。
另一方面,在多數的評論網站中都提及,可以把PyQt5 的程式碼直接改成PySide2 後直接使用,但其實還是有變數上或使用上的差異,只要理解完差異後,就可以照搬來使用。
筆者熱愛Open Source,當然會選擇以Pyside2 去做開發時的主要選擇。雖然這兩者都是使用Qt designer來做UI圖形化介面的開發,但在功能的好用度上,其實是各有千秋。 例如: PyQt5 需要使用pyuic5 再命令中使用指令的方式才可以把UI檔轉成python source code的形式;而PySide2 中的Qt Designer 則是可以在圖形介面中就直接產出靜態的Python 程式碼,但美中不足的是Function 則沒有一併被產出,而這點則是Pyuic5 就可以直接產出。
結論:
商業使用: PySide 2 > PyQt5
Side Project: PyQt5 > PySide 2
當然這沒有一定是要怎麼使用,純粹看個人的喜好而定,筆者還是喜歡PySide 系列,未來還是會繼續鑽研各種應用方式。