Archief - c# leren

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

ward55

Legacy Member
Recipe4hate zei:
Waar werk jij eigenlijk en als wat? (mag me ook PM'n hoor)

ik veronderstel dat jullie al veel ervaring hebben met programmeren welke talen kunnen jullie zoal?

pietje666

Legacy Member
even wat verwarring de wereld uithelpen:

Een programma wordt opgemaakt uit pure tekst bestanden. Het hele programma wordt gewoon beschreven in pure tekst. Deze tekst kan bijvoorbeeld geschreven zijn in kladblok.

Een compiler gaat deze tekst uitlezen en aan de hand van bepaalde regels jouw tekst vertalen naar programmataal.
1 van deze regels is bijvoorbeeld dat een regel altijd afgesloten dient te worden door een ';' anders compileert je tekstbestand niet en krijg je een compileerfout. Een compiler krijgt dus jouw tekst en maakt er programmataal van.

Nu gaat je tekst niet in alle gevallen gecompileerd worden rechtstreeks naar machinetaal. Sommige programmeertalen compileren rechtstreeks naar machinetaal (bijvoorbeeld C en C++, ...).

Maar sommige programmeertalen(C#, Java,...) hebben een soort laag tussen de machinetaal en jouw programma. Zodat jouw programma niet rechtstreeks tegen de machine praat maar tegen die tussenlaag. Dit biedt als voordeel dat wanneer je iets fout doet in je programma niet je hele pc crasht. De tussenlaag biedt hier wat zekerheden in dat dit niet zomaar gebeurd. Het nadeel is dat nakijken of bepaalde acties je computer niet doen crashen tijd kost. Dus een programmeertaal met tusssenlaag is een klein beetje trager (als in heel heel klein beetje veel ga je er niet van merken in normale situaties)

Nu the big picture =>
alles schrijven in kladblok en dan via de compiler handmatig compileren kost best wel veel tijd. Daarom bestaat er een IDE (=integrated development environment), een IDE maakt het schrijven van de code stukken gemakkelijker door gebruik van kleurtjes voor bepaalde woorden aan te duiden, aangeven of je wel een ';' hebt gezet en veel veel veel meer dingen wat het gewoon een stuk gemakkelijker maakt. Ook kan je in een IDE dikwijls op een RUN knopje duwen wat er dan voor zorgt dat je tekstbestanden gecompileerd worden naar programmataal.

Een standaard tekstbestand heeft als extentie .txt maar als je tekstbestand code bevat zal er vaak een andere extentie verwacht worden door de compiler dan verander je gewoon de "txt" naar wat de compiler wil zien voor C# zou je bijvoorbeeld .txt veranderen naar .cs .

Dit helpt u wel beetje voort denk ik?

ultddave

Legacy Member
Check PM voor "Beginning Programming with Java For Dummies.pdf" ;) (goede kwaliteit)). Het boek behandelt de basisonderwerpen zoals "wat is een compiler" "wat is machinetaal" en andere basisconcepten en gaat daarna over met uitleg over java programming. Succes.

(Andere geïnteresseerden mogen me altijd PMen voor de link.)

Moto

Legacy Member
ik veronderstel dat jullie al veel ervaring hebben met programmeren welke talen kunnen jullie zoal?
~14 jaar "professioneel" als consultant
begonnen met VB 6 / javascript

sinds .net vooral C# en het laatste jaar ook terug javascript (html5/node.js)

ward55

Legacy Member
pietje666 zei:
even wat verwarring de wereld uithelpen:

Een programma wordt opgemaakt uit pure tekst bestanden. Het hele programma wordt gewoon beschreven in pure tekst. Deze tekst kan bijvoorbeeld geschreven zijn in kladblok.

Een compiler gaat deze tekst uitlezen en aan de hand van bepaalde regels jouw tekst vertalen naar programmataal.
1 van deze regels is bijvoorbeeld dat een regel altijd afgesloten dient te worden door een ';' anders compileert je tekstbestand niet en krijg je een compileerfout. Een compiler krijgt dus jouw tekst en maakt er programmataal van.

Nu gaat je tekst niet in alle gevallen gecompileerd worden rechtstreeks naar machinetaal. Sommige programmeertalen compileren rechtstreeks naar machinetaal (bijvoorbeeld C en C++, ...).

Maar sommige programmeertalen(C#, Java,...) hebben een soort laag tussen de machinetaal en jouw programma. Zodat jouw programma niet rechtstreeks tegen de machine praat maar tegen die tussenlaag. Dit biedt als voordeel dat wanneer je iets fout doet in je programma niet je hele pc crasht. De tussenlaag biedt hier wat zekerheden in dat dit niet zomaar gebeurd. Het nadeel is dat nakijken of bepaalde acties je computer niet doen crashen tijd kost. Dus een programmeertaal met tusssenlaag is een klein beetje trager (als in heel heel klein beetje veel ga je er niet van merken in normale situaties)

Nu the big picture =>
alles schrijven in kladblok en dan via de compiler handmatig compileren kost best wel veel tijd. Daarom bestaat er een IDE (=integrated development environment), een IDE maakt het schrijven van de code stukken gemakkelijker door gebruik van kleurtjes voor bepaalde woorden aan te duiden, aangeven of je wel een ';' hebt gezet en veel veel veel meer dingen wat het gewoon een stuk gemakkelijker maakt. Ook kan je in een IDE dikwijls op een RUN knopje duwen wat er dan voor zorgt dat je tekstbestanden gecompileerd worden naar programmataal.

Een standaard tekstbestand heeft als extentie .txt maar als je tekstbestand code bevat zal er vaak een andere extentie verwacht worden door de compiler dan verander je gewoon de "txt" naar wat de compiler wil zien voor C# zou je bijvoorbeeld .txt veranderen naar .cs .

Dit helpt u wel beetje voort denk ik?

jip, sommige dingen worden duidelijker bedankt hiervoor!

ward55

Legacy Member
Moto zei:
~14 jaar "professioneel" als consultant
begonnen met VB 6 / javascript

sinds .net vooral C# en het laatste jaar ook terug javascript (html5/node.js)

dan heb jij wel al wat ervaring :) alleen begrijp ik niet waarom je ~14 jaar plaatste?

