Gå til innhold

Utvikling av desktop app i Java


Anbefalte innlegg

Hei

 

Er student som holder på å lære meg Java og har ikke så altfor mye erfaring. Har som et testprosjekt tenkt å lage en applikasjon som i virkeligheten ville hatt 5-10 brukere, en desktop del, en web del som skal være ganske fremtredende, samt en database.

 

Noen som har noen tips om hva som er bra og satse på.

 

Tenker på ting som:

 

At grensesnittene blir noenlunde bra. (swing?)

Er dette for smått til å tenkte på J2EE?

Remote Method Invocation (RMI) (bruke samme kode på webdel og desktop hvis jeg har forstått dette rett)

 

Noen som har noen tips om dette eller andre relevante ting?

 

kritro

Lenke til kommentar
Videoannonse
Annonse

Når det gjelder utvikling av desktop-applikasjoner i Java, så er vel Swing mest utbredt. Det finnes mange ressurser på nettet som får deg kjapt i gang, pluss mange bøker som tar opp emnet.

 

Det finnes dessuten flere plugins til de forskjellige IDE´ene, som lar deg designe brukergrensesnittet grafisk. Selv har jeg ikke veldig god erfaring med disse. De er greie i begynnelsen, men etterhvert som koden din begynner å bli mer og mer kompleks, så har de en tendens til å være mer til frustrasjon enn til nytte. Så jeg har sluttet å bruke dem, og programmerer GUI´et for hånd istedet.

 

Å lage web-applikasjoner er en helt annen virkelighet, ennå lage desktop-applikasjoner. For Java finnes det en hel del rammeverk for web-applikasjoner. Jeg gidder ikke å begynne å ramse dem opp her, men felles for de fleste av dem er at de er veldig omstendelige. Det er veldig mye konfigurering som skal gjøres, i form av XML-filer. Dessuten er det å lage web-applikasjoner forbundet med veldig mange begrensninger, istedetfor muligheter, sammenlignet med desktop-applikasjoner.

 

Web 2.0, eller Ajax, har jo gjort at man kan få til veldig mye fancy funksjonalitet i en web-applikasjon. Her finnes det mange biblioteker å velge mellom. Mange web-rammeverk har støtte for Ajax-funksjonalitet, men det blir uansett mye knot. Og så er det dette med crossbrowser-kompatibilitet. Det som virker bra i IE, trenger ikke nødvendigvis å virke like bra i FireFox, eller Opera. Og det som virker bra i Opera for Mac, trenger ikke å virke i det hele tatt i Opera for Windows, eller Linux, for den saks skyld.

 

I sommer så jeg lyset. Da fikk jeg øynene opp for et relativt nytt web-rammeverk for Java. Det heter Apache Wicket, og er komponentbasert. Med Wicket er gapet mellom desktop-applikasjoner og web-applikasjoner blitt mye mindre enn det noensinne har vært. Ihvertfall sammenlignet med de andre web-rammeverkene jeg har jobbet med. (Og det er ikke rent få!)

 

Skulle jeg anbefale et web-rammeverk til noen som vil begynne med dette, så må det være Apache Wicket. Ta en tur til http://www.frappr.com/wicket for å se en site som er laget med Wicket.

 

Werner

Lenke til kommentar
Når det gjelder utvikling av desktop-applikasjoner i Java, så er vel Swing mest utbredt. Det finnes mange ressurser på nettet som får deg kjapt i gang, pluss mange bøker som tar opp emnet.

 

Det finnes dessuten flere plugins til de forskjellige IDE´ene, som lar deg designe brukergrensesnittet grafisk. Selv har jeg ikke veldig god erfaring med disse. De er greie i begynnelsen, men etterhvert som koden din begynner å bli mer og mer kompleks, så har de en tendens til å være mer til frustrasjon enn til nytte. Så jeg har sluttet å bruke dem, og programmerer GUI´et for hånd istedet.

Jeg har helt samme erfaring. Har testet med både plugins for Eclipse og med Netbeans, eller hva det nå heter, men skal du først driver storproduksjon, er det lettere å gjøre alt manuelt!

 

Når det gjelder web; Har du allerede satt opp databasen, så er du ikke lenger avhengig av Java, men kan like gjerne skrive ting i PHP (gitt at du skal bruke samme informasjon for Desktop-app som for web). Vet ikke om du er ute etter dette for å lære deg, eller rent praktisk, men du bør ihvertfall se an behovene når det kommer til web, for det har en tendens til å bli mer arbeid på web.

Lenke til kommentar

Tenkte å lage applikasjonen så generell som mulig. Det er mest for læring. Har gjort en øvingsoppgave tidligere av typen nettbutikk hvor jeg brukte Java(servlet, jsp, beans) etter MVC modellen. Brukte da også noe enkel Ajax i form av Ajax JSP Tag Library 1.3 som er enkelt og greit.

 

Har aldri laget noe grafisk for desktop tidligere så det blir nok å fokusere mest på det først og fremst.

 

Bruker Netbeans som IDE. Selv om hørt endel negativt om denne så synes jeg den er veldig grei.

 

Mange gode tips her så det er vel bare å sette i gang :thumbup:

Lenke til kommentar

(...)

Og så er det dette med crossbrowser-kompatibilitet. Det som virker bra i IE, trenger ikke nødvendigvis å virke like bra i FireFox, eller Opera. Og det som virker bra i Opera for Mac, trenger ikke å virke i det hele tatt i Opera for Windows, eller Linux, for den saks skyld.

 

Korreksjon;

Opera for Linux, Mac og Windows bruker nøyaktig samme kode for rendering, scripting, etc.

Noen forskjeller finnes på UI tilpassningen.

 

Firefox gjør sine saker på samme måte.

 

Internet Explorer er en annen sak, men her er IE for Mac discontinued.

Det er vel vanligere i disse dager å ha problemer med sider som ser greie ut i Opera/Firefox/KHTML ikke fungerer i Internet Explorer.

 

Min påstand, crossbrowser-kompatibilitet er enkelt så lenge en slipper å tenke på IE.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...