Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

Python ter voorbereiding voor C / Objective-C

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey mensen,

Ik ben nu al ruim een jaar bekend met de talen HTML en CSS, maar niet echt projecten gestart. Sinds een paar maanden ben ik bezig met het leren van PhP en JavaScript. Dit doe ik allemaal een beetje na school, schooldagen - weekenden - vakanties.

Maar nu wil ik (weer) een stap verder; terwijl ik PhP en JS ook leer, namelijk programmeren, die richting op.
Op Codecademy (waar ik ook PhP en JS leer) wil ik aan de slag gaan met Python. Als ik het goed heb is Python een programmeer-taal, een soort combinatie JavaScript en C.

Ter voorbereiding van C en Objective-C wil ik dus beginnen met Python.

Is dit dus een slimme stap, zodat het leren van C en Objective-C een stuk gemakkelijk gaat?

Hoor graag van jullie,
Niels

Verkeerde Sub-Forum, of al bestaande thread. Sorry daarvoor :-( !

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Dat heb je dus niet goed. Python heeft weinig tot niets te maken met C. Als je perse graag met C wil beginnen kun je daar danook het beste mee starten. Objective C en C hebben overigens ook niet bijster veel met elkaar te maken; er zijn meer verschillen dan overeenkomsten haast.

Tenslotte: niemand schrijft PHP als PhP ;)

https://niels.nu


Verwijderd

Topicstarter
Oké, dank je voor je antwoord!

Ik denk dat ik later wel eens ga verdiepen in Python, maar nu dus nog PHP en JS.

Ik heb veel op internet gelezen dat C belangrijk is om Obj. C te leren, het is makkelijker maar zonder C kan het ook.

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Begrijp me niet verkeerd; iedere developer moet wat mij betreft een beetje C onder de knie hebben, net zoals iedere developer assembly moet 'snappen'. Alleen is dat niet een specifieke voorwaarde voor Objective-C wat mij betreft.

https://niels.nu


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Ik zou naar C# kijken. C en Objective C zou ik vooralsnog niet aan beginnen. Zie er het nut niet zo van in voor je. Python is ook een goede, maar Python en C#/C/C++ zijn erg verschillende talen. Python lijkt meer op PHP -- alleen dan beter. Voor web development zal je het meeste hebben aan Python of C#.

  • Ramon
  • Registratie: Juli 2000
  • Laatst online: 00:10
Ik vind Python totaal niet op PHP lijken eigenlijk. Ik vind het nogal raar dat je taal A gaat leren als opstapje naar taal B. Ook C en Objective-C zijn nogal verschillend als je het mij vraagt.... Wat is je uiteindelijk doel? Wil je iOS apps gaan maken? Waarom dan niet meteen Objective-C gaan leren? (of natuurlijk css/js/html en dan met PhoneGap aan de slag, kan je je app meteen op alle platformen uitrollen).

Check mijn V&A ads: https://tweakers.net/aanbod/user/9258/


  • Amanush
  • Registratie: Mei 2012
  • Laatst online: 18-06 09:30

Amanush

Saai persoon.

Hydra schreef op maandag 10 februari 2014 @ 19:11:
Begrijp me niet verkeerd; iedere developer moet wat mij betreft een beetje C onder de knie hebben, net zoals iedere developer assembly moet 'snappen'. Alleen is dat niet een specifieke voorwaarde voor Objective-C wat mij betreft.
Wat mij betreft moet elke developer op een Linux-gebaseerd systeem ontwikkelen.

Ga tot de luiaard, gij mier! Zie haar wegen en wordt wijs.


Verwijderd

Als je een beetje aan C wilt proeven zou je ook naar bijvoorbeeld een Arduino kunnen kijken. Kun je een hoop leuke projectjes mee doen!

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09 23:18

djc

Ik denk niet dat Python veel toevoegt aan je C-voorbereiding als je al met PHP en JavaScript bezig bent. Ik zou, als ik jou was, eerst wat meer ervaring opdoen met PHP en JavaScript.

Rustacean


  • Merethil
  • Registratie: December 2008
  • Laatst online: 02:13
Amanush schreef op maandag 10 februari 2014 @ 19:31:
[...]

Wat mij betreft moet elke developer op een Linux-gebaseerd systeem ontwikkelen.
Heb je hier ook een reden voor of houd je van het spuien van meningen zonder onderbouwing?
Ik zou zelf inderdaad gewoon aan de slag gaan met C zelf (Of C++, lijkt me een nuttigere, to be honest, tenzij je gaat werken met embedded systemen of systemen met ongelofelijk weinig overhead).

PHP is leuk voor webscripting, Python is leuk voor scriptjes en websites, met de mogelijkheid naar grotere dingen met een flinke community er omheen, maar C en C++ zijn talen waarmee je misschien nog wel een stuk verder kan komen in dezelfde tijd als je het maar goed genoeg onder de knie krijgt.

Het is ook een persoonlijke voorkeur voor het één of ander, maar C/C++ is erg fijn om te kennen. Higher-level talen zoals het eerder genoemde C# is een mooie gulden-middenweg als je aan de slag wilt met zowel application- als webdevelopment, het is voor allebei best een mooie programmeertaal en het .NET framework helpt je flink op weg.