Mackenzie

Legacy Member
ward55 zei:
dan heb jij wel al wat ervaring :) alleen begrijp ik niet waarom je ~14 jaar plaatste?

Omdat er iemand vroeg hoeveel ervaring hij al had. En dan antwoordt Moto dat hij ongeveer 14 jaar consultant is...

Messias.

Legacy Member
pietje666 zei:
Maar sommige programmeertalen(C#, Java,...) hebben een soort laag tussen de machinetaal en jouw programma. Zodat jouw programma niet rechtstreeks tegen de machine praat maar tegen die tussenlaag. Dit biedt als voordeel dat wanneer je iets fout doet in je programma niet je hele pc crasht. De tussenlaag biedt hier wat zekerheden in dat dit niet zomaar gebeurd. Het nadeel is dat nakijken of bepaalde acties je computer niet doen crashen tijd kost. Dus een programmeertaal met tusssenlaag is een klein beetje trager (als in heel heel klein beetje veel ga je er niet van merken in normale situaties)

Toch even op reageren. Ik denk dat je hier de voordelen intermediate representation en virtuele machines met elkaar verwart. Dat zijn sterk gerelateerde concepten maar zeker niet onderling inwisselbaar. Het is niet omdat C# compileert naar een IR dat je programma daarom in een veilige omgeving wordt uitgevoerd. Er hoeft zelfs geen just-in-time-compiler aan te pas komen. In een tweede fase kan de IR gerust ahead-of-time gecompileerd worden, zoals C++ gecompileerd wordt naar machinetaal (GCJ kan Java bytecode compileren, Mono heeft een AOT voor CIL, etc.)

Het grootste voordeel van IR is dat je je compiler niet hoeft te herschrijven voor elk platform! Je zorgt gewoon dat je compiler geldige Java bytecode, CIL of LLVM IR als output heeft en je code is meteen uitvoerbaar op tientallen verschillende platformen. Bijkomend voordeel is dat je je geen zorgen moet maken om optimalisaties. Al die duizenden man-uren die gespendeerd zijn in het ontwikkelen van geraffineerde optimalisaties zijn gratis en voor niks!

pietje666

Legacy Member
Messias. zei:
denk dat voor 95% van de gevallen men niet rechtstreeks naar machinetaal laat compilen hoor?(voor geval van java en C# dan) Correct me if i'm wrong.

(+ hou uw tekst is wat simpeler, dan kan de topicstarter ook meelezen en er effectief iets van begrijpen, en maakt het voor mij ook makkelijker :p)

ward55

Legacy Member
pietje666 zei:
denk dat voor 95% van de gevallen men niet rechtstreeks naar machinetaal laat compilen hoor? Correct me if i'm wrong.

(+ hou uw tekst is wat simpeler, dan kan de topicstarter ook meelezen en er effectief iets van begrijpen, en maakt het voor mij ook makkelijker :p)

jip, als ik dat las voelde ik me eventjes enorm dom :p maar toch merci :p

Messias.

Legacy Member
pietje666 zei:
denk dat voor 95% van de gevallen men niet rechtstreeks naar machinetaal laat compilen hoor?(voor geval van java en C# dan) Correct me if i'm wrong.

(+ hou uw tekst is wat simpeler, dan kan de topicstarter ook meelezen en er effectief iets van begrijpen, en maakt het voor mij ook makkelijker :p)

Is ook zo hoor! De meest gangbare compiler voor Java (javac) en C# (csc) compileren naar "intermediate language". Mijn excuses voor het jargon trouwens. Op een verstaanbare manier technische zaken uitleggen is een gave die ik niet heb. :)

ward55

Legacy Member
bij deze ben ik op zoek naar een goeie laptop om zo dingen te programmeren, ik weet niet echt of netbeans, eclips... echt zware programma's zijn maar ik weet dat jullie ook programmeren, welke laptop is daar geschikt voor?
ik dacht aan een Dell inspiron 15R special edition met een intel core i5 processor?

mvg

Recipe4hate

Legacy Member
Je hebt geen snelle pc nodig, simple as that (toch zeker niet om beginnende programma's te maken) :)
Waarschijnlijk voldoet de pc waarmee je nu op 9lives surft al.

ward55

Legacy Member
Recipe4hate zei:
Je hebt geen snelle pc nodig, simple as that (toch zeker niet om beginnende programma's te maken) :)
Waarschijnlijk voldoet de pc waarmee je nu op 9lives surft al.


ok merci, maar ik ben toch van plan een nieuwe te kopen dus kies direct een degelijke :p
mvg

Jerre Muesli

Legacy Member
Neem >4 gig ram werkgeheugen.
En al dan niet ssd. i5 is meer dan genoeg.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan