Gå til innhold

Hvilket programmeringsspråk bør jeg lære meg? (13 år gammel gutt)


Anbefalte innlegg

Har alltid lurt på dette, dere som driver med "programmering" hva er det egentlig? Dere programmerer, det skjønner jeg, men hva?
"Programmering" er faget for å kunne sette sammen instruksjoner til maskinen slik at maskinen utfører en gitt oppgave. For å få til dette må det noe læring til, man må lære seg noen strukturer og metoder. Svarte det på spørsmålet ditt?
Lenke til kommentar
Videoannonse
Annonse
Men i et av Visual-språkene er det jo drøssevis med koder man "slenger med på lasset" som er totalt unødvendig i et program.
Hm? Tenker du på bibliotekene? Vel, C++ er jo ikke noe anderledes der, man inkluderer de bibliotekene man har bruk for.

 

Det er vanvittig forskjell på biblotekene i C++ og hva man får på lasset i de fleste visual-språkene. Men på den annen side skal ikke jeg stå som noen forkjemper for C++ over C#. Til det vet jeg for lite om C#. Men som kanskje de som er lesekyndig ser så har jeg heller ALDRI fremhevet C++ over C#.

Jeg (og flere enn meg) mener bare at det kan være fint å begynne der man ofte vil ende opp. Og jeg har samtidig troen på 13-åringer. At ikke alle er enige med meg der det kan jeg fint leve med.

Lenke til kommentar

Jeg jobber om dagen mye med OpenGL grafikk i både C# og C++, hvor jeg jobber med en grafikkmotor i begge to.

 

Fordelene med C#:

- Enkel syntaks

- Pekere brukes kun i spesielle anledninger (som for eksempel i Vertex buffer klassen min for å gi pekere til OpenGL)

- Garbage collection bygget inn i språket, objekter kan låses for å hindre GC i å kaste dem om nødvendig

- Generics følger med den kompilerte Dll-filen som er veldig hendig for Vertex buffer og index buffer

- GUI designeren gjør det veldig enkelt å plassere kontroller og gi dem egenskaper

- Språket er 100% objektorientert

- Enkel reflection som gjør det enkelt å bygge inn et plug-in system til Map editoren

- P/Invoke tillater bruken av OpenGL32.dll direkte

- Delegates gjør det enkelt å implementere OpenGL extensions som for eksempel GL_SHADER_OBJECTS_ARB

- Et stort standardbibliotek som har det aller meste en kan trenge

 

Mulighetene er nær sagt uendelige i C#, og ytelsen på kompilerte programmer er veldig bra.

Lenke til kommentar
Jeg (og flere enn meg) mener bare at det kan være fint å begynne der man ofte vil ende opp. Og jeg har samtidig troen på 13-åringer. At ikke alle er enige med meg der det kan jeg fint leve med.
For det første er jeg uenig i premisset ditt, at C++ er der man ofte vil ende opp. For det andre handler det ikke om at 13-åringer ikke vil få det til, det handler om å gi de mest mulig igjen fra innsatsen sin. Men vi blir vel neppe enige så vi får heller være enige om å være uenige :)
Lenke til kommentar

Hvor man ender opp kommer jo helt an på hva man jobber med. På samme måte er hvilket språk man bør begynne med helt avhengig av hva man vil oppnå. C++ er ikke nødvendigvis så veldig produktivt i forhold til andre språk, men det er allikevel interessant og lærerikt å jobbe med. Jeg synes også man får mye igjen for det selv om det ikke nødvendigvis er i form av fancy GUI på 1-2-3. Man lærer seg f.eks. til å tenke i mye større grad på ytelse, sikkerhet, etc. når man jobber med C/C++, noe jeg mener er bra.

Lenke til kommentar
C++ [...] er allikevel interessant og lærerikt å jobbe med. Jeg synes også man får mye igjen for det selv om det ikke nødvendigvis er i form av fancy GUI på 1-2-3. Man lærer seg f.eks. til å tenke i mye større grad på ytelse, sikkerhet, etc. når man jobber med C/C++, noe jeg mener er bra.
Helt klart, jeg synes som sagt alle utviklere som tar jobben sin seriøst (eller de som ønsker å bli utviklere) bør sette seg inn i C/C++ (igrunnen C mest). Rett og slett for å få et innblikk i hvordan ting faktisk fungerer. Det jeg sier er at det er ikke den beste plassen å begynne hvis man er fersk.
Lenke til kommentar
C++ [...] er allikevel interessant og lærerikt å jobbe med. Jeg synes også man får mye igjen for det selv om det ikke nødvendigvis er i form av fancy GUI på 1-2-3. Man lærer seg f.eks. til å tenke i mye større grad på ytelse, sikkerhet, etc. når man jobber med C/C++, noe jeg mener er bra.
Helt klart, jeg synes som sagt alle utviklere som tar jobben sin seriøst (eller de som ønsker å bli utviklere) bør sette seg inn i C/C++ (igrunnen C mest). Rett og slett for å få et innblikk i hvordan ting faktisk fungerer. Det jeg sier er at det er ikke den beste plassen å begynne hvis man er fersk.

Absolutt enig. Alle bør ha erfaring fra C og gjerne også assembly, tilsvarende bør alle ha erfaring fra funksjonelle språk og deklarative språk, uansett hva man jobber med.

 

Men som du sier, man starter gjerne ikke der.

Lenke til kommentar

