Gå til innhold

Valg av programmeringsspråk


Anbefalte innlegg

En kan ikke bruke basic til dette fordi det ikke har noen lav-nivå funksjoner som C har, det du skriver er ikke nødvendigvis det du får, dessuten er ikke Basic en standard, det er kan hende Visual Basic.NET er det, men jeg tror ikke det.

 

Jeg syns man like godt bare kan hoppe rett på C++ jeg. Da lærer man seg å programmere grundig og man trenger ikke å bytte språk p.g.a at språket du programmerer i ikke klarer den oppgaven du skal løse. Da er det bedre og heller

bytte til lettere språk siden, syns jeg.

BTW: Det med at pekere er så vanskelig avhenger av om man tar seg tid til å lese en god bok. Pekere er jo veldig nyttig også, så vi som driver med C++ er heldige som har det.

 

C++ er i seg selv et ganske stort område, når en kommer til classes, og templates, interfaces osv. så blir det ganske stort, enklere språk som ja, basic, lærer du jo mye om hvordan programmering foregår (selvom det er liten klasse støtte, og avhengig av ActiveX for å fungere) men teorien er fortsatt den samme.

 

Det er pekere som gjør C og C++ så bra, du har full kontroll over det du driver med, jeg tror jeg ... elsker pekere :love:

instruksjon 0x8d er også en favoritt...

Lenke til kommentar
Videoannonse
Annonse
Begynn med C++, da får du gode programmeringsvaner.

Beklager, men C++ er ikke spesielt bra som førstespråk, siden det lar en gjøre omtrent hva som helst. Java vil mye oftere protestere på eller umuliggjøre dårlige vaner. Det er også noe lettere å begynne med, siden man ikke trenger å skjønne fullt så mye om pekere.

 

PHP, Perl og BASIC er sansynligvis de verste språkene å begynne med om man vil lære å programmere skikkelig.

Jeg syns man like godt bare kan hoppe rett på C++ jeg. Da lærer man seg å programmere grundig og man trenger ikke å bytte språk p.g.a at språket du programmerer i ikke klarer den oppgaven du skal løse.

Det er vel strengt tatt ikke så mange oppgaver som løses bedre og raskere med C++ enn Java.. I tillegg til at språket hjelper deg å gjøre ting riktig og unngå en rekke vanlige feil, så har du også et større og mer brukervennelig standard-bibliotek å leke deg med.

 

Da er det bedre og heller bytte til lettere språk siden, syns jeg.

Det som er flott er jo at når du først kan programmere, så er det greit å plukke opp syntax for de mest brukte språkene.

Så, om du en dag finner ut at du skal skrive en skjermkort-driver, er det ingenting i veien for å lære seg C.

 

BTW: Det med at pekere er så vanskelig avhenger av om man tar seg tid til å lese en god bok. Pekere er jo veldig nyttig også, så vi som driver med C++ er heldige som har det.

:)

Forskjellen mellom Java og C++ er vel litt mer enn referanser vs. pekere, og det er vel heller sjelden jeg sitter og tenker at _nå kunne jeg hatt bruk for litt peker-aritmetikk_.. ;)

Lenke til kommentar
Det er vel strengt tatt ikke så mange oppgaver som løses bedre og raskere med C++ enn Java.. I tillegg til at språket hjelper deg å gjøre ting riktig og unngå en rekke vanlige feil, så har du også et større og mer brukervennelig standard-bibliotek å leke deg med.

Det kan godt tenkes, men hvis man begynner med C++ begrenser ikke språket deg, selv om du kansje kunne gjort det enklere i andre språk.

 

Forskjellen mellom Java og C++ er vel litt mer enn referanser vs. pekere, og det er vel heller sjelden jeg sitter og tenker at _nå kunne jeg hatt bruk for litt peker-aritmetikk_.. wink.gif

Ikke? Hmm... Snålt!

Lenke til kommentar
Forskjellen mellom Java og C++ er vel litt mer enn referanser vs. pekere, og det er vel heller sjelden jeg sitter og tenker at _nå kunne jeg hatt bruk for litt peker-aritmetikk_

 

Det er ikke pekere i Java, en peker går vanligvis til en primitiv datatype, (som int, char osv) en referanse er til et objekt.

