Python GUI?
Van itt élő ember, aki használt már pythonból valami grafikus keretrendszert?
Tényleg dobjam ki a pythont, ha valami multiplatformos, egyébként egészen pici alkalmazást akarok megírni?
Még azt sem várnám el, hogy egyformán nézzen ki windows-on és linuxon, csak fusson mondjuk a 2-3 (esetleg 4) évvel ezelőtti linuxokon is és működjön XP-től Win7-ig.
Kezdtem a PyQt-vel, de a licenc körüli bonyodalmak, a finoman szólva is botrányosan gyenge és hiányos doksi elvették a kedvem (bocs, hogy lusta vagyok python-os fejlesztéshez C++-t tanulni, amihez van Qt dokumentáció ;-) ) Ráadásul a Qt eleve bizonytalan platformnak tűnt, már akkor is, amikor a Nokiáé lett, most meg, hogy ismét tulajdonost váltott... (a tulajváltást leszámítva a fenti indokok vezettek oda, hogy tavaly félretettem az egészet)
Úgy két hónapja elkezdtem ismerkedni a TkInter-rel, mert ugye az alapvető része a pythonnak. Sajnos "kissé" primitívnek tűnt és az általam talált leírások sem voltak teljesen egyértelműek, úgyhogy kb. két heti nyűglődés után követte a PyQt-t.
Jött a nagy ötlet: wxPython. Ez free, tudásban meg közelíti a Qt-t, hát hajrá!
Tegnapig nagyon szép és jó volt minden, mert alig foglalkoztam vele. :-D
Tegnap belefutottam egy olyanba, hogy a zetcode.com-on lévő tutorialok ugyan működgettek, épp csak a menük mellett elvileg megjelenő ikonok nem akartak megjelenni. Sem linuxon, sem windows-on. Ubuntun végül kiderült, hogy valami gnome-tweak-... utility-vel kell bekapcsolni a megjelenítésüket, úgy már tényleg működik. Stabil Debianra sajna nem találtam ilyen megoldást és windows7-re sem. Utóbbira annyira nem, hogy kiderült: a stabil wxPython sem a Vistát, sem a Windows7-t nem támogatja és a majd, egyszer, valamikor, talán érkező 2.9-es is csak Vistáig támogatott, a win7 már nem. Szóval wxPython -> kuka.
És most itt állok tanácstalanul: akkor mit használjak? A webes változat egyelőre nem megoldás. Ráadásul az sem ártana, ha Androidon is működőképessé lehetne tenni, de ez már csak hab lenne a tortán.
Összefoglalva: ha valami használt közületek GUI programozásra pythont, akkor szeretném megkérdezni, hogy milyen keretrendszerrel követte el?
----
Egyébként maga az alkalmazás egy hóttprimitív vércukor és vérnyomás napló lenne, amit én írok, nem letöltök valahonnan.
Pythont valamennyire ismerem és a swinges emlékeim alapján nem is szeretnék java-ra áttérni... :-)
■ Tényleg dobjam ki a pythont, ha valami multiplatformos, egyébként egészen pici alkalmazást akarok megírni?
Még azt sem várnám el, hogy egyformán nézzen ki windows-on és linuxon, csak fusson mondjuk a 2-3 (esetleg 4) évvel ezelőtti linuxokon is és működjön XP-től Win7-ig.
Kezdtem a PyQt-vel, de a licenc körüli bonyodalmak, a finoman szólva is botrányosan gyenge és hiányos doksi elvették a kedvem (bocs, hogy lusta vagyok python-os fejlesztéshez C++-t tanulni, amihez van Qt dokumentáció ;-) ) Ráadásul a Qt eleve bizonytalan platformnak tűnt, már akkor is, amikor a Nokiáé lett, most meg, hogy ismét tulajdonost váltott... (a tulajváltást leszámítva a fenti indokok vezettek oda, hogy tavaly félretettem az egészet)
Úgy két hónapja elkezdtem ismerkedni a TkInter-rel, mert ugye az alapvető része a pythonnak. Sajnos "kissé" primitívnek tűnt és az általam talált leírások sem voltak teljesen egyértelműek, úgyhogy kb. két heti nyűglődés után követte a PyQt-t.
Jött a nagy ötlet: wxPython. Ez free, tudásban meg közelíti a Qt-t, hát hajrá!
Tegnapig nagyon szép és jó volt minden, mert alig foglalkoztam vele. :-D
Tegnap belefutottam egy olyanba, hogy a zetcode.com-on lévő tutorialok ugyan működgettek, épp csak a menük mellett elvileg megjelenő ikonok nem akartak megjelenni. Sem linuxon, sem windows-on. Ubuntun végül kiderült, hogy valami gnome-tweak-... utility-vel kell bekapcsolni a megjelenítésüket, úgy már tényleg működik. Stabil Debianra sajna nem találtam ilyen megoldást és windows7-re sem. Utóbbira annyira nem, hogy kiderült: a stabil wxPython sem a Vistát, sem a Windows7-t nem támogatja és a majd, egyszer, valamikor, talán érkező 2.9-es is csak Vistáig támogatott, a win7 már nem. Szóval wxPython -> kuka.
És most itt állok tanácstalanul: akkor mit használjak? A webes változat egyelőre nem megoldás. Ráadásul az sem ártana, ha Androidon is működőképessé lehetne tenni, de ez már csak hab lenne a tortán.
Összefoglalva: ha valami használt közületek GUI programozásra pythont, akkor szeretném megkérdezni, hogy milyen keretrendszerrel követte el?
----
Egyébként maga az alkalmazás egy hóttprimitív vércukor és vérnyomás napló lenne, amit én írok, nem letöltök valahonnan.
Pythont valamennyire ismerem és a swinges emlékeim alapján nem is szeretnék java-ra áttérni... :-)
Én is félre tettem
Sajnos a Pythonnal ez a baj. Pedig nagyon jó kis nyelv, szerettem használni. Hozzáteszem az utóbbi években már nem is követtem a dolgot.
Ilyesmi feladatokra ajánlanám esetleg az Adobe Air-t sqlite-al, Flex-el. Még az sem kizárt, hogy a Pythont be lehet építeni egy Air projectbe. Ha erről valaki többet tud, az érdekelne...
QT
Mondjuk én jó ideje nem csináltam desktopos alkalmazást. Legutoljára Flash előtte pedig Win32 C API volt amit használtam asztali alkalmazáshoz :)
API
Az meg, hogy öndokumentáló... persze, ha beleírják a kódba ;-)
De lehet, hogy visszatérek rá ideiglenesen, mert a wxpython a no comment kategória. Ráadásul, hacsak nem az angolom hiányosságáról van szó a(z egyik?) fejlesztője igencsak arrogáns tud lenni, ha valaki reklamálni merészel bizonyos hiányosságok miatt. :-(
PyGTK-t esélytelen windowson
Utánaolvasva nem tűnik
csak pár példa
Kivy
that make use of innovative user interfaces, such as multi-touch apps.
Erről még csak nem is
Java?
Java...
PHP-vel, pythonnal még látok úgy 1% esélyt, hogy ha összekaparom magam, akkor talán lesz valami.
Java-hoz jó fejlesztői környezet? Netbeans, Eclipse nem elég jó? :-o
Ha ott kötsz ki,
Állással kapcsolatban pedig légyszíves legyél optimistább! Olyan nincs, hogy "semmi esélyem", sőt, 1%-nál is jóval több. (Esetleg vállalkozás? Mondjuk ahhoz mégtöbb optimizmus kell.)
De van, de van !
Python-hoz ugyanis TÖBB kiváló teljesen cross-platform Gui framework létezik (és a kérdés felvetésének idején is létezett már, ebből látszik hogy sem a kérdező, sem a hozzászólók egyáltalán nem néztek utána.)
A legjobb közülük egyértelműen a Qt, kétféle binding is van hozzá: PyQt, PySide.Ezeket egy automatikus generátorral (PyQt - SIP. PySide - Shiboken) feldolgozzák és létrehozzák a pythonnak megfelelő osztályokat, hívásokat, stb. A dokumentáció is automatikusan "pythonosítva" van, tehát nem kell érteni C++-hoz.
A lényegi különbség PyQt és PySide között a licenszelésben van, az előbbi csak commercial illetve GPL license-el, az utóbbi pedig LGPL license-el van ellátva. Ha megírsz valamit PyQt-ben, alig kell változtatni rajta és menni fog PySide alatt is.
Egyébként a C++-os Qt dokumentáció egy az egyben alkalmazható a pythonos környezetben is, ha nem beszéled a C-t, annyit megnézel hogy hogy néz ki egy konstruktor meg egy függvény szt csókolom, de rengeteg Pythonos példa is van a neten.
A wxPython is kielégítő alternatíva lehet, a Google és a Dropbox is ezt használja a cloud szolgáltatásuk asztali programjához. Elég kiforrott, mindenütt natív widget-eket használ, egyáltalán nem kell megijedni tőle.
A zetcode.com-on egyébként vannak jó kis tutorialok, illetve Youtube-on van egy nagyon jó PySide-os tutorial, ezt tudom ajánlani midenkinek, mert piszok gyorsan rá lehet látni a dolgokra ha végignézi az ember.
Örülök, hogy ennyire tudod,
Amit írok, nagyjából a tavaly év végi állapotot tükrözik, azóta nem foglalkoztam a témával.
Mintha épp a Qt-t emlegettem volna, hogy problémás a licencelése. A PySide meg nem lehet mindenkinek alternatíva, részben azért, mert bizonyos (esetenként lényeges pontokon pl. eseménykezelés) eltér, részben meg azért, mert az aktív, linuxos felhasználók egy része szerint bugosabb, mint az eredeti Qt. (ez utóbbira most nem tudok forrást hozni, amikor a licenc miatt problémáztam, akkor kérdeztem körbe pár ismerőst, meg talán néhány fórumon, hogy mi a helyzet a PySide-dal, ezt az infót kaptam)
A Qt dokumentációjának egy része valóban "pythonosítva" van, de ha kicsit mélyebben belemászol, akkor azt láthatod/láthattad, hogy a doksi igencsak hiányos. Rengeteg dolog miatt a C/C++ verzióra vagy utalva, amiről csak próbálgatással derül ki, hogy implementálták-e egyáltalán a pythonos változatban.
A wxPython, mint említettem volt, az újabb windows-okon nem támogatott. Az utoljára látott állapot szerint XP-n van támogatás, az akkor még béta állapotú verzió már a Vista-ig terjesztette ki a supportált rendszereket, de pl. win7-nek nyoma sem volt benne. Ennek megfelelően a 64 bites windows-omra nem is tudtam felvarázsolni (legalábbis úgy nem, hogy minden működjön, de már nem emlékszem a részletekre)
Az már csak apróság, hogy a "több crossplatform framework" közül egyet sem említettél, ami ne került volna szóba.
Kihagytad a TkInter-t, ami része a pythonnak, csak tudásban, külsőben kissé elmaradt a többitől.
No, részemről itt kiszálltam, csak piszkálta a csőrömet ez a lekezelő hangnem, miközben gyakorlatilag semmit sem tettél hozzá a témához.
A CIA jelenti :)
Python
Sok sikert!