Gå til innhold

Hjelp til valg av programeringspråk til prosjekt


Anbefalte innlegg

Hei.

 

Jeg har satt meg et mål om å forbedre mine programmeringskunnskaper fra høyskolen og har tenkt meg ut et lite prosjekt, nemlig å lage en et program som illustrerer grunnleggende elektronikk. Ohms lov, hvordan dioder/transistorer virker, hva skjer med kretser om man endrer verdi på motstand osv.

 

Spørsmålet mitt er hvilket programiringsspråk vil det være gunstig for meg å bruke. Jeg kunne tenkt meg å lære C++ evnt java/javascript, men jeg vet ikke nok om de eller andre språk til å bestemme meg for hvilket program som egner seg (blir bruk av dynamiske illustrasjoner med knapper, slidere, tekstbokser osv).

 

Noen som har noen forslag?

 

På forhånd takk!

Lenke til kommentar
Videoannonse
Annonse

Høres ihvertfall ut som du må benytte et som er objektorientert, og hvor du har (enkel) støtte for å vise grafiske brukerkontroller. Og da er C++ pretty much utelukket (mye arbeid med GUI-en).

 

JavaScript hører til i nettleseren, og har ikke noe med Java å gjøre. JavaScript er faktisk objektorientert det også.., men du vil vel kjøre "programmer" andre steder også, enn bare i nettleseren?

 

Jeg ville ha benyttet enten Java eller C#

 

(Det kan hende at Python eller Ruby duger, man hører jo mye.. Men, disse har jeg 'NULL'-peiling på.)

Endret av greygenic
Lenke til kommentar

Jeg ville definitivt gått for html/javascript - dette høres ut som noe som egner seg meget godt som en webside.

 

