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.
  5 890
Jeg tenkte å begynne på et prosjekt i sommer, og siden jeg er helt noob på web-utvikling tenkte jeg å spørre om råd her. Tingen er at jeg har lagd en (relativt avansert) kalkulator i C++, som jeg nå skal prøve å porte til en slags webapplikasjon.

Jeg tenkte å la selve applikasjonen kjøre client-side for å minimere responstid. Men jeg har ikke utelukket server-side helt heller.

Hvis jeg velger client-side, hvilke muligheter har jeg? Selv vet jeg kun om Java (Applet) og Flash (kom gjerne med andre forslag). Men hvordan er det å kode noe "seriøst" i Flash? Selve kalkulatoren vil hovedsakelig bestå av en Lexer, en Parser, dynamiske trær og dynamiske lister, vil dette la seg implementere uten store problemer i Flash?

Hvis jeg velger server-side, finnes det noen måte å kjøre C++ kode med CGI? Er det mulig å sette det opp på en ekstern server (som jeg ikke har fysisk tilgang på, kun FTP)? Og ikke minst, vil det gå an å implementere på en slik måte at man ikke må oppdatere for å få resultat på input?

Takk hvis noen gidder å svare, så slipper jeg å sette meg inn i så mye for å finne ut hva som er/ikke er mulig å gjøre.
Sist endret av rune420; 30. mai 2007 kl. 23:25.
m0b
m0b's Avatar
DonorAdministrator
Jeg er på vei til å legge meg nå, men har bare lyst til å ta en kjapp post før jeg gjør det. Det får eventuelt bli mer utfyllende i morgen.

Du er jo rimelig kjent med C++ og jeg ser for meg at du nok allerede har strukturert ditt gamle prosjekt i forhold til design pattern som MVC, så det vil jo strengt tatt være et interface du ønsker å bytte ut.

I alle fall, jeg ser ingen grunn til at du ikke skal kunne kjøre CGI på dette dersom det er ønskelig. Det du kan gjøre er for eksempel å lage deg en vanlig webside hvor du har implementert litt AJAX-funksjonalitet så du kan oppdatere deler av websiden. Du kan gjerne sende inn en request til CGIen din som er det som skal utregnes, som igjen returnerer et output som du benytter til og oppdatere de delene av websiden du ønsker.

Uten at jeg er så altfor kjent med flash annet enn å reverse det, så tror jeg at jeg personlig ville valgt noe som jeg hadde vært mer kjent med. Som f.eks C++.

Håper dette kan være til noe hjelp på tross av at jeg egentlig bare svarer på noen av dine spørsmål.

Edit: Må jo selvfølgelig nevne at dersom du velger C++ til CGI så må applikasjonet kompileres og serveren må ha tilgjengelig de bibliotekene du eventuelt måtte benytte deg av. Men antar at du hadde tenkt deg fram til dette fra før. Perl blir ofte brukt i forbindelse med CGI, så dette kan kanskje være et alternativ dersom du kan det fra før eller har lyst til og lære deg det?
Sist endret av m0b; 31. mai 2007 kl. 00:46.
Very Important Lurker
Keanu's Avatar
Et annet alternativ er .Net, enten i form av C#/VB eller ASP.Net.
Selv har jeg jobbet nesten utelukkende med PHP når det gjelder nett-applikasjoner, og jeg mener porting fra C++ til PHP skal gå greit, da de har mye de samme egenskapene.

Når det gjelder server du har kun FTP-tilgang til (antar da visual server), så må du nok sjekke med hosten hva som blir tilbudt. Om det ikke er mulighet for å kjøre ASP.NET er det tvilsomt at hosten gidder å gi mulighet til dette om det er en større kommersiell aktør iallefall.
PHP er som oftest et safe bet som de aller fleste støtter, så lenge det ikke er gratis-hoster.
runoslav
rune420's Avatar
Trådstarter
Sitat av |d13m0b
Jeg er på vei til å legge meg nå, men har bare lyst til å ta en kjapp post før jeg gjør det. Det får eventuelt bli mer utfyllende i morgen.

Du er jo rimelig kjent med C++ og jeg ser for meg at du nok allerede har strukturert ditt gamle prosjekt i forhold til design pattern som MVC, så det vil jo strengt tatt være et interface du ønsker å bytte ut.