TLDR: Als je veel tijd hebt is C/C++ een fijne. Wil je sneller aan de slag met wat je in je hoofd hebt (plannen voor programma's/libraries/wrappers e.d.) komt je in de buurt van C# o.i.d.
Wil je compatibility op een tal van systemen en toch voorgaande "snellere leerweg"? Java/Python/PHP, kan je ook erg leuke dingen mee.

  • Amanush
  • Registratie: Mei 2012
  • Laatst online: 18-06 09:30

Amanush

Saai persoon.

Merethil schreef op maandag 10 februari 2014 @ 19:49:
[...]


Heb je hier ook een reden voor of houd je van het spuien van meningen zonder onderbouwing?
Ik zou zelf inderdaad gewoon aan de slag gaan met C zelf (Of C++, lijkt me een nuttigere, to be honest, tenzij je gaat werken met embedded systemen of systemen met ongelofelijk weinig overhead).

PHP is leuk voor webscripting, Python is leuk voor scriptjes en websites, met de mogelijkheid naar grotere dingen met een flinke community er omheen, maar C en C++ zijn talen waarmee je misschien nog wel een stuk verder kan komen in dezelfde tijd als je het maar goed genoeg onder de knie krijgt.

Het is ook een persoonlijke voorkeur voor het één of ander, maar C/C++ is erg fijn om te kennen. Higher-level talen zoals het eerder genoemde C# is een mooie gulden-middenweg als je aan de slag wilt met zowel application- als webdevelopment, het is voor allebei best een mooie programmeertaal en het .NET framework helpt je flink op weg.

TLDR: Als je veel tijd hebt is C/C++ een fijne. Wil je sneller aan de slag met wat je in je hoofd hebt (plannen voor programma's/libraries/wrappers e.d.) komt je in de buurt van C# o.i.d.
Wil je compatibility op een tal van systemen en toch voorgaande "snellere leerweg"? Java/Python/PHP, kan je ook erg leuke dingen mee.
Nee, ik heb net als diegene waarop ik quote geen echte onderbouwing..

Ga tot de luiaard, gij mier! Zie haar wegen en wordt wijs.


  • CurlyMo
  • Registratie: Februari 2011
  • Laatst online: 23:36
Je zou jezelf kunnen aanleren om geen mixed variables meer te gebruiken om zo jezelf een beetje voor te bereiden op C vanuit PHP. Dit werkt in PHP namelijk prima, maar in C niet:
PHP:
1
strcmp("1", 1);

In C kun je niet zomaar een string met een integer vergelijken. Daarom in PHP ook het verschil tussen == en ===.

Wat daarvoor helpt is je variabelen prefixes geven. Bijv:
PHP:
1
2
3
$iInt;
$aArray;
$sString;

En dan consequent die variabelen als dat type gebruiken, en niet opeens een string als integer zonder te casten of converteren.

Hetzelfde geldt voor characters en character arrays. In PHP werkt dit bijv. prima:
PHP:
1
2
printf("%s", 'blaat');
printf("%s", "blaat");

Maar in C niet. In C worden characters tussen enkele aanhalingstekens gezien als enkele characters en tussen dubbele aanhalingstekens als character arrays. Hetzelfde zou in C alleen zo kunnen:
PHP:
1
printf("%s", "blaat");

En dit werkt dan weer wel in C, maar niet in PHP:
PHP:
1
2
printf("%c", 'b'); # b
printf("%d", 'b'); # 98


Als je zo jezelf een wat meer consistentie aanleert, loop je daar in C ook wat minder in te klooien.

Sinds de 2 dagen regel reageer ik hier niet meer


  • Amanush
  • Registratie: Mei 2012
  • Laatst online: 18-06 09:30

Amanush

Saai persoon.

In C / C++ kan je ze wel casten en daarna vergelijken.

Ga tot de luiaard, gij mier! Zie haar wegen en wordt wijs.


  • Merethil
  • Registratie: December 2008
  • Laatst online: 02:13
Amanush schreef op maandag 10 februari 2014 @ 19:57:
[...]

Nee, ik heb net als diegene waarop ik quote geen echte onderbouwing..
Nou zit er een klein verschil tussen een "Software Artist" en iemand die al 10+ jaar in het vak zit. Laten we wel wezen: Wat hij zei was niet zozeer een mening maar gewoon een feit: Alles bouwt verder op assembly en veel bouwt verder op C. Handig is dan om dat alles een beetje te kennen. Zie het als "Van binnenuit naar buiten toe werken en leren hoe alles in elkaar zit".

Maar, alsjeblieft, laat je ongefundeerde mening een beetje achterwege als het niets toevoegt.

  • Amanush
  • Registratie: Mei 2012
  • Laatst online: 18-06 09:30

Amanush

Saai persoon.

Ik begrijp best dat je erg boos bent, maar mensen naar beneden drukken is niet de manier om zelf hoger geacht te worden.
Mijn respect heb je niet. Ik toonde alleen aan dat hij niet onderbouwde.

Wel vind ik het moedig dat je zijn uitspraken op een correcte manier weet te onderbouwen, en heb daar wel respect voor.

Verder zal ik het je niet kwalijk nemen dat je mensen naar beneden drukt om jezelf te verhogen. Doen genoeg mensen namelijk.

Ga tot de luiaard, gij mier! Zie haar wegen en wordt wijs.


  • Merethil
  • Registratie: December 2008
  • Laatst online: 02:13
Amanush schreef op maandag 10 februari 2014 @ 20:06:
Ik begrijp best dat je erg boos bent, maar mensen naar beneden drukken is niet de manier om zelf hoger geacht te worden.
Mijn respect heb je niet. Ik toonde alleen aan dat hij niet onderbouwde.

Wel vind ik het moedig dat je zijn uitspraken op een correcte manier weet te onderbouwen, en heb daar wel respect voor.

Verder zal ik het je niet kwalijk nemen dat je mensen naar beneden drukt om jezelf te verhogen. Doen genoeg mensen namelijk.
Boos ben ik zeer zeker niet, maar als je niets nuttigs weet toe te voegen is het gewoon niet nodig om te reageren lijkt mij.
Het komt erop neer dat er mensen zijn die, uit hun eigen ervaring, proberen te helpen met een probleem waar veel beginnend (of zelfs gevorderde) developers tegenaan lopen. Nutteloze opmerkingen tussendoor "omdat de ander ook niet onderbouwt" is niets anders dan "stoken" zonder enige toevoeging en dan kan je net zo goed wegblijven ;)

Om weer op het goede spoor te komen en toch ook uit jou wat nuttigs te krijgen: Wat zou jij de poster aanraden en waarom?

  • Amanush
  • Registratie: Mei 2012
  • Laatst online: 18-06 09:30

Amanush

Saai persoon.

Ik zou de poster aanraden om te beginnen met de programmeertaal C of C++, om het programmeren beter te begrijpen.
Uit ervaring kan ik jullie allen vertellen dat je met een taal als PHP en Python niet precies in de gaten hebt wat er gebeurd. Je staat namelijk te ver van de hardware en/of de kernel om dat te weten.

Als je C of C++ leert kan je dus andere programmeertalen die verder van de hardware afstaan (onder andere interpreted languages (ben de nederlandse benaming vergeten) en scripttalen) veel beter begrijpen

Ik kan het dus zeer aanraden om te beginnen met een taal als C of C++.

Ga tot de luiaard, gij mier! Zie haar wegen en wordt wijs.


  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Amanush schreef op maandag 10 februari 2014 @ 19:57:
Nee, ik heb net als diegene waarop ik quote geen echte onderbouwing..
Als je graag mijn onderbouwing wil horen kun je er ook gewoon om vragen in plaats van te gaan sneren. Aan jonge architecten leg ik dat met plezier uit.
[b][message=41752860,noline]Amanush schreef op maandag 10 februari 20eC++, om het programmeren beter te begrijpen.
Voor iemand die "is begonnen met de talen HTML en CSS" is het waarschijnlijk beter te beginnen met een taal die iets gebruiksvriendelijker is dan een taal die bij een access violation niet veel verder komt dan de melding "access violation". Java wordt veel gebruikt voor onderwijs omdat het je "dwingt" OO te programmeren, strongly typed is (maakt fouten lastiger te maken) en in een VM draait en mooie stacktraces geeft.

C en ASM zijn wat mij betreft een must voor serieuze developers om te leren hoe een CPU nou precies werkt, wat een for-loop nou echt werkelijk oplevert op een laag niveau. Maar dan wel op een moment dat hij de basisprinciepes goed onder de knie heeft, anders is het niks meer dan een "exercise in frustration".

[ Voor 61% gewijzigd door Hydra op 10-02-2014 20:42 ]

https://niels.nu


  • iThinkSo
  • Registratie: April 2011
  • Laatst online: 02-04 12:35

iThinkSo

Ik heb deze tekst en jij niet!

Merethil schreef op maandag 10 februari 2014 @ 20:02:
[...]

Alles bouwt verder op assembly en veel bouwt verder op C. Handig is dan om dat alles een beetje te kennen. Zie het als "Van binnenuit naar buiten toe werken en leren hoe alles in elkaar zit".
Dit vind ik altijd een beetje een apparte stelling, want wat is "binnen"? Assembly? Het ontwerp van je processor zelf? De quantumeffecten waarmee je processor werkt? De wiskunde hier weer achter?

  • Merethil
  • Registratie: December 2008
  • Laatst online: 02:13
iThinkSo schreef op maandag 10 februari 2014 @ 21:06:
[...]

Dit vind ik altijd een beetje een apparte stelling, want wat is "binnen"? Assembly? Het ontwerp van je processor zelf? De quantumeffecten waarmee je processor werkt? De wiskunde hier weer achter?
Ik bedoel het natuurlijk vanuit een development-perspectief. Zodra jij bezig bent met Assembly en daar één en ander van kent ben je natuurlijk ook al op weg een groot deel van een processor te kennen. Voorkennis van hoe een processor werkt is weer handig voor Assembly en zou dus ook nog van pas kunnen komen.
Vanuit daar verder bouwen lijkt mij een handige voor elke programmeur die écht wilt weten hoe alles werkt.

Mocht je geen zin hebben in die kennis en toch aan de slag willen kunnen is een basiskennis van Assembly en C (zoals ikzelf heb, ik ben zeker niet sterk in C en kan Assembly zo goed als alleen lezen, programmeren in Assembly vind ik geen hol aan) meer dan voldoende en kan je ook gewoon een higher-level language pakken.
Een gedegen kennis is niet per sé nodig, maar kennisgemaakt hebben met dit alles is naar mijn mening wel belangrijk voor kennis omtrent opbouw, werking en uiteindelijk nut van stukken code die je later nog veel gaat tegenkomen, of het nou een sprintf, inputstream of IDisposable object is. ( Om maar even wat random voorbeelden te noemen, hopelijk snap je m'n punt :+ :P )

  • rty
  • Registratie: November 2011
  • Niet online

rty

Een goede programmeer weet alles! Dus vanaf de basis. Processor ontwerpen, eventjes op een wafer maken. Instructies met opcode programmeren, je eigen instructies dan aansturen in assembly. Dan bouw je eventjes een OS en een C compiler waarna je eindigt in het high level taal C. Dit niet met allerlei nieuwerwetse fratsen maar gewoon met een magnetische naald en een vaste hand.

  • iThinkSo
  • Registratie: April 2011
  • Laatst online: 02-04 12:35

iThinkSo

Ik heb deze tekst en jij niet!

rty schreef op maandag 10 februari 2014 @ 21:14:
Een goede programmeer weet alles! Dus vanaf de basis. Processor ontwerpen, eventjes op een wafer maken. Instructies met opcode programmeren, je eigen instructies dan aansturen in assembly. Dan bouw je eventjes een OS en een C compiler waarna je eindigt in het high level taal C. Dit niet met allerlei nieuwerwetse fratsen maar gewoon met een magnetische naald en een vaste hand.
offtopic:
Niet compleet ongerelateerd: http://xkcd.com/378/ ;)

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

Verwijderd schreef op maandag 10 februari 2014 @ 17:28:
Hey mensen,

Ik ben nu al ruim een jaar bekend met de talen HTML en CSS, maar niet echt projecten gestart. Sinds een paar maanden ben ik bezig met het leren van PhP en JavaScript. Dit doe ik allemaal een beetje na school, schooldagen - weekenden - vakanties.

...
Super tof dat je dit wilt gaan leren natuurlijk. Maar wat wil je ermee gaan doen? Dat antwoord is belangrijk om jezelf in de juiste taal te gaan verdiepen. Python als voorloper voor C of Obj. C? Nee, doe maar niet. Doe dan maar Obj.C en pak C erbij wanneer het kan of moet. Als je apps wilt bouwen kan je naar Obj.C kijken. Wil je webapps bouwen kijk dan eens naar Python/Django. Wil je richting embedded, kijk dan eens naar C/ASM. Wil je gewoon een fijne basis hebben om snel andere talen te kunnen leren? Kijk dan eens naar Java/C#.
rty schreef op maandag 10 februari 2014 @ 21:14:
Een goede programmeer weet alles! Dus vanaf de basis. Processor ontwerpen, eventjes op een wafer maken. Instructies met opcode programmeren, je eigen instructies dan aansturen in assembly. Dan bouw je eventjes een OS en een C compiler waarna je eindigt in het high level taal C. Dit niet met allerlei nieuwerwetse fratsen maar gewoon met een magnetische naald en een vaste hand.
_/-\o_

[ Voor 21% gewijzigd door Oyster op 10-02-2014 21:34 ]


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Merethil schreef op maandag 10 februari 2014 @ 21:12:
[...]
Een gedegen kennis is niet per sé nodig, maar kennisgemaakt hebben met dit alles is naar mijn mening wel belangrijk voor kennis omtrent opbouw, werking en uiteindelijk nut van stukken code die je later nog veel gaat tegenkomen, of het nou een sprintf, inputstream of IDisposable object is. ( Om maar even wat random voorbeelden te noemen, hopelijk snap je m'n punt :+ :P )
Daar ben ik het dan toch weer niet mee eens, dat was nuttig en handig in de dos-periode. Maar sinds de NT-kernel heeft zo ongeveer alle assembly die je onder windows kan schrijven niets meer te maken met de processor etc. Dat wordt allemaal netjes afgevangen in windows en die checked / manipuleert het en zet het door.

Plus dat tegenwoordige assembly gewoon heel heel erg moeilijk is om goed te doen, 486 assembly dat is nog overzichtelijk, maar daarna krijg je allemaal extensions op de processoren etc die gewoon bijna niet meer bij te houden zijn.
En daarnaast kan het een heel fout idee geven (Ik kom nog steeds mensen tegen die zeggen dat een if-statement zo ongeveer het zwaarste statement is wat er is omdat het een hele cache vernietigd. En in theorie klopt dat helemaal, alleen bij higher-level talen kan je bijv zo een msgbox op je scherm gooien, denk je nu echt dat dat minder werk is dan 1 if-statement?)

  • Merethil
  • Registratie: December 2008
  • Laatst online: 02:13
Gomez12 schreef op maandag 10 februari 2014 @ 21:42:
[...]

Daar ben ik het dan toch weer niet mee eens, dat was nuttig en handig in de dos-periode. Maar sinds de NT-kernel heeft zo ongeveer alle assembly die je onder windows kan schrijven niets meer te maken met de processor etc. Dat wordt allemaal netjes afgevangen in windows en die checked / manipuleert het en zet het door.

Plus dat tegenwoordige assembly gewoon heel heel erg moeilijk is om goed te doen, 486 assembly dat is nog overzichtelijk, maar daarna krijg je allemaal extensions op de processoren etc die gewoon bijna niet meer bij te houden zijn.
En daarnaast kan het een heel fout idee geven (Ik kom nog steeds mensen tegen die zeggen dat een if-statement zo ongeveer het zwaarste statement is wat er is omdat het een hele cache vernietigd. En in theorie klopt dat helemaal, alleen bij higher-level talen kan je bijv zo een msgbox op je scherm gooien, denk je nu echt dat dat minder werk is dan 1 if-statement?)
Mijn enige echte ervaring met Assembly komt van het programmeren van een PIC 16F887, vandaar dat ik me niet echt bezig heb gehouden met hoe het in Windows gaat zodra je ermee aan de slag gaat. Ik geloof je daarom ook direct en heb daar verder niets tegenin te brengen.
De kennis van Assembly is echter niet per sé het programmeren in en werken met Assembly, maar meer het analyseren van wat elke statement doet en hoe dat ongeveer geïnterpreteerd moet worden ten opzichte van een CPU.

Ik vond mijn manier van het aangeleerd krijgen best een voordeel, kreeg een heel ander inzicht in wat er omgaat in een CPU dan ik van tevoren had toen ik nog als Tweakertje rondliep met slechts de kennis van "Dat is de beste CPU die je momenteel kan kopen voor gamen".
Assembly programmeren raad ik niemand meer écht aan, vooral vanwege de veelal makkelijkere alternatieven die nauwelijks zullen onderdoen voor Assembly op gebied van timing en snelheid, behalve als je dus een specifieke use-case hebt en die echt wilt uitwerken. Geef mij maar C of hoger :P

Verwijderd

Topicstarter
Allemaal bedankt!

Ik denk dat ik gewoon Objective-C ga leren en de basis van C.

Nu de vraag: "Welk boek zal ik kiezen?"

Goed duidelijk boek, Engels of Nederlands maakt mij niet uit, dat ook een goede uitleg geeft over C en daarna natuurlijk overgaat naar Objective-C.

Boek wat echt beide talen uitgebreid uitlegt zou het het beste zijn.

Bedankt!

  • ed800
  • Registratie: Februari 2009
  • Laatst online: 18-11 18:27
Learn C the hard way is een hele goede.
http://c.learncodethehardway.org/book/

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Verwijderd schreef op maandag 10 februari 2014 @ 22:22:
Allemaal bedankt!

Ik denk dat ik gewoon Objective-C ga leren en de basis van C.
Misschien moet je je eerst eens focussen op één taal. Je bent al met twee verschillende talen bezig en zegt nu even tussen neus en lippen door dat je er nog twee bij pakt. JS en PHP lijken in niks op elkaar, en ook C en Objective-C zijn aardig verschillend, zowel ten opzichte van elkaar als van die andere twee talen. Hoe ga je voorkomen dat je dingen door elkaar haalt? Een taal leren, er een paar weken iets mee doen en het daarna op de plank leggen terwijl je de volgende taal leert is een redelijk goeie manier om te leren hoe je alles door elkaar gooit in je hoofd.

Oyster zegt het hierboven al, maar ik wil dat graag bekrachtigen: kies een taal uit die je wil leren en doe er vervolgens uitgebreid wat mee in een praktijkcase. Of misschien meer dan één. Alleen zo kun je een taal echt leren. Wat je nu doet is enigszins te vergelijken met het leren van Japans door alle gangbare woorden uit het vocabulaire te leren en een paar kinderboekjes voor te leren, om er vervolgens een jaar later achter te komen dat je praat als een kleuter en je vocabulaire erg beperkt is. :)
Hydra schreef op maandag 10 februari 2014 @ 20:28:
[...]

Als je graag mijn onderbouwing wil horen kun je er ook gewoon om vragen in plaats van te gaan sneren. Aan jonge architecten leg ik dat met plezier uit.
Je bent normaal zo goed in uitdelen, incasseren gaat je blijkbaar duidelijk minder goed af zonder dat je persoonlijk wordt. ;) Je maakte een statement en Amanush wilde dat blijkbaar graag onderbouwd zien. Ik ben het direct met je eens dat het een programmeur helpt als hij zelf wat memory heeft moeten managen zoals dat subliem gaat in C, maar kwantificeer dat dan inderdaad even in een topic voor een beginnende programmeur. Anders is het inderdaad niet veel meer dan een ononderbouwd statement dat geen enkele waarde heeft omdat de TS niet kan inschatten of het een goed advies is of niet.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Hydra schreef op maandag 10 februari 2014 @ 20:28:
C en ASM zijn wat mij betreft een must voor serieuze developers om te leren hoe een CPU nou precies werkt, wat een for-loop nou echt werkelijk oplevert op een laag niveau. Maar dan wel op een moment dat hij de basisprinciepes goed onder de knie heeft, anders is het niks meer dan een "exercise in frustration".
Niet veel mensen weten hoe de CPU precies werkt :) Vroeger, toen Assembly nog niet zo'n sterk interpreted taal was als nu, was dat nog redelijk te doen. Tegenwoordig, waar "echte" intel cpu code draait op 19 stage instructie pipelines met multi-level caches, branch predictions en vectorization heb je vaak geen idee meer. Want vergis je niet, Assembly is ook uiteindelijk gewoon een soort van interpreted java bytecode; alleen heb je een hardware interpreter.

  • Down
  • Registratie: Februari 2005
  • Laatst online: 23:09