(du har pekere i C# sånn til informasjon)

 

Pekere er fryktelig kjekt, fordi det øker hastigheten i programmet betydelig...

int *arguments = new int[256];
for(register int x = 0;x<256;x++)
 arguments[x] = x;

kan gjøres med

int *arguments = new int[256];
for(int x = 0, register int *ptr = arguments;x<256;x++,ptr++)
 *ptr = x;

 

siden

 

[/code]

mov eax, 4

mul eax, x

mov dword ptr[eax], x[/code]

er tregere en

add eax, 4
mov dword ptr [eax], x

 

Altså i andre språk en C og C++ kan du ikke velge dette selv, du må nødvendigvis gi array[index], dette er en av mange ting som gjør at jeg foretrekker C++.

Lenke til kommentar
Det er ikke pekere i Java, en peker går vanligvis til en primitiv datatype, (som int, char osv) en referanse er til et objekt.

(du har pekere i C# sånn til informasjon)

jeg hadde et par prosjekter med c#. tror ikke det var pekere i den versjonen av språket jeg brukte. da hadde det referanser. men man kunne ikke gjøre pekeraritmetikk med disse referansene. har dette blitt endret?

Lenke til kommentar
Forskjellen mellom Java og C++ er vel litt mer enn referanser vs. pekere, og det er vel heller sjelden jeg sitter og tenker at _nå kunne jeg hatt bruk for litt peker-aritmetikk_

 

Det er ikke pekere i Java,

Nei, Java har referanser, som stort sett gjør den samme nytten og er mye tryggere å jobbe med.

 

en peker går vanligvis til en primitiv datatype,

Javel?!

 

en referanse er til et objekt.

Referanse kan vel bety så mangt, er f.eks. godt mulig å ha referanser til en primitiv i C++.

 

Skjønner ikke hvorfor du på død og liv skal prøve å vrenge på det jeg sier. Skulle vel komme tydelig fram at jeg snakker om referanser i Java som en analog til pekere i C++; begge brukes for å behandle ting som ligger i minnet et sted. Jupps, pekere er litt mer fleksible, men poenget mitt var altså at jeg sjelden savner akkurat det.

 

(du har pekere i C# sånn til informasjon)

Og det alene er vel grunn nok til å sky C# som pesten, ihvertfall når du tar en titt på folka du skal jobbe med. ;)

 

Pekere er fryktelig kjekt, fordi det øker hastigheten i programmet betydelig...

int *arguments = new int[256];
for(register int x = 0;x<256;x++)
 arguments[x] = x;

kan gjøres med

int *arguments = new int[256];
for(int x = 0, register int *ptr = arguments;x<256;x++,ptr++)
 *ptr = x;

 

Hmm... Hos meg kompileres eksemplene dine til akkurat det samme. Og det er vel heller liten tvil om hvilken variant som er mest lesbar?

 

--

 ;	
 ;	void main() {
 ;  int *arguments = new int[256];
 ;	
@1:
push      1024
call      @$bnwa$qui
pop       ecx
mov       edx,eax
 ;	
 ;  for (register int x = 0; x < 256; x++) {
 ;	
?live16385@16:; EDX = arguments
@2:
xor       eax,eax
mov       ecx,edx
mov       edx,ecx
 ;	
 ;  	arguments[x] = x;
 ;	
?live16385@32:; EAX = x, EDX = @temp1
@3:
mov       dword ptr [edx],eax
@5:
inc       eax
add       edx,4
cmp       eax,256
jl        short @3
 ;	
 ;  }
 ;	}
 ;

 

 ;	
 ;	void main() {
 ;  int* arguments = new int[256];
 ;	
@1:
push      1024
call      @$bnwa$qui
pop       ecx
 ;	
 ;  register int* ptr = arguments;
 ;	
?live16385@16:; EAX = arguments
mov       edx,eax
 ;	
 ;  for (int x = 0; x < 256; x++, ptr++) {
 ;	
?live16385@32:; EDX = ptr
@2:
xor       eax,eax
 ;	
 ;  	*ptr = x;
 ;	
?live16385@48:; EAX = x, EDX = ptr
@3:
mov       dword ptr [edx],eax
@5:
inc       eax
add       edx,4
cmp       eax,256
jl        short @3
 ;	
 ;  }
 ;	}
 ;

Lenke til kommentar
BTW: Det med at pekere er så vanskelig avhenger av om man tar seg tid til å lese en god bok. Pekere er jo veldig nyttig også, så vi som driver med C++ er heldige som har det.

Selvsagt er det ikke noen umulighet å lære seg pekere, men det øker i nokså begrenset grad forståelsen for programmering generelt. Siden pekere kan brukes og misbrukes på alle slags vis i C(++), er sjansen stor for an man vil få dårlige vaner om man bruker dem før man har vent seg til å skrive god og forståelig kode. Om fleksibilitet i seg selv hadde vært positivt for språket man skal lære å programmere i, ville jeg anbefalt Perl, men de fleste som kan programmere skjønner hva slags kode en slik person sansynligvis ender opp med å skrive.

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

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