Om du koder i objektorientert javascript med JSON og jQuery i bunn lærer du deg noe som bare blir nyttigere og nyttigere. Å lage dette som en native-applikasjon og ikke som webservice gir lite mening om ikke målet i seg selv bare er å lære et nytt språk. Om dette er tilfelle ville jeg gått for Java eller .NET (fortrinnsvis C#).

Endret av kvasbo
Lenke til kommentar

[..] Å lage dette som en native-applikasjon og ikke som webservice gir lite mening om ikke målet i seg selv bare er å lære et nytt språk. [...]

Det er selvsagt sant, og et godt poeng.

 

Men, jeg vil ihvertfall utifra egen erfaring aldri anbefale JavaScript som første objektorienterte språk. Man vil forbanne seg nok som det er..

Lenke til kommentar

Takk for fine svar!

 

Det å bygge det som en web side er nok ikke dumt nei, så blir nok til det.

 

Hvorfor ikke Jacascript som første objektorienterte språk? Noe spessielt som gjør det vanskeligere å lære enn andre språk?

Heh.., vel jeg syns ihvertfall at å lære JavaScript var vanskelig, mye verre enn å lære C/C++, Java, eller C# (alle disse gikk har gått forholdsvis glatt).

 

Ofte så opplevde jeg feil når jeg prøvde å gjøre noe, og hvor feilen ofte verken var særlig logisk, eller lett å finne. Det virket som det ofte bare "klikket" uten grunn..

 

Noe det selvsagt ikke gjorde, men det var så mye vanskeligere å forstå hvorfor, enn når jeg jobbet meg gjennom andre språk.

 

Alt i alt syns jeg JavaScript er slitsomt å jobbe med, og tar mye (mer) energi. Og slik er det selv etter at jeg ha brukt svært mye tid på det, og hvor jeg til og med kjøpte selve "bibelen" på emnet, og jobbet mye med denne.

 

Jeg har også lest gjentatte ganger at JavaScript er noe mange sliter med, selv om de allerede har en viss programmeringsbakgrunn.

 

Jeg sier ikke at det blir umulig, jeg påstår bare at det blir mye mer arbeid.

 

(OBS! Om du velger JavaScript må du også kunne (X)HTML, kanskje også CSS! Det blir derfor mye mer å forholde seg til...)

Endret av greygenic
Lenke til kommentar

Hvorfor ikke Jacascript som første objektorienterte språk? Noe spessielt som gjør det vanskeligere å lære enn andre språk?

De fleste, populære objektorienterte språk er klasse-baserte. JavaScript skiller seg ut fordi det er et såkalt prototype-basert språk. Veldig vanskelig å forklare om du ikke behersker det ene eller det andre, men for å si det enkelt er det mindre av kunnskapen fra JavaScript som du kan ta med deg videre til andre språk.

 

Når det er sagt - om du lærer JavaScript-måten å gjøre objektorientering på først så tror jeg ikke det vil være vanskeligere enn klasse-basert OOP. De som kommer fra C++/Java/C# og sliter med JavaScript gjør nok først og fremst det fordi JavaScript er anderledes enn det de er vandt til.

Endret av torbjørn marø
Lenke til kommentar

JavaScript hører til i nettleseren, og har ikke noe med Java å gjøre. JavaScript er faktisk objektorientert det også.., men du vil vel kjøre "programmer" andre steder også, enn bare i nettleseren?

 

At JavaScript er begrenset til nettleseren, er bare tull. Faktisk har det allerede i mange år eksistert rammeverk der man programmerer i JavaScript på serversiden også. Apache Cocoon, som jeg selv har jobbet med i mange år, er et av disse rammeverkene.

 

Nå hører både Cocoon og lignende rammeverk til på historiens søppeldynge spør du meg. Derfor var det med litt skepsis jeg ble introdusert til node.js i fjor.

 

node.js er serverside JavaScript, basert på Google sin V8 JavaScript-motor, den samme som brukes i Google Chrome, faktisk.

Lenke til kommentar

[...]At JavaScript er begrenset til nettleseren, er bare tull. [...]

Jo, for trådstarter så blir det nok slik. Vedkommende skal lære et nytt språk, og 'node.js' har jo ikke engang DOM. Noe man selvsagt burde lære seg, ellers er det vel liten vits å begynne på JavaScript?

 

Dessuten så kan man ikke kjøre den under Windows..., eller? (kilde)

Endret av greygenic
Lenke til kommentar

[...]At JavaScript er begrenset til nettleseren, er bare tull. [...]

.. og 'node.js' har jo ikke engang DOM. Noe man selvsagt burde lære seg, ellers er det vel liten vits å begynne på JavaScript?

Eh, det du sier gir ingen mening. DOM gir ingen mening om man ikke skal scripte for en browser. JavaScript derimot gir mening, som det blir sagt, andre steder også.

 

For et alternativet (om du vil) til DOM når JavaScript kjører utenfor browseren kan man ta en titt på CommonJS:

 

JavaScript is a powerful object oriented language with some of the fastest dynamic language interpreters around. The official JavaScript specification defines APIs for some objects that are useful for building browser-based applications. However, the spec does not define a standard library that is useful for building a broader range of applications.

 

The CommonJS API will fill that gap by defining APIs that handle many common application needs, ultimately providing a standard library as rich as those of Python, Ruby and Java. The intention is that an application developer will be able to write an application using the CommonJS APIs and then run that application across different JavaScript interpreters and host environments.

 

Dessuten så kan man ikke kjøre den under Windows..., eller? (kilde)

Kilden din er nesten halvannet år gammel. Mange som kjører node.js på windows, og du kan laste ned windows-versjonen på nodejs.org

Endret av torbjørn marø
Lenke til kommentar

PS: Et alternativ til å lære JavaScript kan være å begynne med CoffeeScript. Det er et ganske nytt og veldig spennende språk som kompileres til JavaScript. Man skriver altså Coffie-kode, kompilerer, og ut kommer JavaScript-kode som kan bruker i browseren.

 

Takk for tipset men tror jeg skal prøve meg å lære JavaScript synax direkte. Ligner jo også mer på tradisjonell koding som jeg er vant til. Har nå kommet litt igang med enkele <form> kalkulasjoner.

Lenke til kommentar

Takk for tipset men tror jeg skal prøve meg å lære JavaScript synax direkte. Ligner jo også mer på tradisjonell koding som jeg er vant til. Har nå kommet litt igang med enkele <form> kalkulasjoner.

Flott. I tillegg til å bruke tutorials eller bestille deg en bok vil jeg da anbefale deg å ta en titt på hva Douglas Crockford har å si om JavaScript. Han regnes som en av de fremste ekspertene på språket, og er en forkjemper for å bruke JavaScript på en riktig måte (det er nemlig ganske lett å skyte seg selv i foten med JavaScript).

 

Dessuten kan jeg anbefale å la seg inspirere av et norsk video-tutorial som du finner på ZombieTDD.com.

Lenke til kommentar

[...] DOM gir ingen mening om man ikke skal scripte for en browser.[...]

Nei, det er sant.

 

Men, når man (går inn for å) først skal lære seg (i dette tilfellet) JavaScript, så burde man vel også lære seg å hanskes med DOM-modellen? JavaScript benyttes jo tross alt "vanligvis" mest i nettleseren / for nettsider / på klientsiden.

 

Hvor vanlig (og enkelt) er det egentlig at man ser etter folk med JavaScript-kunnskaper, men hvor man ikke skal bedrive webutvikling?

 

For å ta et eksempel:

 

P1: - Kan du JavaScript sier du?

P2: - Ja.

P1: - Flott, da kan du vel lage en hjemmeside til meg da?

P2: - Nei, dessverre..

P1: - ?

Endret av greygenic
Lenke til kommentar

Men, når man (går inn for å) først skal lære seg (i dette tilfellet) JavaScript, så burde man vel også lære seg å hanskes med DOM-modellen? JavaScript benyttes jo tross alt "vanligvis" mest i nettleseren / for nettsider / på klientsiden.

 

Hvor vanlig (og enkelt) er det egentlig at man ser etter folk med JavaScript-kunnskaper, men hvor man ikke skal bedrive webutvikling?

 

1) Først blir det sagt at JavaScript bare kan brukes i browser