Ik denk dat kennis nemen van de concepten van lagere talen als C en ASM zeker van pas kan komen, maar ze echt moeten beheersen? Ik heb ooit de basis geleerd in C++ (dus met memory management) en daar heb ik zeker geen spijt van. Ik heb ook ooit een vak gehad (Computer Architecture) over CPU's, assembly, microcode etc. Hartstikke interessant en leerzaam.

Vandaag de dag werk ik uitsluitend in C#/.NET. Ik heb nog steeds profijt van voorgenoemde kennis, maar C of ASM beheersen doe ik al lang niet (meer).

Dat neemt natuurlijk niet weg dat C nog steeds erg leerzaam (en mijnsziens interessant) is om te leren. Maar een absolute MUST? Nee, dat geloof ik niet. Ik ken genoeg goeie developers die C of ASM nooit hebben aangeraakt.

Mother north, how can they sleep while their beds are burning?


  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Zoijar schreef op maandag 10 februari 2014 @ 22:52:
[...]

Niet veel mensen weten hoe de CPU precies werkt :) Vroeger, toen Assembly nog niet zo'n sterk interpreted taal was als nu, was dat nog redelijk te doen. Tegenwoordig, waar "echte" intel cpu code draait op 19 stage instructie pipelines met multi-level caches, branch predictions en vectorization heb je vaak geen idee meer. Want vergis je niet, Assembly is ook uiteindelijk gewoon een soort van interpreted java bytecode; alleen heb je een hardware interpreter.
Dat neemt niet weg dat het goed is om te begrijpen hoe een CPU (redelijk) precies werkt. Tuurlijk, met de hand je code binnen de L1 cache passen doet vrijwel niemand meer tegenwoordig, maar een issue is dat veel developers tegenwoordig geen idee hebben van wat efficient is en wat niet. Dit geldt voor sorteeralgorithmes, het doorzoeken van een collection, omgaan met databases maar ook met iets simpels als een loop. Een loop is niet iets waar een CPU 'ff' overheen blaast, de body van die loop is iets waar voor elke iteratie flink wat cycles gebruikt worden. Iedere developer heeft in de basis een gevoel voor 'cost' nodig.