Edit: Må jo selvfølgelig nevne at dersom du velger C++ til CGI så må applikasjonet kompileres og serveren må ha tilgjengelig de bibliotekene du eventuelt måtte benytte deg av. Men antar at du hadde tenkt deg fram til dette fra før. Perl blir ofte brukt i forbindelse med CGI, så dette kan kanskje være et alternativ dersom du kan det fra før eller har lyst til og lære deg det?
Vis hele sitatet...
Jeg har separert prosjektet i to deler, for å gjøre det enklere å porte; et eksternt bibliotek (.lib) for selve kalkulator-kjernen, og selve exe-delen er egentlig bare GUI bygd rundt dette.

Så hvis jeg kan bruke C++ kan jeg forhåpentligvis bruke den samme kalkulator-bibliotek koden uten å måtte endre så mye. Jeg bruker ikke noe annet en de vanlige standard C++ bibliotekene (m/STL) i det, så det burde ikke være noe problem. Nå har jeg så og si null erfaring med CGI, men utifra rådene til nå tror jeg kanskje jeg satser på det i første omgang.

I alle fall, jeg ser ingen grunn til at du ikke skal kunne kjøre CGI på dette dersom det er ønskelig. Det du kan gjøre er for eksempel å lage deg en vanlig webside hvor du har implementert litt AJAX-funksjonalitet så du kan oppdatere deler av websiden. Du kan gjerne sende inn en request til CGIen din som er det som skal utregnes, som igjen returnerer et output som du benytter til og oppdatere de delene av websiden du ønsker.
Vis hele sitatet...
OK det høres ut omtrent som jeg hadde tenkt. Så jeg får bare prøve å finne noen relevante bøker/guider om CGI da, har du/dere forslag til noe lesestoff?


Sitat av Keanu
Et annet alternativ er .Net, enten i form av C#/VB eller ASP.Net.
Selv har jeg jobbet nesten utelukkende med PHP når det gjelder nett-applikasjoner, og jeg mener porting fra C++ til PHP skal gå greit, da de har mye de samme egenskapene.

Når det gjelder server du har kun FTP-tilgang til (antar da visual server), så må du nok sjekke med hosten hva som blir tilbudt. Om det ikke er mulighet for å kjøre ASP.NET er det tvilsomt at hosten gidder å gi mulighet til dette om det er en større kommersiell aktør iallefall.
PHP er som oftest et safe bet som de aller fleste støtter, så lenge det ikke er gratis-hoster.
Vis hele sitatet...
Jeg ser at hosten min ikke støtter ASP (kun CGI og PHP), så det er nok dessverre utelukket inntil jeg evt. bytter host.
m0b
m0b's Avatar
DonorAdministrator
Prøv å lag deg et lite (CLI) applikasjon som benytter seg av biblioteket du har skrevet. Dersom du har tilgang til hosten i form av ssh eller lignende så kan du prøve og kjøre dette fra kommandolinje fra serveren. Dersom du får dette til og kjøre så vil du også kunne bruke denne serverkonfigurasjonen til CGI.

Jeg har dessverre ikke noen e-books om CGI og C tilgjengelig, men jeg googlet litt og fant noen sider som kan ha litt relevant informasjon for deg.

http://www.cs.tut.fi/~jkorpela/forms/cgic.html
http://www.scit.wlv.ac.uk/~jphb/sst/c/

Etter det jeg har fått vite skal boka CGI in C and Perl av O'Reilly være en grei sak, har den dessverre ikke. Men har boka CGI Programming som tar for seg CGI i perl. Dersom denne kan være av interesse, send en PM så kan vi nok få ordnet med en transaksjon.
Sist endret av m0b; 31. mai 2007 kl. 13:46.
Du burde nok også vurdere å skrive det som en java-applet, fordi java og c++ ligner såpass at det ikke burde være noe problem å porte klassene dine over til java-klasser. Alle c++ STL klasser/funksjoner finnes nok også i alle de forskjellige standard java-pakkene, så det er nok ikke no problem.

Da vil løsningen også bli client-side og som du selv sier minimerer det responstid.

Eneste problemet med dette er vel kanskje det at du må "oversette" hele librariet ditt, men jeg vil ihvertfall tro det er den beste client-side løsningen.

Lykke til