Ik ben een vrij onervaren programmeur, met een beetje ervaring met Java, PHP en C#. Ik heb nog wel een paar persoonlijke projectjes liggen die ik wil schrijven, maar daarbij stoot ik tegen de soort van onoverzichtelijkheid van GUI toolkits aan. Ik wilde dit topic gebruiken om informatie uit te wisselen over cross-platform toolkits, wat gebruiken jullie, en waarom?
In het algemeen heb ik dit prioriteitenlijstje:
- mijn eigen vrijheid
- andermans vrijheid (en mijn eigen flexibiliteit)
- mooie taal, strak OO
- mooie GUIs, liefst vectorgebaseerd.
Met mijn eigen vrijheid bedoel ik dat de software vrij is, in ieder geval voor Linux, en OSX is mooi meegenomen. Met andermans vrijheid bedoel ik dat de software ook op andere platformen (lees: windows) vrij is, en redelijk goed werkt. Flash is dus bijvoorbeeld geen optie.
Ik wil me niet bezig hoeven houden met geheugenmanagment, ik wil gewoon applicaties schrijven. C of C++ wil ik dus niet (verder) leren. Ik vind het idee van .NET fantastisch, en de vrije implementatie die ervan is (mono) werkt prima. Ik wil mezelf absoluut niet beperken tot scripttalen, maar sommige dingen zijn wel lekker makkelijk en even snel te doen in bv Ruby. Met mono/.NET krijg je Ruby, Python en PHP er gratis bij (en aardig volwassen al?).
De reden dat ik vectorgebaseerd wil is omdat dit volgens mij de toekomst is. Mensen die hun 17" TFT op 1024x768 zetten omdat op de native resolutie de lettertjes zo klein zijn klinkt gewoon zoooo 2000. Een hoge resolutie zou alleen maar meer scherpte moeten geven. Met mooi bij een GUI bedoel ik niet zozeer dat het er zo mooi uit ziet, maar meer dat het cognitief ergonomisch werkt. Ik wil dat mijn GUI voor mensen erg prettig werkt, lekker aanvoelt. Mooi helpt daar natuurlijk wel bij. Costumizable vind ik dan ook weer belangrijk, als mensen mijn kleurstelling echt heel lelijk vinden zou ik het prettig vinden als ze dat zelf kunnen veranderen.
Wat heb je dan voor mogelijkheden?
- GTK#
- [url=http://http://conference2006.kde.org/conference/talks/46.php]Qyoto (en andere Qt icm .NET)[/url]
- swing/[url=http://java.sun.com/j2se/1.4.2/docs/api/java/awt/package-summary.html]awt
- Qt Jambi
...en ik hoop dat er nog meer zijn?
GTK# heb ik ervaring mee, en werkt erg prettig. Het is alleen helaas niet vectorgebaseerd, en het komt het best tot zijn recht binnen gnome, terwijl ik KDE gebruiker ben. Met Cairo schijn je wel weer meer met vectoren te kunnen doen (ook met SVGs?), maar toch heb ik niet de indruk dat je daar het grootste deel van je GUI in kunt schrijven? weet iemand dat?
Qt met C# (en andere CLR talen) zou eigenlijk het best zijn voor mij, maar daar zijn helaas nog geen volwassen implementaties voor, en aangezien er vanuit de KDE community weinig animo voor lijkt te zijn (ze hebben immers al een OO GUI in C++) is het de vraag of die er ooit komt.
De standaard Java GUIs vind ik lelijk, traag, en onhandig te coden. Ik denk dat de cross-platform factor hier wel nog beter mee is dan bij de andere opties? En het is natuurlijk niet vector-gebaseerd
Qt Jambi (Java bindings voor Qt) heb ik net de whitepaper van gelezen en ziet er erg goed uit. Ik denk dat het nu al volwassen genoeg is, en met Trolltech als bedrijf erachter zal dat ook in de toekomst wel goed zitten. Ik weet niet zo goed of ik hierdoor aan Java vastzit? Of kan ik via ikvm nog steeds mijn programmas in C# schrijven? Qt is tot nu toe niet echt vector-gebaseerd geweest, maar bij Qt4 is die ondersteuning heel degelijk zo lijkt t, en getuige de weblog van deze Trolltech Qt developer wordt t alleen maar beter. SVG GUIs, volledig costumizable met standaard, well-known-by-ordinary-people CSS!
In het algemeen heb ik dit prioriteitenlijstje:
- mijn eigen vrijheid
- andermans vrijheid (en mijn eigen flexibiliteit)
- mooie taal, strak OO
- mooie GUIs, liefst vectorgebaseerd.
Met mijn eigen vrijheid bedoel ik dat de software vrij is, in ieder geval voor Linux, en OSX is mooi meegenomen. Met andermans vrijheid bedoel ik dat de software ook op andere platformen (lees: windows) vrij is, en redelijk goed werkt. Flash is dus bijvoorbeeld geen optie.
Ik wil me niet bezig hoeven houden met geheugenmanagment, ik wil gewoon applicaties schrijven. C of C++ wil ik dus niet (verder) leren. Ik vind het idee van .NET fantastisch, en de vrije implementatie die ervan is (mono) werkt prima. Ik wil mezelf absoluut niet beperken tot scripttalen, maar sommige dingen zijn wel lekker makkelijk en even snel te doen in bv Ruby. Met mono/.NET krijg je Ruby, Python en PHP er gratis bij (en aardig volwassen al?).
De reden dat ik vectorgebaseerd wil is omdat dit volgens mij de toekomst is. Mensen die hun 17" TFT op 1024x768 zetten omdat op de native resolutie de lettertjes zo klein zijn klinkt gewoon zoooo 2000. Een hoge resolutie zou alleen maar meer scherpte moeten geven. Met mooi bij een GUI bedoel ik niet zozeer dat het er zo mooi uit ziet, maar meer dat het cognitief ergonomisch werkt. Ik wil dat mijn GUI voor mensen erg prettig werkt, lekker aanvoelt. Mooi helpt daar natuurlijk wel bij. Costumizable vind ik dan ook weer belangrijk, als mensen mijn kleurstelling echt heel lelijk vinden zou ik het prettig vinden als ze dat zelf kunnen veranderen.
Wat heb je dan voor mogelijkheden?
- GTK#
- [url=http://http://conference2006.kde.org/conference/talks/46.php]Qyoto (en andere Qt icm .NET)[/url]
- swing/[url=http://java.sun.com/j2se/1.4.2/docs/api/java/awt/package-summary.html]awt
- Qt Jambi
...en ik hoop dat er nog meer zijn?
GTK# heb ik ervaring mee, en werkt erg prettig. Het is alleen helaas niet vectorgebaseerd, en het komt het best tot zijn recht binnen gnome, terwijl ik KDE gebruiker ben. Met Cairo schijn je wel weer meer met vectoren te kunnen doen (ook met SVGs?), maar toch heb ik niet de indruk dat je daar het grootste deel van je GUI in kunt schrijven? weet iemand dat?
Qt met C# (en andere CLR talen) zou eigenlijk het best zijn voor mij, maar daar zijn helaas nog geen volwassen implementaties voor, en aangezien er vanuit de KDE community weinig animo voor lijkt te zijn (ze hebben immers al een OO GUI in C++) is het de vraag of die er ooit komt.
De standaard Java GUIs vind ik lelijk, traag, en onhandig te coden. Ik denk dat de cross-platform factor hier wel nog beter mee is dan bij de andere opties? En het is natuurlijk niet vector-gebaseerd
Qt Jambi (Java bindings voor Qt) heb ik net de whitepaper van gelezen en ziet er erg goed uit. Ik denk dat het nu al volwassen genoeg is, en met Trolltech als bedrijf erachter zal dat ook in de toekomst wel goed zitten. Ik weet niet zo goed of ik hierdoor aan Java vastzit? Of kan ik via ikvm nog steeds mijn programmas in C# schrijven? Qt is tot nu toe niet echt vector-gebaseerd geweest, maar bij Qt4 is die ondersteuning heel degelijk zo lijkt t, en getuige de weblog van deze Trolltech Qt developer wordt t alleen maar beter. SVG GUIs, volledig costumizable met standaard, well-known-by-ordinary-people CSS!
It sounds like it could be either bad hardware or software