Mja, helaas zullen hedendaagse studenten waarschijnlijk niet meer de lol van het cycles-tellen kennen en het op de microseconde voorspellen van de doorlooptijd van een stukje code, simpelweg omdat het met moderne cores niet meer te doen is.

</nostalgische ouwe lul>

https://niels.nu


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Tsja, ik ben ook van het tijdperk assembly schrijven, cycles tellen, en weten welke FPU instructies overlappen en welke stalls veroorzaken. Maar tegenwoordig is dat zo moeilijk; je kan best cycles tellen, maar dan zit je bv met een overlappende associative cacheline, of een branch die gemist wordt, of een van de vele complexe situaties, en dan heb je honderden cycles penatly. Sorteeralgoritmes optimizen is voornamelijk een geval van cache misses minimalizeren. Als je daar meer instructies voor gebruikt win je vaak alsnog. (calculate, don't store)

Niettemin is het wel heel handig. Ook ik heb er veel profijt van gehad tijdens mijn hele studie en daarna. Echter geldt dat alleen als je ook echt de hardcore cs kant op wilt; zoals de TS die zich vooralsnog voornamelijk met webdevelopment bezig lijkt te houden zijn python of C# prima talen. Vooral de laatste vanwege de type safety. C++ zou ook kunnen, maar is wel wat moeilijker.

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
Zoijar schreef op dinsdag 11 februari 2014 @ 08:17:
Niettemin is het wel heel handig. Ook ik heb er veel profijt van gehad tijdens mijn hele studie en daarna. Echter geldt dat alleen als je ook echt de hardcore cs kant op wilt; zoals de TS die zich vooralsnog voornamelijk met webdevelopment bezig lijkt te houden zijn python of C# prima talen. Vooral de laatste vanwege de type safety. C++ zou ook kunnen, maar is wel wat moeilijker.
Daar ben ik het verder mee eens hoor, ik gaf al aan dat ik bijvoorbeeld Java of C# veel geschiktere 'leertalen' vind voor de TS. De enige mening die ik niet deel is dat alleen mensen die de "hardcore CS" kant op gaan C en assembly zouden moeten bestuderen; het is voor iedere developer waardevolle kennis IMHO. Hetzelfde geldt voor functionele talen.

https://niels.nu


Verwijderd

Topicstarter
*Sorry dat her ergens hier al staat*

Ik ben nu van plan om echt C en Objective-C te leren. Ik wil graag hiervoor een boek kopen / lenen bij de bibliotheek, maar welk boek is dus echt een aanrader omdat er zoveel zijn.
Begin van C uitgelegd om makkelijker te switchen naar Objective-C. En is het handig om een boek te hebben die is geüpdatet naar iOS 7? Of maakt dat niet uit?

Ik denk dat ik het leren van websites een beetje achter mij laat, het is zeker interessant, maar ik heb het niet ergens nodig voor gehad, met apps maken voor bijvoorbeeld iOS lijkt mij toch wat leuker!

Edit:
Heb nu dit boek gevonden: iPhone Application Development in 24 hours 2nd Edition
Iemand ervaring mee?

[ Voor 30% gewijzigd door Verwijderd op 26-02-2014 17:14 ]


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Amanush:
In C / C++ kan je ze wel casten en daarna vergelijken.
Een cast van een string naar een int doet toch iets heel anders dan je misschien zou verwachten, hoor, in C ;) (naast waarschijnlijk een compiler waarschuwing, afhankelijk van de grootte van je int op je platform)


Ik zou zeggen dat als je Objective C wilt leren omdat je iPhone apps wilt maken, je gewoon lekker moet beginnen met Objective C en geen andere taal. Gewoon gaan doen, je komt er vanzelf wel achter wat de moeilijkheden zijn. Het belangrijkste is dat je jezelf een concreet doel stelt en dat probeert te realiseren. Je kunt je dus (m.i.) beter afvragen wat het doel dan precies zou moeten zijn en hoe realistisch dat is, dan dat je je afvraagt of je wel de beste taal aan het leren bent. Als je eenmaal een imperatieve en/of object-georienteerde taal onder de knie hebt is het leren van een volgende een stuk eenvoudiger.

Het enige wat goed helpt als je in C gaat programmeren is dat je heel goed na moet denken over hoe je met geheugen omgaat. Dat leer je in Python, PHP, Java, enz allemaal niet of op zijn minst een stuk minder goed, maar voor zover ik iets van Objective C weet is dat daarin ook aan de orde.

Boeken enz op dat gebied kan ik je niet mee helpen.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Nieknikey
  • Registratie: Juni 2010
  • Laatst online: 31-10 06:42
PHP en Javascript zijn beide niet-object geörienteerde talen, waar Objective-C, C# en Java dat wel zijn.

De opleiding waar ik op zit geeft in het eerste leerjaar alleen maar C#, en in het 2e 3e en 4e leerjaar Java. Waarom voor Java gekozen is weet ik niet, maar het eerste jaar C# is omdat het redelijk gebruiksvriendelijk is, eenvoudig om in te stappen en een positieve leercurve heeft.

Om hier mee te beginnen kun je bijvoorbeeld het boek "Head First C#" gebruiken, om de basisbeginselen ervan onder de knie te krijgen.

Overigens hebben C# en C weinig met elkaar gemeen. Als ik jou was zou ik eerst uitvogelen of je low-level of high-level wilt gaan programmeren, en als je richting web wilt gaan zou ik toch kiezen voor high-level (Java, C#, e.d.)

// Edit: oeps... tweede pagina niet gelezen. Wellicht is mijn reactie irrelevant.

[ Voor 5% gewijzigd door Nieknikey op 26-02-2014 19:10 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

drm schreef op woensdag 26 februari 2014 @ 18:44:
[...]

Het enige wat goed helpt als je in C gaat programmeren is dat je heel goed na moet denken over hoe je met geheugen omgaat. Dat leer je in Python, PHP, Java, enz allemaal niet of op zijn minst een stuk minder goed, maar voor zover ik iets van Objective C weet is dat daarin ook aan de orde.
Klopt inderdaad, al is er een manier om je project om te zetten naar iets dat wat meer weg heeft van modernere talen als Java en C# wat betreft geheugenmanagement. ARC noemen ze dat AFAIK. Je moet nog steeds je eigen objecten alloceren en initialiseren maar je hoeft ze minder strikt te releasen. Veel meer dan dat weet ik er echter ook niet van. :P

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Carbon
  • Registratie: Juni 2001
  • Laatst online: 21-11 11:53

Carbon

4800Wp + 5400Wp

NMe schreef op woensdag 26 februari 2014 @ 19:28:
[...]

Klopt inderdaad, al is er een manier om je project om te zetten naar iets dat wat meer weg heeft van modernere talen als Java en C# wat betreft geheugenmanagement. ARC noemen ze dat AFAIK. Je moet nog steeds je eigen objecten alloceren en initialiseren maar je hoeft ze minder strikt te releasen.
Minder strikt? Zeg maar gerust niet want de compiler genereert onder water de benodigde retain/release calls.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

In mijn (zeer beperkte) ervaring moet je in sommige gevallen nog steeds releasen.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • ZpAz
  • Registratie: September 2005
  • Laatst online: 00:48
NMe schreef op woensdag 26 februari 2014 @ 19:28:
[...]

Klopt inderdaad, al is er een manier om je project om te zetten naar iets dat wat meer weg heeft van modernere talen als Java en C# wat betreft geheugenmanagement. ARC noemen ze dat AFAIK. Je moet nog steeds je eigen objecten alloceren en initialiseren maar je hoeft ze minder strikt te releasen. Veel meer dan dat weet ik er echter ook niet van. :P
Waar je in Java

Java:
1
Array foo = new Array();


doet moet je inderdaad in objective-c

C:
1
NSArray *array = [NSArray alloc] init];


Maar je kan tegenwoordig ook

C:
1
NSArray *array = [NSArray new];


doen, wat onder water exact hetzelfde doet.

Daarnaast hoef je niet meer te releasen voor NSObjecten en subclasses.* Als je release aanroept krijg je een error. Dat wordt voor je geregeld. Je moet wel bijhouden bij de verwijzingen naar andere objecten (als properties, vergelijkbaar met instance variabelen in Java) of het een sterke verwijzing is of een zwakke. Zolang er sterke verwijzingen bestaan naar een object blijft hij bestaan. Zijn er of enkel zwakke verwijzingen of geen verwijzingen wordt hij verwijderd.

Dit wordt exact op dat moment gedaan, het is niet als GC wat om de zoveel tijd langs komt bij iedereen om te kijken wat weg kan.

*Enkel als je met spullen al CoreFoundation werkt moet je nog releasen. Maar dit spul is meestal wel gewrapped in een hoger framework.

Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF


  • Lethalis
  • Registratie: April 2002
  • Niet online
Als je wilt programmeren, kies dan een high level taal die breed toegepast wordt. Hierdoor kun je het geleerde in zoveel mogelijk situaties toepassen en is er meestal ook een grote community online om je te helpen.

