Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  7 1852
Hei freaks! Holder på med et prosjekt og hadde satt stor pris på noen tips fra dere med mer erfaring enn meg. Planen er å lage et program i Java som skal ta noen input fra brukeren, gjøre en del utregninger ved hjelp av informasjon fra noen tekstfiler for deretter å opprette en detaljert timeplan(tabell). Programmet skal kjøres på en nettside og gi mulighet for å laste ned timeplanen.

Programmet er kommet til det stadiet hvor programmet skal begynne å lage timeplanen og så lage en mer stylish brukervennlig interface. Utenom det så kompilerer programmet og kjører helt fint så langt i IE11 ved å endre på sikkerthetsinnstillingene, men problemet slik som jeg har forstått det, er at programmet som uheldivis kjøres som en applet, ikke vil fungere i de fleste browsere. Det hadde jo vært fint om programmet kunne kjøres i alle browsere og på mobil/tablet/pc.

Er relativt fersk i programmering generelt, og helt ny i å bruke java på nett, så merker at dette begynner å bli litt utenfor det jeg kan google meg frem til selv. Slik som jeg har forstått det nå, så er applet noe du burde unngå om du skal ha java i browseren.

Det jeg lurer på er hvordan jeg på enklest mulig måte kan få programmet til å kjøre på nettstedet, uten store problemer.

Er dette mulig for en super motivert noob?
Java webstart?
Java servlet?
Må programmet signeres og ha et sertifikat?

Ønsker at bruker skal slippe å endre på sikkerhetsinnstillinger og slikt for å kunne kjøre programmet, viss dere ser noen ting i planen eller andre steder, som kan løses på en enklere/bedre måte så bare si ifra. I verste fall så må vel hele programmet skrives om.

Ønsker ikke å jobbe mer med java delen av prosjektet før jeg vet om jeg må scratche alt og begynne på nytt eller om det bare er små endringer som må til.

Setter stor pris på all hjelp!
Sist endret av Mikknu; 16. oktober 2016 kl. 00:30.
Er vel ingen som bruker Java i browser lenger?

Hvis applikasjonen kun skal brukes i browser ville jeg nok begynt helt på nytt og skrevet det i HTML, CSS, Javascript og PHP.
Hvis du har en enkel html som kjører et javascript får du et veldig enkelt og oversiktelig oppsett som funker all-round.

Dette er vel og merke det eneste jeg har gjort selv, då dette er ikke noe velbegrunnet svar. Html er typisk søppel å bruke, men javascript er fint og brukervennlig. Ved å gjøre 97% av arbeidet i skriptet får du dermed en fleksibel browserapp.
Du må nok, som andre er inne på her, skrive om programmet ditt for serverside. Det blir riktignok krevende hosting, siden du da trenger en java applikasjonsserver. Men folk flest har slutta å installere Java på maskinene sine.
Java begynner å bli rimelig ut ja. Spesielt i nettleser. Enkleste løsning er nok å skrive det i et annet programmeringsspråk.

Om du har et stort ønske om å bruke java ville jeg funnet meg et web framework eller lignende så du slipper det applet greiene. (play framework er et populært et)
med fruktkjøtt.
Tias's Avatar
Crew
Java er helt greit å bruke, men du bør skrive det som et REST-interface og lage en frontend i HTML + JavaScript.
Det å lage det som en applet er nok ikke det lureste du gjør, nei. Støtten for NPAPI-baserte nettlesertillegg har begynt å forsvinne, da de er et ganske stort sikkerhetshull for den gjennomsnittlige bruker (som aldri oppdaterer Java). Chrome fjernet den i september 2015, og Firefox har lenge krevd manuell aktivering - og fjerner støtten helt i slutten av 2016. Selv om du signerer appen og bruker Java Webstart, så vil ikke selve Java-delen i nettleseren fungere, og da er du like langt.

Avhengig av kompleksiteten på prosjektet ditt, så har du flere muligheter. Hvis utregningene og tekstfilene ikke er veldig store, og informasjonen ikke sensitiv, så kan du hente inn alt via f.eks. JavaScript og så regne ut i nettleseren. Om det er sensitiv informasjon, eller tunge utregninger, så kan du - som Tias nevner - lage et grensesnitt for å spørre om informasjonen du trenger. Dette kan være så enkelt som å spørre om klokkeslett HH:MM på en gitt dato er ledig eller ikke, eller få en liste over tilgjengelige datoer/klokkeslett (uten personinformasjon).

Rådet mitt er å gjøre så mye du kan i nettleseren, og kun sensitive og tunge utregninger på serversiden. Jo mer du forsøker å gjøre på serveren, jo mer krøll blir det å få dataene frem og tilbake på en robust og sikker måte. Så får heller de som tar i bruk applikasjonen din akseptere tingenes tilstand. Dette gjør siden din mye mer vennlig for mobiler, nettbrett o.l. også. Disse vil nok aldri få Java uansett.
Trådstarter
5 0
Ser ut som at jeg går for Tias's løsning om å gå for et REST-interface med JS frontend. Blir nok mye å sette seg inn i, men planen er å utvide programmet vesentlig og sette opp en database med all informasjonen senere. Setter stor pris på alle tipsene jeg har fått Kan oppdatere her om noen er interessert i å teste første utkast av programmet når det er oppe på det vide web.
Sist endret av Mikknu; 20. oktober 2016 kl. 04:29.