Absolutt enig. Alle bør ha erfaring fra C og gjerne også assembly, tilsvarende bør alle ha erfaring fra funksjonelle språk og deklarative språk, uansett hva man jobber med.

 

Men som du sier, man starter gjerne ikke der.

 

Bare kaster inn hvor utrolig enig jeg er med dette.

 

C++ er nesten et krav å kunne når en anser seg som seriøs innen faget, men jeg synes ikke det er det beste utgangspunktet, ei heller det mest nyttigste språket i dag. Men det er absolutt lingua franca innen bransjen, det er det språket alle burde forstå.

Lenke til kommentar
Haskell kan vel være et artig sted å begynne?
Meh... Selv synes jeg ikke at funksjonelle språk er ett godt sted å begynne, spesielt ikke i ung alder. Grunnen er at det er veldig forskjellig fra "mainstream" programmering, det er mindre ressurser på nettet til selvlæring, de ressursene som er handler ofte om å lære funksjonell programmering når man kan imperativ programmering fra før og det krever en viss matematisk forståelse.

 

Når man har kommet litt inn i programmering derimot er funksjonell programmering definitivt noe man bør lære seg litt av. Om ikke annet for å utvide horisonten sin litt.

Lenke til kommentar

Dere tror ikke det er en årsak til at så å si samtlige høgskoler starter med Java til førsteårsstudentene? Java er et veldig bra språk av mange årsaker, mest viktig: det er lett å lære, man lærer seg å jobbe metodisk for å programmere, man kommer unna snarveier som drag-and-drop komponenter. Det foreligger mange lærebøker, også på norsk, om Java.

 

Ved å starte med Java vil han også stille sterkere når han begynner å studere på høgskolen.

 

Personlig liker jeg C# veldig godt og er enig i at det er enkelt å begynne med samtidig som man ser resultater kjapt, men det er et veldig lettvint språk og IDE'et Visual Studio gjør at man kan bli litt lat. Jeg tror terskelen for å ønske å begynne på et høynivå språk som Java / C/C++ er høyere om man starter på C#, rett og slett fordi du kan "lage det samme i C# fire ganger så raskt".

 

C# er i tillegg ganske så likt Java, og for min del var overgangen Java -> C# veldig smooth.

 

Min anbefaling: Lær deg Java først (291 stillinger på Finn.no, fremtiden er sikret) og så .NET (349 stillinger).

Lenke til kommentar

Høyskolene begynner med Java fordi de liker ikke Microsoft ;) Nei, fra spøk til revolver. Java er et bra høynivåspråk, på linje med C#, men jeg ville ikke begynt der hvis jeg ikke hadde en spesiell grunn til det. Grunnen til det er bl.a. enklere å få webserverplass.

 

Hvis man programmerer vil man gjerne at andre skal få ta del i tingene man lager. I dag er mange ting på nett, hvis man lager en tjeneste vil man gjerne legge den ut på nett og la andre bruke den. Her fungerer .NET pakken sykt mye bedre enn Java, rett og slett fordi det finnes i praksis ingen rimelige Java server-side leverandører mens .NET på websiden din kan man få nesten hvor som helst for en slikk og ingenting.

 

C# og Java er ganske like, både i konsepter og syntax så overgangen fra C# til Java er ikke noe verre enn Java til C# (annet enn, som Vial sier, man blir irritert over hvor enklere ting hadde vært i C# ;) )

Lenke til kommentar

C# er mer moderne en Java, og det støtter en rekke flere ting som kan være av ren akademisk nytte. For eksempel delegates, primitive datatyper (ordentlig struct og enum) usignerte datatyper, pekere, objektlåsing, P/Invoke, Native minneallokering, LINQ, attributter, objektorientert refleksjon, operator overloading og selektive generics.

 

Overgangen C#->Java er vel like enkel allikevel :)

Endret av GeirGrusom
Lenke til kommentar

C++ er veldig lett og fint, selv lærte jeg meg det som elleveåring uten problemer. Jeg tror absolutt at det er det beste språket for deg, gjerne med litt hjelp fra www.sindrem.com i tilegg til guiden du følger.

 

Bruk Blodsheds DevCPP for å kompilere, debugge og endre i ett program:)

Lenke til kommentar
Takk for mange gode svar, ser ut til at det blir C#, hvirker som det beste/enkleste språket å lære. Bare en ting til... Noen som vet om noen gode bøker, helst på norsk. Tusen takk for masse god hjelp!

 

Eg brukte ei bok som heiter noko sånt som "Lær deg C# in 21 days" Den er på norsk sjølv om dei ikkje har klart å oversette heile tittelen. Den finst også engelsk med tittelen "Teach yourself C# in 21 days". Kun

Lenke til kommentar
C++ er veldig lett og fint, selv lærte jeg meg det som elleveåring uten problemer. Jeg tror absolutt at det er det beste språket for deg, gjerne med litt hjelp fra www.sindrem.com i tilegg til guiden du følger.

 

Bruk Blodsheds DevCPP for å kompilere, debugge og endre i ett program:)

Hvis det var "veldig lett og fint", så lærte du ikke C++. Rett og slett. C++ tar mange år og mestre, og selv om du har lært deg syntaksen, er det bare en liten del av det. Forøvrig bør man styre unna sindrem.com, da koden som brukes der er utdatert og dårlig. Bloodshed er som GeirGrusom nevner også utgått på dato.

Lenke til kommentar
  • 1 måned senere...

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...