2) Så blir det kontret med at det bare er tull - JavaScript er nyttig og brukes til andre ting

3) Så sier DU at argumentasjonen i punkt 2 er feil: "Jo, for trådstarter så blir det nok slik".

4) Jeg svarer med at argumentasjonen din ikke gir mening, og at det fortsatt er tull at JavaScript ikke brukes til andre ting.

 

Det betyr ikke

- at JavaScript ikke først og fremts bruker i browseren

- at det ikke er bra eller nyttig å lære seg klientsideutvikling

- at JavaScript på serversiden er en etterspurt vare

 

Å lære seg JavaScript for annet enn browsern gir også mening pga The Python Paradox:

 

the language to learn, if you want to get a good job, is a language that people don't learn merely to get a job.

Endret av torbjørn marø
  • Liker 2
Lenke til kommentar

[...] DOM gir ingen mening om man ikke skal scripte for en browser.[...]

Nei, det er sant.

 

Men, når man (går inn for å) først skal lære seg (i dette tilfellet) JavaScript, så burde man vel også lære seg å hanskes med DOM-modellen? JavaScript benyttes jo tross alt "vanligvis" mest i nettleseren / for nettsider / på klientsiden.

 

Hvor vanlig (og enkelt) er det egentlig at man ser etter folk med JavaScript-kunnskaper, men hvor man ikke skal bedrive webutvikling?

 

For å ta et eksempel:

 

P1: - Kan du JavaScript sier du?

P2: - Ja.

P1: - Flott, da kan du vel lage en hjemmeside til meg da?

P2: - Nei, dessverre..

P1: - ?

 

Sheeesh.

Lenke til kommentar

Takk for tipset men tror jeg skal prøve meg å lære JavaScript synax direkte. Ligner jo også mer på tradisjonell koding som jeg er vant til. Har nå kommet litt igang med enkele <form> kalkulasjoner.

Flott. I tillegg til å bruke tutorials eller bestille deg en bok vil jeg da anbefale deg å ta en titt på hva Douglas Crockford har å si om JavaScript. Han regnes som en av de fremste ekspertene på språket, og er en forkjemper for å bruke JavaScript på en riktig måte (det er nemlig ganske lett å skyte seg selv i foten med JavaScript).

 

Dessuten kan jeg anbefale å la seg inspirere av et norsk video-tutorial som du finner på ZombieTDD.com.

 

Takk. Jeg skal kikke på linkene!

 

Jeg har googlet litt for å finne ut av hvordan jeg skal kunne "dra" en <DIV> rundt å skjermen med JS, og kom borti denne inlegget:

 

Jeg snakker ut av egen erfaring her når jeg sier at JavaScript virkelig ikke er det språket du burde kode i hvis du har lyst til å more deg med 2D-tegning (les: komplisert og treigt). :confused: Lær deg heller litt Java, det er mye morsommere, og omtrent like lett. :) For ikke å snakke om at det er et programmeringsspråk og ikke et scriptingspråk. F eks i stedet for å måtte lage egne funksjoner i JavaScript som tegner en strek, så er funksjonen i Java der allerede, og jobber mye raskere. Jeg lagde en slags fysikksimulasjon i JavaScript. Når det ble litt for mye å holde styr på for stakkars nettleseren, lærte jeg meg litt Java. Fungerer mye bedre.

Jeg håper at jeg etterhvert også vil trenge litt 2D tegning og å lage fysikksimulatorer, simulere tyngdekraft, kjedereaksjoner ++, så spørsmålet mitt nå er:

Vil Javascript lage begrensninger for meg, og at etter mye arbeid må jeg starte på nytt med Java?

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...