Vergeet assembly, vergeet C en C++, en Python, maar ga meteen voor Java of C#. Daar heb je tegenwoordig veel meer aan en het is nog makkelijker te leren ook.

Objective C heb je alleen wat aan als je voor Apple programmeert, dus iOS of OS X.

Ask yourself if you are happy and then you cease to be.


  • ZpAz
  • Registratie: September 2005
  • Laatst online: 00:48
Lethalis schreef op donderdag 27 februari 2014 @ 19:18:
Als je wilt programmeren, kies dan een high level taal die breed toegepast wordt. Hierdoor kun je het geleerde in zoveel mogelijk situaties toepassen en is er meestal ook een grote community online om je te helpen.

Vergeet assembly, vergeet C en C++, en Python, maar ga meteen voor Java of C#. Daar heb je tegenwoordig veel meer aan en het is nog makkelijker te leren ook.

Objective C heb je alleen wat aan als je voor Apple programmeert, dus iOS of OS X.
C# heb je alleen wat aan als je voor Microsoft programmeert, dus Windows of Xbox. Nu heb je wel Mono, maar dat is niet echt serieus te nemen als ontwikkel platform. Het loopt constant achter (en dat is inherent aan het idee).

Voor mijn gevoel wil de TS graag iPhone / iPad / OSX applicaties maken, aangezien hij de hele tijd neigt naar Objective-C. Als dat je doel is, moet je gewoon daarmee beginnen. Als je éénmaal in één taal kan werken kan je zo over stappen naar andere talen, in de basis is de gedachtengang vrijwel allemaal gelijk.

Claude: "Domain patterns emerge from iteration, not generation." - Tweakers Time Machine Extension | Chrome : FF


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Sorry, wat? Dat zijn toch wel héél breed toegepaste talen. C en C++ worden nog steeds behoorlijk veel toegepast en ook Python is bijzonder populair. Een van deze talen leren als basis om later Objective-C te gaan leren is redelijk zinloos, maar een van deze talen leren omdat je graag wil leren programmeren is niet bepaald een slecht idee. Resources zat.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • DXaroth
  • Registratie: Maart 2011
  • Laatst online: 24-08 19:58
Lethalis schreef op donderdag 27 februari 2014 @ 19:18:
Vergeet assembly, vergeet C en C++, en Python, maar ga meteen voor Java of C#. Daar heb je tegenwoordig veel meer aan en het is nog makkelijker te leren ook.
Dat zijn grove aannames, enige reden waarom je 3 van de top 10 meest gebruikte talen zou wegcijferen als niet belangrijk?

Verwijderd

Ben zelf Objective-C aan het leren om te kijken of ios apps en evt. later Mac osx apps schrijven iets voor mij is.

Ik gebruik dit boek: http://www.amazon.com/gp/aw/d/0321967607

En de auteur hiervan geeft aan dat het handig kan zijn om C te kennen, maar dat dit absoluut niet nodig is om het boek te kunnen gebruiken.

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
DXaroth schreef op donderdag 27 februari 2014 @ 21:38:
Dat zijn grove aannames, enige reden waarom je 3 van de top 10 meest gebruikte talen zou wegcijferen als niet belangrijk?
Het gaat overduidelijk over een context van een persoon die wil beginnen met programmeren. Nergens zegt hij dat je nooit iets met die talen zou moeten doen. Lijkt me nogal duidelijk.

https://niels.nu


  • Lethalis
  • Registratie: April 2002
  • Niet online
Voor iedereen die het raar vindt dat ik C en Python wegcijfer, ga eens naar Monsterboard en zoek naar programmeur vacatures voor een goed salaris.

Verreweg het meeste is Java en C#.

Ik heb zelf in C en C++ geprogrammeerd, en begrijp dondersgoed dat het de basis van veel dingen is.. maar je hebt het tegenwoordig niet meer nodig om te kunnen programmeren. Alleen als je jezelf op specifieke dingen richt, zoals embedded development of game development.

Maar bij de meeste programmeerbaantjes in NL blijft het Java of C#. Of php, maar dat levert je meestal minder op qua voorwaarden.

Daarnaast vind ik een taal als Java veel handiger om mee te beginnen dan C. Ik ben ooit ook met PowerBASIC begonnen omdat C/C++ moeilijker was om mee te starten.

[ Voor 15% gewijzigd door Lethalis op 27-02-2014 21:57 ]

Ask yourself if you are happy and then you cease to be.


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Lethalis schreef op donderdag 27 februari 2014 @ 21:50:
Voor iedereen die het raar vindt dat ik C en Python wegcijfer, ga eens naar Monsterboard en zoek naar programmeur vacatures voor een goed salaris.
Dat heeft niks te maken met het argument dat je aandroeg, namelijk dat je in die talen het geleerde blijkbaar niet in alle situaties zou kunnen toepassen en dat er niet genoeg communities zouden zijn. Die twee argumenten zijn gewoon ronduit onzin.

Daarbij kun je je juist met uitgebreide kennis van minder vaak gebruikte talen onderscheiden. Java en C# zijn nu even flavour of the month (nouja, decennium) maar het is maar de vraag of dat over 10 jaar nog zo is en of er niet betere alternatieven zijn. Daar sta je dan, met geen enkele kennis van wat de garbage collector onder water doet of wat een pointer is.
Lethalis schreef op donderdag 27 februari 2014 @ 21:50:
Daarnaast vind ik een taal als Java veel handiger om mee te beginnen dan C. Ik ben ooit ook met PowerBASIC begonnen omdat C/C++ moeilijker was om mee te starten.
Java lijkt véél meer op C en C++ dan op BASIC...

[ Voor 15% gewijzigd door NMe op 27-02-2014 22:07 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Lethalis
  • Registratie: April 2002
  • Niet online
Alsof iemand die in Java of C# programmeert niet weet wat een pointer is of wat de GC doet :')

Dat is ook nogal een grote aanname.

En dat Java meer op C lijkt dan Basic snap ik ook wel.. dat was het punt niet. Basic is makkelijker te leren dan C, net zoals Java.

[ Voor 33% gewijzigd door Lethalis op 27-02-2014 22:11 ]

Ask yourself if you are happy and then you cease to be.


  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
NMe schreef op donderdag 27 februari 2014 @ 22:06:
[...]

Daarbij kun je je juist met uitgebreide kennis van minder vaak gebruikte talen onderscheiden.
Ja, die coldfusion kennis die ik afgelopen halfjaar opgedaan heb staat fantastisch op mn CV :')
Lethalis schreef op donderdag 27 februari 2014 @ 22:09:
Alsof iemand die in Java of C# programmeert niet weet wat een pointer is of wat de GC doet :')

Dat is ook nogal een grote aanname.
Nee, het is gewoon een stroman.

[ Voor 31% gewijzigd door Hydra op 27-02-2014 22:15 ]

https://niels.nu


  • Lethalis
  • Registratie: April 2002
  • Niet online
Ja mijn AutoLisp ervaring is ook zoiets :D

Echt erg onderscheidend lol.

[ Voor 27% gewijzigd door Lethalis op 27-02-2014 22:18 ]

Ask yourself if you are happy and then you cease to be.


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Lethalis schreef op donderdag 27 februari 2014 @ 22:09:
Alsof iemand die in Java of C# programmeert niet weet wat een pointer is of wat de GC doet :')
Vraag het voor de grap eens aan een paar mensen die alleen Java of C# kennen. Juist voor een beginner is het best fijn om een keer in aanraking te komen met een taal waar je je eigen geheugenmanagement moet doen.
En dat Java meer op C lijkt dan Basic snap ik ook wel.. dat was het punt niet. Basic is makkelijker te leren dan C, net zoals Java.
Java is echt niet makkelijker te leren dan C als je nog totaal geen programmeerachtergrond hebt. Het enige verschil is dat je in C meer fout kunt doen en alles dus staat en valt met een goeie leermethode.
Hydra schreef op donderdag 27 februari 2014 @ 22:13:
[...]

Ja, die coldfusion kennis die ik afgelopen halfjaar opgedaan heb staat fantastisch op mn CV :')
Nee, dát is geen stroman wil je zeggen? Er zijn nog steeds mensen die de hoofdprijs verdienen door met COBOL te werken. Er zijn ook genoeg vacatures voor.
Nee, het is gewoon een stroman.
Het is een persoonlijke ervaring. Ik wéét dat er stapels mensen van het HBO afkomen die totaal geen benul hebben van geheugenbeheer omdat ze nooit iets anders dan moderne talen hebben aangeraakt zonder daadwerkelijk te leren hoe de GC werkt of wat het verschil is tussen een pointer en een reference.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-11 15:12
Lethalis schreef op donderdag 27 februari 2014 @ 22:09:
En dat Java meer op C lijkt dan Basic snap ik ook wel.. dat was het punt niet. Basic is makkelijker te leren dan C, net zoals Java.
Iemand die moeite heeft met het leren van C is niet geschikt als programmeur.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Lethalis
  • Registratie: April 2002
  • Niet online
farlane schreef op vrijdag 28 februari 2014 @ 00:25:
[...]
Iemand die moeite heeft met het leren van C is niet geschikt als programmeur.
Kom op zeg, ik stik hier bijna in mijn ontbijt :D

Toen ik 10 jaar oud was (in 1991 ;) ), had ik moeite met het leren van C en C++, maar met PowerBASIC (en later Visual Basic) kon ik in vrij korte tijd leuke dingen maken. C en C++ leerde ik pas toen ik 18 jaar oud was en op die leeftijd had ik er geen enkel probleem meer mee. C# was daarna ook geen probleem meer.

