Onko tossa uudessa Java 5.0:ssa tehty swing käyttöliittymien teko jotenkin helpommaksi. Entä ovatko käyttöliittymät hienompia ja nopeampia kuin edellisissä versiossa?
Mun mielestä Javan 1.4:n swingillä tehdyt käyttöliittymät ovat rumia sekä todella hitaita ruudunpäivityksen yms. osalta.
Jos ei parannusta ala syntymään niin pakko alkaa opettelemaan toi c# tai vb.net windows käyttöliittymien tekoa varten.
Mun mielestä Javan 1.4:n swingillä tehdyt käyttöliittymät ovat rumia sekä todella hitaita ruudunpäivityksen yms. osalta.
Jos ei parannusta ala syntymään niin pakko alkaa opettelemaan toi c# tai vb.net windows käyttöliittymien tekoa varten.
Vastaukset 4
Vanhimmat
Vai ovat swingillä tehdyt käyttöliittymät rumia sekä todella hitaita ruudunpäivityksen osalta...
Swingissä voi käyttää erilaisia Look and feel -kirjastoja, joilla ulkoasua voi muuttaa vastaamaan muita käyttöjärjestelmiä tms. Valmiina löytyvät Look and feelit Java (perus-swing), Windows (!) ja Motif (unix/solaris).
Jos valmiit ulkoasut eivät kelpaa, voit aina tehdä omasi. Saat ainakin juuri niin hienot ulkoasut kuin haluat.
Käyttöliittymien nopeuteen vaikuttaa ohjelmointitapa. Tee kevyttä koodia, ja näyttö päivittyy hienosti. Virustutka muuten zoomaa läpi tiedostoja, kun yrität luoda JFileChooseria. Eli osa päivitysongelmista voi mennä aktiivisen virustutkan piikkiin.
Olen samaa mieltä fani_n kassa... mutta ajattelin hieman jatkaa aiheesta...
On totta, että oikea oppinen Swing ohjelmointi ei ole helppoa, ja suorituskykyongelmat aiheutuvat pääsääntöisesti tästä. Alla muutama nyrkkisääntö, jolla UI saadaan nopeammaksi:
1. Älä toteuta aikaa vieviä operaatioita event säikeessä, vaan järjestä esim. IO operatioille oma säije. Jos esim. napin painalluksen jälkeen ruutu ei päivity pitkään aikaan, niin on tod. näköstä, että UI:ta päivittävä säije (sama kuin eventillä) suorittaa jotain.
2. Jos samaa modelia käytetään erittäin monesta paikasta, niin katso, että model chaged eventit menevät event poolin kautta. Kyseinen ongelma ilmenee siten, että esim. taulukon rivin lisäyksen jälkeen sovellus on jumissa kunnes kaikki muut view komponentit päivitetty.
3. Varmistus, että raskaita olioita ei luoda turhaan, esim. kuvakkeet ja panelit.
4. Tarvittaessa initialisoi komponentit useissa eri vaiheissa, niin tällöin sovelluksen käynnistysaika saadaan laskemaan.
... lisäys ulkoasuun, eli 5.0:ssa voit nysätä yksinkertaisemmin look&feelin käyttämällä skinejä.
Swing ohjelmoinnin helpotukseen ei ole tullut suurempia apuja 5.0:ssa, mutta java.net:ssä on kiinostava projekti liittyen pidemmälle jalostettuun Swing kirjastoon.
https://jdnc.dev.java.net/
Hanke on vasta työn alla, mutta vaikuttaa lupaavalle....
java 5:ssa on virtuaali koneen optio, jolla virtuaali kone piirtää KAIKEN grafiikan 3d kortilla.
Eli ts. mikäli homma toimii niin hyvin kuin voisi toivoa, nopeutuu piirtorutiinit todella paljon.
Yleensäkään ei kannata koodata sovelluslogiikka näyttömoduuleihin lainkaan, MVC -malli kannattaa opetella.