Beginnen met programmeren (of gitaar spelen, of fietsen, of wat dan ook :P ) kan ueberhaupt moeilijk zijn. Dat zegt weinig over hoe goed je uiteindelijk wordt in iets.

[ Voor 4% gewijzigd door Lethalis op 28-02-2014 08:03 ]

Ask yourself if you are happy and then you cease to be.


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

farlane schreef op vrijdag 28 februari 2014 @ 00:25:
Iemand die moeite heeft met het leren van C is niet geschikt als programmeur.
Wat een onzin, C is voor veel mensen gewoon moeilijk. Dan is 80% van de universiteit niet geschikt. Get off your high horse :)

  • Lethalis
  • Registratie: April 2002
  • Niet online
NMe schreef op donderdag 27 februari 2014 @ 23:18:
[...]
Vraag het voor de grap eens aan een paar mensen die alleen Java of C# kennen. Juist voor een beginner is het best fijn om een keer in aanraking te komen met een taal waar je je eigen geheugenmanagement moet doen.
Ik zal niet ontkennen dat het goed is voor een programmeur om zich er een keer mee bezig te houden, maar voor een absolute beginner raad ik het persoonlijk niet aan.

Leer dan gewoon eerst eens ueberhaupt wat variabelen zijn, loops, objecten, etc. En als je dan met een taal als Java of C# al redelijk wat dingen kan maken kun je altijd nog kijken naar een wat meer low level taal zoals C en C++. Dat helpt jouw kennis te verdiepen, maar is niet aan te raden in het begin.

Als je leert fietsen begin je ook met zijwieltjes.
Java is echt niet makkelijker te leren dan C als je nog totaal geen programmeerachtergrond hebt. Het enige verschil is dat je in C meer fout kunt doen en alles dus staat en valt met een goeie leermethode.
Als je meer fout kunt doen, is het naar mijn mening ook moeilijker om te leren.

Als je net begint, wil je ook het gevoel hebben dat je iets bereikt. Dat gaat nou eenmaal sneller met een taal / API die meer voor jou regelt.
Het is een persoonlijke ervaring. Ik wéét dat er stapels mensen van het HBO afkomen die totaal geen benul hebben van geheugenbeheer omdat ze nooit iets anders dan moderne talen hebben aangeraakt zonder daadwerkelijk te leren hoe de GC werkt of wat het verschil is tussen een pointer en een reference.
Dat ligt niet aan de moderne talen, maar aan het feit dat een HBO Informatica tegenwoordig geen garantie meer is dat je kunt programmeren. Toen ik nog op de HTS zat, heb ik een jaar lang niets anders gedaan dan C en C++, besturingssystemen, etc. Overigens ook pas nadat ik eerst Pascal moest leren :P

Tegenwoordig proberen ze meteen een manager van je te maken die mooie presentaties kan geven, in groepjes samenwerkt en vooral een leuk portfolio heeft opgebouwd. Sowieso als je richting Bedrijfskundige Informatica gaat.

Overigens ligt dit ook vooral aan de hogeschool. De ene is wat technischer dan de andere. TH Rijswijk hoor je bijvoorbeeld veel positievere verhalen over dan de Hogeschool Rotterdam. Dus jouw ervaring kan ook aan de locatie gebonden zijn.

Ask yourself if you are happy and then you cease to be.


  • Lethalis
  • Registratie: April 2002
  • Niet online
Verwijderd schreef op maandag 10 februari 2014 @ 22:22:
Allemaal bedankt!

Ik denk dat ik gewoon Objective-C ga leren en de basis van C.

Nu de vraag: "Welk boek zal ik kiezen?"

Goed duidelijk boek, Engels of Nederlands maakt mij niet uit, dat ook een goede uitleg geeft over C en daarna natuurlijk overgaat naar Objective-C.

Boek wat echt beide talen uitgebreid uitlegt zou het het beste zijn.

Bedankt!
Hoi, omdat ik tot nu toe alleen maar in een discussie verzeild ben geraakt en jou nog niet geholpen heb met Objective C, zal ik ook wat relevante info posten voor als je deze taal wilt leren.

Een aantal jaar geleden moest ik het namelijk voor mijn werk leren en ben toen tot de aangename ontdekking gekomen dat je bijna alles online kunt vinden bij Apple:

https://developer.apple.c...duction/Introduction.html

https://developer.apple.c...duction/Introduction.html

https://developer.apple.c...duction/Introduction.html

https://developer.apple.c...duction/Introduction.html

En zo zijn er nog veel meer programming guides te vinden in de Developer Library van Apple. Als je goed kijkt, zie je rechts een knop "PDF" en dan kun je de hele programming guide als PDF downloaden en bijvoorbeeld op een ipad zetten. Super handig voor als je bezig bent en het er als een soort "boek" bij wilt pakken.

Succes ermee :) Ik heb al meerdere apps ontwikkeld voor mijn werk. Wat mij trouwens ook veel geholpen heeft, is filmpjes kijken op YouTube waar mensen uitleggen hoe je met xcode en de designer kan werken. De manier van werken heeft bij mij even geduurd voordat ik hem snapte, omdat je de views moet koppelen aan de controllers en dat doe je dus met drag en drop en de control toets ingedrukt houden. Dat was voor een oude "ik type graag code" rot als ik even wennen ;)

PS:
Ik heb trouwens basis dingen in het begin ook zelf vastgelegd met screen recordings. Bijvoorbeeld hoe je een nieuw project met een NavigationController maakt, hoe je TableViewController's gebruikt, een DataClass aanmaakt en vult, data in een TableView kan tonen, Autorotate kunt configureren, Swipe Gestures kunt aansturen, enzovoorts. Als je mij jouw e-mail adres via PM geeft, kan ik de hele santekraam wel via wetransfer toesturen.

C# en Java zijn de talen die ik uiteindelijk het prettigste vind om mee te werken, maar zeker niet het enige dat ik gedaan heb :P

[ Voor 44% gewijzigd door Lethalis op 28-02-2014 09:19 ]

Ask yourself if you are happy and then you cease to be.


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-11 15:12
Zoijar schreef op vrijdag 28 februari 2014 @ 08:02:
Wat een onzin, C is voor veel mensen gewoon moeilijk. Dan is 80% van de universiteit niet geschikt.
:D Pardon maar als je een (naar ik neem aan een IT gerelateerde ) universitaire opleiding doet en moeite hebt met het leren van C klopt er iets helegaar niet.
Get off your high horse :)
Ik weet niet waar je uit afleidt dat ik op een "high horse" denk te zitten, maar ik verzeker je dat dat geenszins het geval is.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-11 15:12
Lethalis schreef op vrijdag 28 februari 2014 @ 08:01:
[...]
Kom op zeg, ik stik hier bijna in mijn ontbijt :D
Doe voorzichtig.
Toen ik 10 jaar oud was (in 1991 ;) ), had ik moeite met het leren van C en C++, maar met PowerBASIC (en later Visual Basic) kon ik in vrij korte tijd leuke dingen maken. C en C++ leerde ik pas toen ik 18 jaar oud was en op die leeftijd had ik er geen enkel probleem meer mee. C# was daarna ook geen probleem meer.
Interessant, maar wat probeer je nu duidelijk te maken? Het enige dat ik hieruit opmaak is dat je 'pas' C hebt geleerd toen je uit de luiers was, maar het is wel gelukt.
Beginnen met programmeren (of gitaar spelen, of fietsen, of wat dan ook :P ) kan ueberhaupt moeilijk zijn. Dat zegt weinig over hoe goed je uiteindelijk wordt in iets.
Dat geldt net zo goed voor Python/BASIC whatever...

Seriously, waarom zegt iedereen dat C moeilijk is? Ik snap daar met recht niet zoveel van ...

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Lethalis
  • Registratie: April 2002
  • Niet online
farlane schreef op vrijdag 28 februari 2014 @ 15:22:
[...]
Interessant, maar wat probeer je nu duidelijk te maken? Het enige dat ik hieruit opmaak is dat je 'pas' C hebt geleerd toen je uit de luiers was, maar het is wel gelukt.
Dat Basic dus makkelijker te leren is dan C.
farlane schreef op vrijdag 28 februari 2014 @ 15:22:
[...]
Seriously, waarom zegt iedereen dat C moeilijk is? Ik snap daar met recht niet zoveel van ...
Misschien omdat wij het relatief bekijken en jij absoluut?

[ Voor 38% gewijzigd door Lethalis op 28-02-2014 15:37 ]

Ask yourself if you are happy and then you cease to be.


  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
NMe schreef op donderdag 27 februari 2014 @ 23:18:
Vraag het voor de grap eens aan een paar mensen die alleen Java of C# kennen. Juist voor een beginner is het best fijn om een keer in aanraking te komen met een taal waar je je eigen geheugenmanagement moet doen.
Je onderbouwt je argument dat "veel mensen kennen X niet" door het aan mensen te gaan vragen die niks van X weten? Selection-bias-much? :D
Java is echt niet makkelijker te leren dan C als je nog totaal geen programmeerachtergrond hebt. Het enige verschil is dat je in C meer fout kunt doen en alles dus staat en valt met een goeie leermethode.
Je zegt hier dat Java niet makkelijker is maar dat je in C wel meer fout kunt doen. Hookay.

C is moeilijker omdat het makkelijker is fouten te maken en die fouten over het algemeen iets harder afgestraft worden dan een nette stacktrace.

Als we jouw redenatie volgen is assembly eigenlijk nog makkelijker. Wat is er simpeler dan een paar register heen en weer pushen? :)
Nee, dát is geen stroman wil je zeggen?
Nee. Een stroman is argumenteren tegen een door jou verzonnen argument. Ik geef alleen een goed voorbeeld aan waarvoor jouw opmerking gewoon niet op gaat, dat is compleet wat anders. Er zijn genoeg programmeertalen waarin de hoeveelheid werk volkomen marginaal is. Daarnaast zit je vaak aan legacyspul te werken en kom je niet verder dan wat plakken met duc-tape om de bende overeind te houden.
Er zijn nog steeds mensen die de hoofdprijs verdienen door met COBOL te werken. Er zijn ook genoeg vacatures voor.
"Genoeg"? Wel 10 hele in die categorie, terwijl ik als ik op Java zoek zo'n 1400 hits krijg in die categorie. Het is maar wat je genoeg vindt. Daarnaast is de kans dat je in COBOL aan nieuwe software gaat werken ongeveer nul. Een ervaren Java dev heeft de vacatures voor 't uitzoeken.
Het is een persoonlijke ervaring. Ik wéét dat er stapels mensen van het HBO afkomen die totaal geen benul hebben van geheugenbeheer omdat ze nooit iets anders dan moderne talen hebben aangeraakt zonder daadwerkelijk te leren hoe de GC werkt of wat het verschil is tussen een pointer en een reference.
Bijzondere informatica opleiding dan als je niks verteld wordt over geheugenbeheer. Daarnaast ging dit over zelf-studie van iemand die een beetje wil hobby-en, niet over professionele developers.

https://niels.nu


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-11 15:12
Lethalis schreef op vrijdag 28 februari 2014 @ 15:26:
[...]
Dat Basic dus makkelijker te leren is dan C.
Dat kan zijn, maar dat maakt C niet automatisch moelijk toch? Bovendien doet de TS VWO, en dan ben je geen 10 jaar meer.
Misschien omdat wij het relatief bekijken en jij absoluut?
Ik neem aan reletief ten opzichte van taal X? Nogmaals, als X moeilijker is dan Y maakt dat X niet automatisch moeilijk ( voor iemand die redelijk inzicht heeft in de materie, er is wel ergens een ondergrens natuurlijk )

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Lethalis
  • Registratie: April 2002
  • Niet online
farlane schreef op vrijdag 28 februari 2014 @ 15:53:
[...]
Ik neem aan relatief ten opzichte van taal X? Nogmaals, als X moeilijker is dan Y maakt dat X niet automatisch moeilijk ( voor iemand die redelijk inzicht heeft in de materie, er is wel ergens een ondergrens natuurlijk )
Inzicht in de materie moet je doorgaans eerst verkrijgen.

Ask yourself if you are happy and then you cease to be.


  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
farlane schreef op vrijdag 28 februari 2014 @ 15:53:
Ik neem aan reletief ten opzichte van taal X? Nogmaals, als X moeilijker is dan Y maakt dat X niet automatisch moeilijk ( voor iemand die redelijk inzicht heeft in de materie, er is wel ergens een ondergrens natuurlijk )
Wat een non-discussie zeg. Voor beginners is C of C++ relatief moeilijk t.o.v. bijvoorbeeld Java of C#. Da's alles.

https://niels.nu


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 20-11 11:59

NMe

Quia Ego Sic Dico.

Hydra schreef op vrijdag 28 februari 2014 @ 15:32:
[...]

Je onderbouwt je argument dat "veel mensen kennen X niet" door het aan mensen te gaan vragen die niks van X weten? Selection-bias-much? :D
Jullie argument was dat mensen die alleen Java of C# kenden ook best weten hoe geheugenmanagement werkt. Ik stelde voor dat je eens een rondgang doet bij die exacte doelgroep. Dat is geen selection-bias, dat is een stelling in de praktijk brengen.
Je zegt hier dat Java niet makkelijker is maar dat je in C wel meer fout kunt doen. Hookay.

C is moeilijker omdat het makkelijker is fouten te maken en die fouten over het algemeen iets harder afgestraft worden dan een nette stacktrace.
En als je daar vanaf dag 1 mee te maken krijgt en je leermethode je goed uitlegt hoe je dan tóch kunt debuggen heb je daar vrijwel geen last van. Als je daarentegen een stacktrace gewend bent omdat je Java al kent en je dan met C aan de gang gaat en totaal cryptische meldingen krijgt sta je mooi even met je bek vol tanden.
"Genoeg"? Wel 10 hele in die categorie, terwijl ik als ik op Java zoek zo'n 1400 hits krijg in die categorie. Het is maar wat je genoeg vindt. Daarnaast is de kans dat je in COBOL aan nieuwe software gaat werken ongeveer nul. Een ervaren Java dev heeft de vacatures voor 't uitzoeken.
Je moet als java-developer ook concurreren met een boel anderen die ook met java werken waar er op het COBOL-vlak amper concurrentie is van vakgenoten. En ik zeg zeker niet dat je je moet richten op COBOL, ik gebruikte het alleen als voorbeeld van een taal die veel programmeurs in hun hoofd al afgeschreven hebben maar die in de praktijk vooral bij banken nog steeds gebruikt wordt. Als je bekwaam bent in een of andere nichetaal kun je vaak onderhand je eigen salaris verzinnen.
Bijzondere informatica opleiding dan als je niks verteld wordt over geheugenbeheer. Daarnaast ging dit over zelf-studie van iemand die een beetje wil hobby-en, niet over professionele developers.
Ook (juist) voor zelfstudie staat of valt alles met een goeie leermethode dus hetzelfde verhaal gaat op. Wat betreft die opleidingen: ik heb zelf tijdens mijn studie slechts heel beknopt kennisgemaakt met geheugenbeheer en als ik er zélf niks mee gedaan had buiten mijn studie om had ik er niks van gesnapt.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

farlane schreef op vrijdag 28 februari 2014 @ 15:16:
:D Pardon maar als je een (naar ik neem aan een IT gerelateerde ) universitaire opleiding doet en moeite hebt met het leren van C klopt er iets helegaar niet.
C wordt in het algemeen moeilijk gevonden door informatica studenten. Je hebt pointers; je hebt geheugen management; dat zijn beide dingen die men moeilijk vindt.

Zodra ze dit moeten maken voor een practicum is het paniek:
C:
1
2
3
4
5
typedef void (gc_scan_func_t) (void (***) ());
typedef gc_scan_func_t **gc_object_t;

extern gc_object_t    ***gc_ptr_adresses, ***gc_stack_top;
extern gc_scan_func_t *array_with_pointers, *array_without_pointers;


en ik zeg dat niet zo maar, maar na observatie tijdens 5 jaar studie en daarna 7 jaar feedback van professoren...

Net als dat ze iha calculus lastig vinden, of dat een wiskunde student iha topologie moeilijk vindt.

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

Iedere taal heeft eigenschappen waarvan specifieke kennis handig is. Talen simpelweg vergeten lijkt mij zeer onhandig. Uiteindelijk zetten ze allemaal een abstract denkbeeld om in concrete functionaliteit. Op de hoogte zijn van deze eigenschappen maakt je een betere programmeur in iedere taal.

C vs Java voor een beginnende programmeur? Doe maar Java. C belemmert een beginnend programmeur teveel met bits&pieces om een grondig abstract denkbeeld op te zetten. In C maak je speciale moeren en bouten om iets vast te maken. In Java leer je herkennen wanneer je überhaupt iets vast moet maken. Leuk dat je dingen vast kunt maken, maar om te beginnen is het handiger dat je weet wanneer je iets vast moet maken en hoe dat zou kunnen.

  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-11 15:12
Waarom is dat een non-discussie? Omdat het niet past in jouw straatje? C is niet moeilijk.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

farlane:
(...) C is niet moeilijk.
Dat hangt af van je publiek. Je kan net zo goed zeggen dat quantummechanica niet moeilijk is. Dat is waarschijnlijk zowel waar als onwaar tegelijk. Hangt er vanaf wie ernaar kijkt. ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...


  • begintmeta
  • Registratie: November 2001
  • Niet online

begintmeta

Moderator General Chat
Hydra schreef op maandag 10 februari 2014 @ 23:43:
...
Mja, helaas zullen hedendaagse studenten waarschijnlijk niet meer de lol van het cycles-tellen kennen en het op de microseconde voorspellen van de doorlooptijd van een stukje code, simpelweg omdat het met moderne cores niet meer te doen is.
...
Misschien ken men tegenwoordig wel weer andere lol.

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
farlane schreef op vrijdag 28 februari 2014 @ 22:13:
[...]

Waarom is dat een non-discussie? Omdat het niet past in jouw straatje? C is niet moeilijk.
Lekker selectief gequote ook he, kansloos :')

https://niels.nu


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 22-11 15:12
Hydra schreef op vrijdag 28 februari 2014 @ 16:06:
Wat een non-discussie zeg. Voor beginners is C of C++ relatief moeilijk t.o.v. bijvoorbeeld Java of C#. Da's alles.
Het was niet de bedoeling om selectief te quoten.

Ik ben benieuwd waarop deze wijsheid gebaseerd is? We krijgen bij ons bedrijf geregeld studenten die stages en afstudeeropdrachten doen, en vaak komen ze bij ons in aanraking met zowel C als C#. Mijn ervaring is dat ze in beide even slecht zijn, en dat ze C# helemaal niet makkelijker oppakken dan C. Het pointer verhaal is wel een ding, maar doordat C# dat weg probeert weg te moffelen komt men er daar veel later achter dat het verschil value/referencetype er echt wel toe doet.

Tevens, je bent het toch wel hoop ik met me eens dat een redelijk fatsoenlijke programmeur in staat moet zijn om een taal als C te leren en beheersen? Hoe ervaar jij dat, vind je zelf C ook moeilijk?

[edit]
C++ is trouwens een heel ander verhaal dan C.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

farlane schreef op zaterdag 01 maart 2014 @ 14:13:
Het pointer verhaal is wel een ding, maar doordat C# dat weg probeert weg te moffelen komt men er daar veel later achter dat het verschil value/referencetype er echt wel toe doet.
Een pointer is iets anders dan een reference trouwens. C kent bijvoorbeeld geen references maar wel pointers, en C# kent references maar in standard mode geen pointers. C# probeert pointers niet weg te moffelen; C# heeft een pass-by-value model als Java met reference toegevoegd. Een pointer wijst naar het object, een reference is het object. Zo zie je al de eerste mogelijkheden voor verwarring.

Als je iets eenmaal snapt is alles makkelijk... maar de handmatige geheugen management, pointer gedoe, bit magic, strong typing, forward declarations maken C wat betreft een imperatieve taal best lastig. Python is bijvoorbeeld veel simpeler om mee te beginnen.

Je zegt nu dat ze even slecht zijn in C en C#, maar dat is dus juist een argument dat C blijkbaar moeilijk is. Het feit dat C# ook moeilijk is doet daar weinig aan af.

[ Voor 23% gewijzigd door Zoijar op 01-03-2014 16:55 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Gents, houden we het nog een beetje vriendelijk tegen elkaar?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • BikkelZ
  • Registratie: Januari 2000
  • Laatst online: 21-02 08:50

BikkelZ

CMD+Z

Ik zou in C geen hele complexe dingen willen gaan bouwen maar het lijkt mij wel dat je er mee uit de voeten moet kunnen wat betreft datastructuren, algoritmes en pointers. Wellicht dat het leuk is om te kijken op Project Euler wat je allemaal kunt doen met simpele korte C programma's. Dus geen gezeur met GUI's en complexiteit puur korte problemen oplossen.

Objective-C en C zijn in principe het zelfde, daar waar er in Objective-C een soort SmallTalk achtige syntax laag over C heen geplakt zit maar je vooral door Cocoa achtige frameworks heel erg het gevoel krijgt in iets heel anders te zitten werken dan C. Maar in werkelijkheid is dat niet zo.

Python is een leuke taal, veel consistenter en korter dan PHP maar als je uiteindelijk bij Objective-C uit wilt komen dan heeft het niet zo veel zin. Beter ga je voor websites eens naar server-side JS kijken, groeiende markt en minder kans op legacy projecten.
Amanush schreef op maandag 10 februari 2014 @ 19:31:
[...]

Wat mij betreft moet elke developer op een Linux-gebaseerd systeem ontwikkelen.
Een echte man heeft een baard en gebruikt BSD.

[ Voor 12% gewijzigd door BikkelZ op 04-03-2014 02:40 ]

iOS developer


  • Lethalis
  • Registratie: April 2002
  • Niet online
BikkelZ schreef op dinsdag 04 maart 2014 @ 02:38:
Een echte man heeft een baard en gebruikt BSD.
Shit, ik heb alleen maar wat stoppels en een PfSense bak. Dat telt zeker niet? :D

Ask yourself if you are happy and then you cease to be.


  • Carbon
  • Registratie: Juni 2001
  • Laatst online: 21-11 11:53

Carbon

4800Wp + 5400Wp

NMe schreef op donderdag 27 februari 2014 @ 17:31:
In mijn (zeer beperkte) ervaring moet je in sommige gevallen nog steeds releasen.
Nope, het aanroepen van retain of release onder ARC resulteert in een compiler error.

  • Hydra
  • Registratie: September 2000
  • Laatst online: 06-10 13:59
farlane schreef op zaterdag 01 maart 2014 @ 14:13:
Het was niet de bedoeling om selectief te quoten.
Je haalde de nuance uit mijn reactie weg. Ik zeg dat voor beginners C t.o.v. Java relatief moeilijk is. Jouw quote haalt zowel "beginners" als "relatief" weg en komt dan met "C is niet moeilijk. Ja hallo!
Ik ben benieuwd waarop deze wijsheid gebaseerd is? We krijgen bij ons bedrijf geregeld studenten die stages en afstudeeropdrachten doen, en vaak komen ze bij ons in aanraking met zowel C als C#. Mijn ervaring is dat ze in beide even slecht zijn, en dat ze C# helemaal niet makkelijker oppakken dan C. Het pointer verhaal is wel een ding, maar doordat C# dat weg probeert weg te moffelen komt men er daar veel later achter dat het verschil value/referencetype er echt wel toe doet.
Pointer math is gewoon complex en niet te vergelijken met de simpele references van bijvoorbeeld C# en Java. Daarnaast zijn de bijbehorende frameworks ook makkelijker te gebruiken dan de 'standaard' C frameworks. Tenslotte heb je het voordeel dat je in een VM draait en over het algemeen duidelijker crashreports krijgt met duidelijke stacktraces. En tenslotte is het fijn dat je je niet druk hoeft te maken over geheugen (de)allocatie. Dat alles maakt Java en C# relatief makkelijker.
Tevens, je bent het toch wel hoop ik met me eens dat een redelijk fatsoenlijke programmeur in staat moet zijn om een taal als C te leren en beheersen? Hoe ervaar jij dat, vind je zelf C ook moeilijk?
Ik had het expliciet over beginners. Ik ben geen beginner. Ik ben alleen wel ervaren genoeg om te weten dat wat nu makkelijk lijkt voor mij vroeger ook erg lastig was. Ik weet ook nog goed dat toen we met C++ aan de gang gingen die crashdumps die je met C++ kreeg een stuk complexer waren. Heck, ik heb het voorelkaar gekregen om onder solaris een kernel panic te veroorzaken. Geen idee hoe me dat gelukt is.

Voor een meer ervaren programmeur is C oppikken niet erg moeilijk nee, ik heb zelf ook aardig wat in zowel C als C++ gedaan. Maar nogmaals; ik had het over beginners. Beginners zijn geen "fatsoenlijke programmeurs", ze beginnen bij nul.

https://niels.nu


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Hydra schreef op dinsdag 04 maart 2014 @ 16:57:
Heck, ik heb het voorelkaar gekregen om onder solaris een kernel panic te veroorzaken. Geen idee hoe me dat gelukt is.
Floppy mounten en op het eject knopje drukken :)

  • Lethalis
  • Registratie: April 2002
  • Niet online
Floppy? Whut? ;) :p

Ik erger mij al aan het feit dat sommige fabrikanten van randapparatuur (bijv printers) ervan uitgaan dat je nog zoiets antieks als een dvd drive hebt.

Heb op een gegeven moment maar een usb dvd drive gekocht.. je moet toch wat in een tijd van mini computers en ultrabooks.

Ik kan mij trouwens niet voorstellen dat Solaris zo crappy is. Ze maakten ooit eens reclame voor hun state of the art tracing api (in Solaris 10).. in welke versie was dat floppy probleem? :)

[ Voor 3% gewijzigd door Lethalis op 04-03-2014 22:24 ]

Ask yourself if you are happy and then you cease to be.


  • Zoijar
  • Registratie: September 2001
  • Niet online

Zoijar

Because he doesn't row...

Het 'save' icoontje :)
Ik kan mij trouwens niet voorstellen dat Solaris zo crappy is. Ze maakten ooit eens reclame voor hun state of the art tracing api (in Solaris 10).. in welke versie was dat floppy probleem? :)
Toen ik rond 1999 op de VUa rondliep; einde van de dag deden de helft van de workstations in de computerlokalen het niet meer. UltraSparcs met Solaris als ik me niet vergis. (grappig dat dit verhaal altijd weer boven komt; mijn enige herinnering van 5 jaar studie lol)

[ Voor 8% gewijzigd door Zoijar op 05-03-2014 08:38 ]


  • Lethalis
  • Registratie: April 2002
  • Niet online
Zoijar schreef op woensdag 05 maart 2014 @ 08:37:
[...]
Toen ik rond 1999 op de VUa rondliep; einde van de dag deden de helft van de workstations in de computerlokalen het niet meer. UltraSparcs met Solaris als ik me niet vergis. (grappig dat dit verhaal altijd weer boven komt; mijn enige herinnering van 5 jaar studie lol)
Aan de andere kant was 1999 ook een andere tijd. Toen ik nog met Windows NT 3.5 werkte, zag ik ook bijna elke dag een blue screen. NT 4.0 was eigenlijk het eerste systeem waar ik een hele week mee kon werken zonder issues.

Ask yourself if you are happy and then you cease to be.


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

En zullen we weer langzaamaan afbuigen naar 't onderwerp ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.

Pagina: 1