Ik wil leren programmeren

Pagina: 1 2 3 Laatste
Acties:

Acties:
  • 0 Henk 'm!

  • Tengri
  • Registratie: Mei 2009
  • Laatst online: 20-01-2021
Ik studeer Bedrijfseconomie en ik heb spijt dat ik geen ICT heb gekozen als studierichting. Nu wil ik mijzelf graag leren om te programmeren omdat ik gehoort heb dat het toegevoegde waarde heeft in het bedrijfsleven. Ik heb aantal vragen..

Welk traject zal ik volgen?
C++ een goede programming taal om mee te beginnen?
Welke richting moet ik op om vaardigheden te leren waar ik later ook later iets aan heb? (ik studeer bedrijfseconomie)
Aan de mensen die ICT hebben gestudeerd, welke vakken hebben jullie op school gehad?

Ik heb al aantal ebooks over C++ en Python maar ik heb ook een bibliotheekpas waar ik boeken kan lenen. Elk advies stel ik op prijs :)

[ Voor 6% gewijzigd door Tengri op 10-05-2013 17:59 ]


Acties:
  • 0 Henk 'm!

  • windwarrior
  • Registratie: Januari 2009
  • Laatst online: 12-07-2024

windwarrior

ʍıupʍɐɹɹıoɹ

C++ is een vrij "bare metal" taal, wil je C++ gebruiken moet je rekening houden met je geheugen dat je gebruikt. Dat kan soms best lastig zijn. In het bedrijfsleven wordt veel C# en Java gebruikt (en COBOL en .., maar dat is alleen in de bankenwereld en wil je niet aan beginnen). Python is tof, maar niet als eerste taal.

Zorg er in iedergeval voor dat je kennis opdoet van goede programmeer concepten, programmeer object georienteerd en zoek een lesmethode die daar op aansluit, eigenlijk maakt het dan niet meer uit welke (imperatieve) taal je kiest, want dan is switchen niet meer zo moeilijk. Programmeren gaat meer om de concepten dan om de code.

Acties:
  • 0 Henk 'm!

  • Tengri
  • Registratie: Mei 2009
  • Laatst online: 20-01-2021
Dus raad je aan om met C# of Java te beginnen? :)

Acties:
  • 0 Henk 'm!

  • Daos
  • Registratie: Oktober 2004
  • Niet online
C++ is een ramp met allemaal kleine details waar je op moet letten. Aan 1 boek heb je niet genoeg.

C# wordt veel gevraagd tegenwoordig. Ik heb zelf "Pro C# 2010 and the .NET 4 Platform" van Andrew Troelsen gelezen (er is al weer een nieuwere versie). Dit is een dikke pil die makkelijk leest en waar alles in staat.

"Beginning Database Design: From Novice to Professional" van Clare Churcher vond ik ook wel goed. Zowat elke business applicatie heeft wel een database nodig.


Ik heb tijdens mijn studie Elektrotechniek/Computer Engineering als talen Java, C en C++ gehad. Verder nog UML en discrete wiskunde.

Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Mocht je boeken zoeken, dan kan je ook eens rondneuzen in [Alg] Centraal boekentopic - part II.

Acties:
  • 0 Henk 'm!

  • Amanoo
  • Registratie: December 2007
  • Laatst online: 21-04 11:48

Amanoo

Cᴀᴛs ᴀʀᴇ ɴɪᴄᴇ.

YouTube: EDU
YouTube: EDU
En mocht je een andere taal willen leren of verder gaan op bepaalde specifieke aspecten van Java: YouTube: thenewboston
Persoonlijk vind ik dit erg nuttige tutorials. Ik denk dat ik zonder dit niet mijn programmeervakken op de UT zou hebben gehaald. Ik denk ook dat Java een van de makkelijkere talen is om mee te beginnen. Je kan er vrijwel alles mee, maar wat C++ heeft met alle details waar je op moet letten, dat heeft Java veel minder (of waarschijnlijk helemaal niet). C++ is niet verkeerd om te kennen (Java heeft ook zijn mindere aspecten die C++ weer niet kent) maar is mijn inziens wat moeilijker om te leren.

[ Voor 27% gewijzigd door Amanoo op 10-05-2013 18:34 ]


Acties:
  • 0 Henk 'm!

  • windwarrior
  • Registratie: Januari 2009
  • Laatst online: 12-07-2024

windwarrior

ʍıupʍɐɹɹıoɹ

Amanoo schreef op vrijdag 10 mei 2013 @ 18:31:
YouTube: EDU
YouTube: EDU
En mocht je een andere taal willen leren of verder gaan op bepaalde specifieke aspecten van Java: YouTube: thenewboston
Persoonlijk vind ik dit erg nuttige tutorials. Ik denk dat ik zonder dit niet mijn programmeervakken op de UT zou hebben gehaald. Ik denk ook dat Java een van de makkelijkere talen is om mee te beginnen. Je kan er vrijwel alles mee, maar wat C++ heeft met alle details waar je op moet letten, dat heeft Java veel minder (of waarschijnlijk helemaal niet). C++ is niet verkeerd om te kennen (Java heeft ook zijn mindere aspecten die C++ weer niet kent) maar is mijn inziens wat moeilijker om te leren.
TheNewBoston is heel erg gericht op _programmeren_ niet echt op software engineering, correct me if i'm wrong? Maar C# vs Java is wat mij betreft om het even, C# is wat fancier en nieuwer, maar Java heeft ook zijn fans, dat ligt puur aan personal preference. Switchen tussen de twee zou nauwelijks problemen moeten vormen.

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Welke antwoorden verwacht je precies die in zoeken naar 'leren programmeren' in Programming niet al voorbij gekomen zijn? :)

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


Acties:
  • 0 Henk 'm!

  • eL_Jay
  • Registratie: December 2010
  • Laatst online: 14-02-2023
Ik zit in een vergelijkbaar schuitje.
Ik ga binnenkort hiermee beginnen.
Een low-entry kennismaking met programmeren (zij noemen het Computer Science) in python (je maakt met een basic search-engine)
Erg fijn cursus-materiaal, mijn vriendin is er nu mee bezig en uit mijn omgeving hoor ik meer positieve geluiden.

[ Voor 6% gewijzigd door eL_Jay op 10-05-2013 18:57 ]


Acties:
  • 0 Henk 'm!

  • Bolletje
  • Registratie: Juni 2008
  • Laatst online: 06-05 08:33

Bolletje

Moderator Harde Waren
Mij ontgaat even helemaal waarom je nu wil gaan programmeren, in de ruimste zin van het woord. Enkel omdat je gehoord hebt dat het nuttig kan zijn?

Wil je er nu mee verder? In welk opzicht denk jij dat het waarde toevoegt? Wat wil je er mee gaan doen?

Acties:
  • 0 Henk 'm!

  • Tengri
  • Registratie: Mei 2009
  • Laatst online: 20-01-2021
Bolletje schreef op vrijdag 10 mei 2013 @ 19:02:
Mij ontgaat even helemaal waarom je nu wil gaan programmeren, in de ruimste zin van het woord. Enkel omdat je gehoord hebt dat het nuttig kan zijn?

Wil je er nu mee verder? In welk opzicht denk jij dat het waarde toevoegt? Wat wil je er mee gaan doen?
http://www.huffingtonpost...ant-job-sk_b_1696766.html

Plus, ik denk dat het heel goed op mijn CV zal staan als ik beetje kan programmeren. Ik weet alleen niet waar ik mijn focus moet leggen. Daarom heb ik dit topic gemaakt.

Acties:
  • 0 Henk 'm!

  • Tengri
  • Registratie: Mei 2009
  • Laatst online: 20-01-2021
eL_Jay schreef op vrijdag 10 mei 2013 @ 18:54:
Ik zit in een vergelijkbaar schuitje.
Ik ga binnenkort hiermee beginnen.
Een low-entry kennismaking met programmeren (zij noemen het Computer Science) in python (je maakt met een basic search-engine)
Erg fijn cursus-materiaal, mijn vriendin is er nu mee bezig en uit mijn omgeving hoor ik meer positieve geluiden.
Is udacity gratis? Ik denk dat ik met Python of met Java ga beginnen.

Ik heb voorkeur voor Java omdat iemand boven zei dat ze dat gebruiken in bankieren en met databases maken.

Acties:
  • 0 Henk 'm!

  • sgt frankieboy
  • Registratie: Oktober 2012
  • Laatst online: 01-05 23:28
erofact schreef op vrijdag 10 mei 2013 @ 19:10:
[...]

Is udacity gratis? Ik denk dat ik met Python of met Java ga beginnen.

Ik denk dat ik voorkeur voor Java heb omdat iemand boven zei dat ze dat gebruiken in Bankieren en Database maken.
Udacity is gratis. Gebruik het zelf ook.

Acties:
  • 0 Henk 'm!

  • Tengri
  • Registratie: Mei 2009
  • Laatst online: 20-01-2021
sgt frankieboy schreef op vrijdag 10 mei 2013 @ 19:12:
[...]


Udacity is gratis. Gebruik het zelf ook.
Ok, bedankt :) hoe heb je die site ontdekt?

Acties:
  • 0 Henk 'm!

  • Daos
  • Registratie: Oktober 2004
  • Niet online
erofact schreef op vrijdag 10 mei 2013 @ 19:10:
[...]
Ik denk dat ik voorkeur voor Java heb omdat iemand boven zei dat ze dat gebruiken in Bankieren en Database maken.
Waarom begin je dan niet met de databases?

"Beginning Database Design: From Novice to Professional" van Clare Churcher bevat deze onderwerpen:

Table of Contents
  1. What Can Go Wrong?
  2. Guided Tour of the Development Process
  3. Initial Requirements and Use Cases
  4. Learning from the Data Model
  5. Developing a Data Model
  6. Generalization and Specialization
  7. From Data Model to Relational Schema
  8. Normalization
  9. More on Keys and Constraints
  10. Queries
  11. User Interface
  12. Other Implementations
Hier te koop:
http://www.bol.com/nl/p/b...-design/9200000000772864/
http://comcol.nl/beginning-database-design-1.html
http://www.amazon.com/gp/product/1430242094/

[ Voor 10% gewijzigd door Daos op 10-05-2013 19:28 ]


Acties:
  • 0 Henk 'm!

  • Takkie
  • Registratie: December 2003
  • Laatst online: 23-04 21:50
Onlangs een begin gemaakt aan Java met http://www.codecademy.com/. Ze hebben er verschillende talen die je kan leren.
Even een gratis accountje aanmaken en de basis dingen krijg je zo geleerd en je vorderingen worden netjes bijgehouden. Niet te veel spieken met de hints die je kan opvragen ;)


Sorry, vergis me in JavaScript. Kan de link voor Java niet vinden.

[ Voor 11% gewijzigd door Takkie op 10-05-2013 19:46 ]


Acties:
  • 0 Henk 'm!

  • ValHallASW
  • Registratie: Februari 2003
  • Niet online
Dan is de hoofdvraag: wil je bij een bedrijf gaan werken of wil je een bedrijf gaan draaien dat iets met het internet doet?

In het eerste geval heb je er waarschijnlijk het meeste aan om de tools die je veel zult gebruiken (office) efficient te kunnen gebruiken. Dus: zorgen dat je de kneepjes van Excel kent: pivot tables, maar ook alle vlookup-achtige tools. Wat je daarmee niet kunt doen kan je met VBA aanvullen.

[/knuppel in hoenderhok]

Het grote nadeel van VBA is, tsja, dat het VBA is. Je kunt er niet netjes in programmeren, je hebt er geen bijzonder goede IDE voor en als het stuk gaat dan is het altijd gissen wat er stuk gaat. Daar staat tegenover dat er waar je later gaat werken waarschijnlijk al veel gebruik van wordt gemaakt. Als je dan bugs kunt opsporen heb je al snel een stapje voor op je concurrentie.

Wil je zelf een bedrijf oprichten dat zich op het internet richt, zie dan alle posts hierboven: het maakt dan niet zo heel veel uit waar je mee begint, omdat je met vrijwel alle talen kunt bereiken wat je wilt: zowel met C# als Java als Python kan je je next-gen business app (oid) ontwikkelen.

Acties:
  • 0 Henk 'm!

  • BeefHazard
  • Registratie: Augustus 2010
  • Laatst online: 20:08
takkie.com schreef op vrijdag 10 mei 2013 @ 19:16:
Onlangs een begin gemaakt aan Java met http://www.codecademy.com/. Ze hebben er verschillende talen die je kan leren.
Even een gratis accountje aanmaken en de basis dingen krijg je zo geleerd en je vorderingen worden netjes bijgehouden. Niet te veel spieken met de hints die je kan opvragen ;)


Sorry, vergis me in JavaScript. Kan de link voor Java niet vinden.
Blijft een ontzettend goede website om te leren coden. HTML + CSS + Jquery is een leuke basis om te hebben.

R6 | 24-70 F2.8 DG OS HSM Art | 18-35 F1.8 DC HSM Art | EF 70-200 F4L IS USM | EF 50mm f/1.8 | Zenbook 14 OLED | T14G4 OLED


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Maybe, maar frontend webdevelopment is een vak apart en Javascript is alsprototyped taal niet mijn eerste keus als aanrader voor iemand die nog niet kan programmeren. :)

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


Acties:
  • 0 Henk 'm!

  • Compizfox
  • Registratie: Januari 2009
  • Laatst online: 19:14

Compizfox

Bait for wenchmarks

C++ is dat misschien niet de makkelijkste taal om mee te beginnen, maar ik denk wel dat het je de dingen meteen goed aanleert.

Dus beter dat je met C++ begint dan met VB.NET of PHP of zo.

Gewoon een heel grote verzameling snoertjes


Acties:
  • 0 Henk 'm!

  • Ircghost
  • Registratie: Februari 2010
  • Laatst online: 07-05 12:16

Ircghost

Honeybadger doesn't care!

Ik ben ook begonnen met C++ (als je html niet meerekent :P)

[ Voor 5% gewijzigd door Ircghost op 11-05-2013 13:12 ]


Acties:
  • 0 Henk 'm!

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 22:58

Onbekend

...

De basis van het programmeren gaat het niet direct om het kloppen van code, maar leren logisch na te denken.

Ik raad C# of php aan om de basis te leren. Php is weliswaar geen geweldige taal, maar het internet staat vol met voorbeelden hoe het wel/niet moet, en het is gratis en gemakkelijk te gebruiken.

Speel ook Balls Connect en Repeat


Acties:
  • 0 Henk 'm!

  • Rannasha
  • Registratie: Januari 2002
  • Laatst online: 17:47

Rannasha

Does not compute.

Onbekend schreef op zaterdag 11 mei 2013 @ 13:14:
De basis van het programmeren gaat het niet direct om het kloppen van code, maar leren logisch na te denken.

Ik raad C# of php aan om de basis te leren. Php is weliswaar geen geweldige taal, maar het internet staat vol met voorbeelden hoe het wel/niet moet, en het is gratis en gemakkelijk te gebruiken.
Ik zou PHP niet aanraden als begintaal. Ik zou eerder beginnen met een strongly typed taal. PHP is wat dat betreft iets te makkelijk, waardoor je jezelf mogelijk de verkeerde dingen aan leert.

|| Vierkant voor Wiskunde ||


Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

Ik zou C# of java nemen. C++ is het beste begin als je voltijd informatica studeert en tijd hebt om alle technische details te leren, maar dat is gewoon te veel gedoe om op eigen houtje te doen. Java en C# zijn m.i. vrij nette en duidelijke talen waarin je relatief weinig onduidelijkheid tegenkomt.

Maar ja, hangt natuurlijk af wat je ermee doet. Met C# zet je geen website-frontend in elkaar. Voor algemene programmeerkennis lijkt me dat prima. Nette taal, en object-georiënteerd is nooit mis.

[ Voor 11% gewijzigd door bwerg op 11-05-2013 13:25 ]

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • 0 Henk 'm!

  • Solopher
  • Registratie: December 2002
  • Laatst online: 22-04 11:36
Ik zou zelf ook niet starten met C++ of PHP maar met Java. Als ik me niet vergis leren ze studenten op de meeste hogescholen en universiteiten ook Java. Als je het een beetje onder de knie krijgt kun je misschien een minor gaan doen die iets met Java te maken heeft zodat je dat erbij kunt leren.

Acties:
  • 0 Henk 'm!

  • mrfu
  • Registratie: Februari 2006
  • Niet online

mrfu

Quis custodiet ipsos custodes?

Ik zou toch voor C# gaan. Het is een breed framework (.NET), er zijn erg veel mensen die je erbij kunnen helpen (online) en er zijn heel veel voorbeelden voor te vinden. Bovendien als je een beetje rondneust tussen de vacatures vandaag de dag zul je erg veel vraag zien naar mensen die C# gebruiken.

Visual Studio Express is gratis te downloaden en de gemiddelde PC heeft .NET geïnstalleerd.

Overigens is Java absoluut geen foute keuze, maar ik zou wel aanraden om te beginnen met C# of Java en geen andere taal omdat je anders teveel micromanagement aan het doen bent.

C# is een heerlijke programmeertaal waarbij programmeer efficiëntie belangrijk is. Dus geen C/C++ registerwaarden programmeren, maar gewoon lekker de grote lijnen van een applicatie neerzetten.
Pas wanneer je meer ervaren bent en/of meer performance nodig hebt kun je verder kijken naar beter passende programmeertalen.

Correct me if I'm wrong.

Acties:
  • 0 Henk 'm!

  • johnkeates
  • Registratie: Februari 2008
  • Laatst online: 09-02 16:04
Ik zou eerst beginnen met een kleine introductie informatica, zodat je in elk geval weet wat voor onderdelen er zijn, en dat je toch eerst wel bekend bent met:

- Software Engineering
- Software Architectuur
- Modelling
- Software Lifecycle

En dan bedoel ik niet dat je inhoudelijk weet wat wat is, maar dat je uberhaupt weet waar het voor staat.
Zomaar lukraak wat code inkloppen en hopen dat het ongeveer doet wat je bedacht had is leuk, maar het heeft niks te maken met real world programmeren.

Ik denk dat je eerste zorg moet zijn dat je een doel gaat vinden. Wat wil je bereiken, wat wil je kunnen.
Wil je websites maken? Wil je client applicaties maken? GUI? CLI? Of eerder server applicaties?
Dan kan je in elk geval een beetje richten.

Daarnaast moet je je beseffen dat de kans heel erg klein is dat je binnen 2 jaar op een niveau bent waar je er praktisch iets aan hebt. Je kan zelfs met een jaar fulltime 'programmeren' nog lang niet op een commercieel of professioneel niveau mee in de informatica wereld, zelfs met 2 jaar is het krap.

Dit is niet om je te ontmoedigen, maar 'leren programmeren' is net zo iets als 'leren schrijven'. Alleen maar om dat je de juiste letters in de juiste volgorde op een scherm kan zetten, kan je nog niet een boek schrijven. Het is trouwens ook zo dat een 'taal' leren ook slechts een klein onderdeel van het programmeren is. Afhankelijk van het soort taal heb je meestal dat je binnen een categorie talen gewoon alles vanzelf wel kan. Als je goed bent met object georienteerde talen, dan kan je met vrij weinig moeite gewoon tussen Java, C#, Python enz. switchen. Stel dat je goed bent met C++, dan is het ook niet heel moeilijk om naar Obj-C te switchen. Dat geldt zelfs voor dingen als VBA en AppleScript, kan je ook vrij makkelijk uitwisselen.

Voor dat je 'iets' kan gaan programmeren moet dat eerst ontworpen en gepland worden, er moet documentatie van wat en waarom gemaakt worden, en achteraf ook nog eens documentatie voor gebruikers. Dus zomaar even wat maken betekent dat je ook zomaar even die administratie moet maken ;) En daarna ben je zomaar verantwoordelijk voor dat alles, en moet je eventuele toekomstige issues ook afhandelen.. enz enz.

Maar! Stel dat je serieus wil leren hoe je software maakt (en dat is een veel accuratere omschrijving dan 'leren programmeren'), dan kan je natuurlijk prima 'gewoon beginnen'. Hoewel ik Windows-mensen normaal C# aan zou raden denk ik dat het in jouw geval veel handiger is om met Java te beginnen. Alles om met Java te starten is gratis. De runtime/vm, de IDE, compilers enz. Het is ook nog eens open, dus als je iets moet opzoeken, dan is er altijd wat te vinden. Geen logins nodig om op geheime sites specificaties op te zoeken. Geen dure software nodig en geen gekraakte software.

Wat je dan kan doen is een klein boekje nemen, zoals: "Java de basis", 9789043016544
en daar gewoon lekker doorheen werken. Je wordt door het hele proces van het opzetten van je IDE tot aan het beginnen met een projectopzet geleid, daarna kan je aan het eind van het boek er van uit gaan dat je weet hoe je API documentatie opzoekt en leest, met GUI's en graphics kan werken, en een minimale basis van object georienteerd programmeren hebt. Stel dat dit boek te moeilijk is, dan kan je beter een opleiding volgen die het wat breeder uitlegt, want makkelijker dan dat wordt het niet.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 22:50

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

johnkeates schreef op zaterdag 11 mei 2013 @ 13:42:

Maar! Stel dat je serieus wil leren hoe je software maakt (en dat is een veel accuratere omschrijving dan 'leren programmeren'), dan kan je natuurlijk prima 'gewoon beginnen'. Hoewel ik Windows-mensen normaal C# aan zou raden denk ik dat het in jouw geval veel handiger is om met Java te beginnen. Alles om met Java te starten is gratis. De runtime/vm, de IDE, compilers enz. Het is ook nog eens open, dus als je iets moet opzoeken, dan is er altijd wat te vinden. Geen logins nodig om op geheime sites specificaties op te zoeken. Geen dure software nodig en geen gekraakte software.
Dat kan voor .Net (C#, VB.Net, F#, C++ e.d.) ook prima. Wel eens gehoord van Visual Studio Express? Gratis en voor niks. Ook MSDN is prima te raadplegen zonder login (plus dat het, IMHO, veruit de beste (en consistente) documentatie bevat).

[ Voor 7% gewijzigd door RobIII op 11-05-2013 13:54 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 22:58

Onbekend

...

Rannasha schreef op zaterdag 11 mei 2013 @ 13:20:
[...]

Ik zou PHP niet aanraden als begintaal. Ik zou eerder beginnen met een strongly typed taal. PHP is wat dat betreft iets te makkelijk, waardoor je jezelf mogelijk de verkeerde dingen aan leert.
Ik ben het er mee eens dat php geen ideale taal is over types en conversies e.d.
Maar om de logica achter het programmeren te begrijpen (do/while/for-loops, if-else) en maken van functies is vrijwel elke programmeertaal voldoende.

Maar als Visual Studio (Express) echt gratis is, dan gaat daar eerder mijn voorkeur naar toe. :)

[ Voor 3% gewijzigd door Onbekend op 11-05-2013 13:54 ]

Speel ook Balls Connect en Repeat


Acties:
  • 0 Henk 'm!

Anoniem: 303530

Mij voorkeur zou uitgaan naar welke taal dan ook welke cross platform is. Dus:

python
C/C++
java
webbased

Je kan ook prima in C++ developpen met gratis tools. Bij mijn stagebedrijf werkt het gros met Qt creator (en msvc compiler).

Acties:
  • 0 Henk 'm!

  • codex
  • Registratie: Januari 2005
  • Laatst online: 07-05 14:34
Ik heb dezelfde keuze gemaakt als jij. Ik heb een commerciele achtergrond maar wilde dolgraag leren programmeren voor Android(Java). 2012 startte ik zonder werkgever, mijn baas moest noodgedwongen 6 van de 9 werknemers ontslaan. Sinds die tijd heb ik veel tijd gestoken in mezelf Java aanleren, daar was ik al een paar uurtjes per week mee bezig voordien, en ben nu een heel eind gekomen. Als beginner is het vrij lastig om aan goed studiemateriaal te komen, gezien heel veel boeken gericht zijn op lezers met een basiskennis van programmeren(C, C++) en je dus makkelijk kan vastlopen.

Waar ik uiteindelijk voor Java het meest aan heb gehad zijn de tutorials van TheNewBoston en deze boeken:
Thinking in Java
Head First Java

Daarnaast zijn de tutorials van Oracle ook wel handig.

Je moet er vanuit gaan dat je wel een tijd bezig bent voor je het een beetje onder de knie krijgt. Sowieso moet je jezelf niet blindstaren op de theorie maar ook zelf aan de slag gaan. Probeer zelf iets te programmeren, loop je vast kijk dan bijvoorbeeld rond op StackOverflow. Daar steek je ook het 1 en ander van op.

Ikzelf ga nog een jaar Software Development studeren, meer om mijn theoretische kennis te versterken.

Acties:
  • 0 Henk 'm!

  • ElCondor
  • Registratie: Juni 2001
  • Laatst online: 22:46

ElCondor

Geluk is Onmisbaar

Head First zijn fijne boeken, goede basis. Welke ik ook altijd wel goed vind van Apress zijn de Illustrated series voor C#, .NET etc. Zeker als je wat meer visueel ingesteld bent en graag voorbeelden erbij hebt.
Deze boeken staan vol met praktische voorbeelden.

Ik ben zelf begonnen met C# en ben er erg enthousiast over.

Hay 365 dias en un año y 366 occasiones para festejar (Boliviaans spreekwoord)


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Anoniem: 303530 schreef op zaterdag 11 mei 2013 @ 14:21:
Mij voorkeur zou uitgaan naar welke taal dan ook welke cross platform is. Dus:

python
C/C++
java
webbased

Je kan ook prima in C++ developpen met gratis tools. Bij mijn stagebedrijf werkt het gros met Qt creator (en msvc compiler).
Ik ken geen enkele grote taal die platformafhankelijk os. Zelfs C# is door Mono op Linux te draaien. Beetje een non-argument dus, zoals eigenlijk elke reden voor welke taal dan ook een arbitraire reden is, inclusief mijn argument tegen javascript hierboven. Programmeren leer je sowieso ongeacht welke taal je kiest.

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


Acties:
  • 0 Henk 'm!

  • Puch-Maxi
  • Registratie: December 2003
  • Laatst online: 00:11
Ik beschouw mezelf niet als een programmeur, heb in het verleden wel wat met HTML/CSS/PHP/MySQL gedaan. Maar ik heb nooit echt "goed" leren programmeren (volgens de regeltjes, zoals het zou moeten). Heb altijd het gevoel gehad dat ik maar wat aanklooide.

Tijdens mijn huidige studie heb ik kennis gemaakt met Python. Heb het in totaal drie vakken lang gevolgd (15 EC) het begon natuurlijk heel basic, maar dat vond ik juist wel prettig omdat ik de basis nooit goed had geleerd. Het boek dat we gebruiken is Python Programming: An Introduction to Computer Science (door John Zelle).

Heb nu naar jarenlang aanmodderen eindelijk het gevoel dat ik tenminste een beetje kan programmeren :). Hoewel Python eigenlijk geen objectgeoriënteerde programmeertaal is kun je met Python prima OO-programmeren.

My favorite programming language is solder.


Acties:
  • 0 Henk 'm!

  • Daos
  • Registratie: Oktober 2004
  • Niet online
Ik ben ooit zelf begonnen in QuickBasic.

Tegenwoordig is er Small Basic met een mooie tutorial van 70 pagina's.

Acties:
  • 0 Henk 'm!

  • Compizfox
  • Registratie: Januari 2009
  • Laatst online: 19:14

Compizfox

Bait for wenchmarks

[quote]NMe schreef op zondag 12 mei 2013 @ 17:42:
[...]

Ik ken geen enkele grote taal die platformafhankelijk os. [/quote]Je bedoelt "Ik ken geen enkele grote taal die niet platformafhankelijk is." neem ik aan?
Zelfs C# is door Mono op Linux te draaien. Beetje een non-argument dus, zoals eigenlijk elke reden voor welke taal dan ook een arbitraire reden is, inclusief mijn argument tegen javascript hierboven. Programmeren leer je sowieso ongeacht welke taal je kiest.
Da's niet native.

C++ met Qt is écht platformonafhankelijk en native, op alle platformen. Als je een Qt-applicatie onder KDE draait, ziet het eruit zoals je hele KDE-desktop eruit ziet (dat is ook logisch, want KDE is praktisch Qt). Maar als je een Qt-applicatie onder Windows draait, ziet het er ook uit als een native Windows-applicatie en niet als een KDE-applicatie.

Met frameworks zoals GTK+ of Swing is dat wel anders.

Ook als je een .NET-applicatie dmv Mono onder Linux draait, ziet het er niet native uit.
Maar los van de GUI is Mono ook een reserve-engineered oplossing.

[ Voor 3% gewijzigd door Compizfox op 12-05-2013 20:32 ]

Gewoon een heel grote verzameling snoertjes


Acties:
  • 0 Henk 'm!

90710

bwerg schreef op zaterdag 11 mei 2013 @ 13:21:
Maar ja, hangt natuurlijk af wat je ermee doet. Met C# zet je geen website-frontend in elkaar. Voor algemene programmeerkennis lijkt me dat prima. Nette taal, en object-georiënteerd is nooit mis.
Ooit van ASP.Net gehoord? Daar kan je hele nette web front en backends mee inelkaar draaien ;) En dat is gewoon .NET dus C#, VB, etc.

Zelf ben ik programmeur met kennis van C#, VB (zowel ASP.NET als "gewoon" .NET), C++, Objective C, PHP, Java.. (En natuurlijk ook HTML, CSS en JS)

[ Voor 15% gewijzigd door 90710 op 12-05-2013 19:50 ]


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Compizfox schreef op zondag 12 mei 2013 @ 18:58:
[...]
Je bedoelt "Ik ken geen enkele grote taal die niet platformafhankelijk is." neem ik aan?
Nee, ik bedoel wat ik zeg. Er is geen enkele grote taal die gebonden is aan een bepaald platform. Natuurlijk moet je wel vaak compileren voor een bepaald systeem, maar er is niets wat mij tegenhoudt om C# te gebruiken op Linux in combinatie met Mono. Zo zijn er voor alle "proprietary" talen wel wat oplossingen.

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


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 22:50

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

90710 schreef op zondag 12 mei 2013 @ 19:35:
[...]

Ooit van ASP.Net gehoord? Daar kan je hele nette web front en backends mee inelkaar draaien ;) En dat is gewoon .NET dus C#, VB, etc.
bwerg zei:
Met C# zet je geen website-frontend in elkaar.
Een website-frontend draai je nog altijd in HTML/CSS/JS etc. in elkaar (althans, in veruit de meeste gevallen) ;)
90710 schreef op zondag 12 mei 2013 @ 19:35:
Zelf ben ik programmeur met kennis van C#, VB (zowel ASP.NET als "gewoon" .NET), C++, Objective C, PHP, Java.. (En natuurlijk ook HTML, CSS en JS)
En dat is hier hoe relevant in dit topic? TS wil leren programmeren, hoe is het handig om hier allemaal te gaan roepen wat wij (denken te) kunnen? ;)
Compizfox schreef op zondag 12 mei 2013 @ 18:58:
C++ met Qt is écht platformonafhankelijk en native, op alle platformen.
Dat is nogal afhankelijk van je definitie van platformonafhankelijk. Ik kan me vergissen maar zelfs een Qt applicatie zul je voor verschillende targets opnieuw moeten compilen. Dat was/is bij Java bijvoorbeeld niet aan de orde met dank aan de runtime die een intermediate language die voor elk platform 'tzelfde is gewoon uitvoert; evenals voor .Net. En "alle platformen" vind ik ook een gevaarlijke uitspraak ;) Draait Qt ook op mijn polshorloge? ;)
Compizfox schreef op zondag 12 mei 2013 @ 18:58:
Als je een Qt-applicatie onder KDE draait, ziet het eruit zoals je hele KDE-desktop eruit ziet (dat is ook logisch, want KDE is praktisch Qt). Maar als je een Qt-applicatie onder Windows draait, ziet het er ook uit als een native Windows-applicatie en niet als een KDE-applicatie.
Met frameworks zoals GTK+ of Swing is dat wel anders.

Ook als je een .NET-applicatie dmv Mono onder Linux draait, ziet het er niet native uit.
Want als de looks verschillend zijn t.o.v. het native platform is 't opeens niet platformonafhankelijk? Wat doen de looks er toe als 't effect (lees: functionaliteit) hetzelfde is/blijft van een applicatie? Looks die overeenkomen met 't platform is een bonus maar geen vereiste.
Compizfox schreef op zondag 12 mei 2013 @ 18:58:
Maar los van de GUI is Mono ook een reserve-engineered oplossing.
a) Boeie dat 't reverse engineered zou zijn. Als 't werkt werkt 't, niet dan? Hoe verschilt dat met, zeg, een samba of vele andere reverse engineered projecten?
b) Microsoft steekt, AFAIK (maar correct me if I'm wrong) steeds meer effort in Mono en Linux in 't algemeen.

[ Voor 54% gewijzigd door RobIII op 12-05-2013 20:15 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

90710

RobIII schreef op zondag 12 mei 2013 @ 20:04:
[...]

Bwerg zei: "Met C# zet je geen website-frontend in elkaar."
Een website-frontend draai je nog altijd in HTML/CSS/JS etc. in elkaar (althans, in veruit de meeste gevallen) ;)
Met de juiste frameworks is de hoeveelheid HTML/CSS/JS etc. die je moet gebruiken in ASP.NET verwaarloosbaar. Het uiterlijk van je webapplicatie (de HTML, CSS en JS dus) behoren door een designer gemaakt te worden. Waarna jij als programmeur alleen de C# code gebruikt om hier gebruik van te maken.

En dan heb je echt wel een website frontend met C# gemaakt. Wat jij bedoelt is, denk ik, client side. Ja dan is alles HTML / CSS / JS.
[...]

En dat is hier hoe relevant in dit topic? TS wil leren programmeren, hoe is het handig om hier allemaal te gaan roepen wat we kunnen? ;)
Ervaring, misschien kan hij er wat mee.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 22:50

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

90710 schreef op zondag 12 mei 2013 @ 20:14:
[...]

Met de juiste frameworks is de hoeveelheid HTML/CSS/JS etc. die je moet gebruiken in ASP.NET verwaarloosbaar. Het uiterlijk van je webapplicatie (de HTML, CSS en JS dus) behoren door een designer gemaakt te worden. Waarna jij als programmeur alleen de C# code gebruikt om hier gebruik van te maken.

En dan heb je echt wel een website frontend met C# gemaakt. Wat jij bedoelt is, denk ik, client side. Ja dan is alles HTML / CSS / JS.
Nee, wat jij bedoelt is backend/server-side ;)
90710 schreef op zondag 12 mei 2013 @ 20:14:
Ervaring, misschien kan hij er wat mee.
Nogmaals: wat moet TS met een opsomming van dingen die jij kunt? Wat moet 'ie daar mee kunnen?

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Avalaxy
  • Registratie: Juni 2006
  • Laatst online: 00:14
90710 schreef op zondag 12 mei 2013 @ 20:14:
[...]

Met de juiste frameworks is de hoeveelheid HTML/CSS/JS etc. die je moet gebruiken in ASP.NET verwaarloosbaar.
Onzin.
Het uiterlijk van je webapplicatie (de HTML, CSS en JS dus) behoren door een designer gemaakt te worden.
Onzin.
En dan heb je echt wel een website frontend met C# gemaakt. Wat jij bedoelt is, denk ik, client side. Ja dan is alles HTML / CSS / JS.
Onzin.

Acties:
  • 0 Henk 'm!

  • Compizfox
  • Registratie: Januari 2009
  • Laatst online: 19:14

Compizfox

Bait for wenchmarks

NMe schreef op zondag 12 mei 2013 @ 19:55:
[...]

Nee, ik bedoel wat ik zeg. Er is geen enkele grote taal die gebonden is aan een bepaald platform. Natuurlijk moet je wel vaak compileren voor een bepaald systeem, maar er is niets wat mij tegenhoudt om C# te gebruiken op Linux in combinatie met Mono. Zo zijn er voor alle "proprietary" talen wel wat oplossingen.
Sorry, ik las "platformonafhankelijk" :+
RobIII schreef op zondag 12 mei 2013 @ 20:04:
Dat is nogal afhankelijk van je definitie van platformonafhankelijk. Ik kan me vergissen maar zelfs een Qt applicatie zul je voor verschillende targets opnieuw moeten compilen. Dat was/is bij Java bijvoorbeeld niet aan de orde met dank aan de runtime die een intermediate language die voor elk platform 'tzelfde is gewoon uitvoert; evenals voor .Net. En "alle platformen" vind ik ook een gevaarlijke uitspraak ;) Draait Qt ook op mijn polshorloge? ;)
Ja hehe, C++ is 'echte' code, en draait niet op een virtual machine zoals bij Java en .NET. Daarom is het juist zo performant.

Dus ja, natuurlijk moet je voor elk platform recompilen. Maar je hoeft het maar 1x te programmeren.
[...]
Want als de looks verschillend zijn t.o.v. het native platform is 't opeens niet platformonafhankelijk? Wat doen de looks er toe als 't effect (lees: functionaliteit) hetzelfde is/blijft van een applicatie? Looks die overeenkomen met 't platform is een bonus maar geen vereiste.
Of het een vereiste is moet je zelf uitmaken, maar het is wel een pluspunt van Qt. Ik vind een GUI-toolkit pas écht portable als het er op elk platform waarop het werkt ook native uitziet.

.NET draait wel onder Linux met Mono, maar het is ontworpen om op Windows te draaien en niet om portable te zijn. Dat zie je o.a. in de GUI. Qt is dat wel.
[...]
a) Boeie dat 't reverse engineered zou zijn. Als 't werkt werkt 't, niet dan? Hoe verschilt dat met, zeg, een samba of vele andere reverse engineered projecten?
Ook bij Samba zie je dat de performance lager ligt dan bij de officiële Windows CIFS-server.

[ Voor 15% gewijzigd door Compizfox op 12-05-2013 20:34 ]

Gewoon een heel grote verzameling snoertjes


Acties:
  • 0 Henk 'm!

  • KabouterSuper
  • Registratie: September 2005
  • Niet online
Als je het doet voor je cv, dan is het belangrijk te bedenken wat voor carriere je ambieert. Ik werk al een poos in de financiele wereld in de back/mid office, en ik waardeer het altijd als een sollicitant ervaring met programmeren heeft. Echter, zeer handig zijn met Excel/VBA, Matlab en SQL is voor mij waardevoller dan iemand die kan programmeren in C#/java/whatever. Het gaat niet altijd om de specifieke ervaring en full-blown kennis, maar vaak juist om algemene ervaring met programmeren en handigheid.

When life gives you lemons, start a battery factory


Acties:
  • 0 Henk 'm!

  • Timons106
  • Registratie: Februari 2010
  • Laatst online: 18-04 10:00
Ik studeer informatica (1e jaar), en de eerste taal die we leerden was JavaScript, een erg fijn taaltje om mee te beginnen vind ik.

In mijn geval is het wel zo dat ik alleen met een doel een programmeertaal kan leren, ik weet niet of dat bij veel mensen zo is, maar als je dat ook hebt zorg dan dat je het misschien met een paar anderen doet of maak een agenda en verplicht het jezelf te doen, want uiteindelijk is het heel leuk!

Na JavaScript kan je wellicht kijken naar Java, C#, Python, Ruby etc., maar zoek wel een taal uit die past bij het gene wat je wilt maken.

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

90710 schreef op zondag 12 mei 2013 @ 20:14:
[...]

En dan heb je echt wel een website frontend met C# gemaakt. Wat jij bedoelt is, denk ik, client side. Ja dan is alles HTML / CSS / JS.
Daarom begonnen de hele "discussie" ook met de opmerking dat je geen frontend kan maken zonder HTML en CSS. Wat jij vervolgens probeerde te weerleggen.

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


Acties:
  • 0 Henk 'm!

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 29-04 23:48

dusty

Y! Celebrate Life!

Persoonlijk zou ik aanraden om te kijken wie van je vrienden kan programmeren waarvan je vertrouwd dat die het wel redelijk of goed kunnen. Dan heb je iemand waar je direct vragen aan kunt stellen en bepaalde dingen kunt uitleggen, waardoor je zelf weer beter onderzoek kunt doen en zo ervaring en kunt beginnen te begrijpen hoe je problemen kunt oplossen.

Daarmee kan je dan beginnen met groeien als programmeur, wil je verder komen als alleen code te kloppen dan zal je ook feedback moeten aanpakken en opnemen om beter te worden om betere code te kunnen maken en beter te kunnen plannen hoe je je programma's moet opbouwen

Als je uiteindelijk feedback niet serieus neemt dan kan je op den duur wel enige mate van ervaring hebben in verschillende talen zeg bijvoorbeeld C#, VB, C++, Objective C, PHP, Java, HTML, CSS en JS hebben maar uiteindelijk maakt je dat nog niet een goede of zelfs een redelijke programmeur.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Acties:
  • 0 Henk 'm!

  • ZaZ
  • Registratie: Oktober 2002
  • Laatst online: 02-05 11:41

ZaZ

Tweakers abonnee

Compizfox schreef op zondag 12 mei 2013 @ 18:58:
[quote]NMe schreef op zondag 12 mei 2013 @ 17:42:
[...]

Ik ken geen enkele grote taal die platformafhankelijk os. [/quote]Je bedoelt "Ik ken geen enkele grote taal die niet platformafhankelijk is." neem ik aan?



[...]

Da's niet native.

C++ met Qt is écht platformonafhankelijk en native, op alle platformen. Als je een Qt-applicatie onder KDE draait, ziet het eruit zoals je hele KDE-desktop eruit ziet (dat is ook logisch, want KDE is praktisch Qt). Maar als je een Qt-applicatie onder Windows draait, ziet het er ook uit als een native Windows-applicatie en niet als een KDE-applicatie.

Met frameworks zoals GTK+ of Swing is dat wel anders.

Ook als je een .NET-applicatie dmv Mono onder Linux draait, ziet het er niet native uit.
Maar los van de GUI is Mono ook een reserve-engineered oplossing.
toon volledige bericht
In mijn optiek moet je als je dingen cross-platform dingen aanbiedt, ook de GUI laag gewoon voor dat platform schrijven.
Je kan toolkits ertegenaan smijten, maar het blijft altijd alien aanvoelen. Simpelweg omdat elk OS daarin zijn eigen guidelines heeft, dus los van het feit hoe een window gestyled wordt.

Mono is trouwens redelijk volwassen inmiddels.
De caveats zitten voornamelijk in heel erg .net specifieke technologieen die relatief nieuw zijn (wpf, wcf etc)
Maar als je leunt op een .net 2, die toch al heel rijk is, dan kan je prima schrijven

Lekker op de bank


Acties:
  • 0 Henk 'm!

  • bwerg
  • Registratie: Januari 2009
  • Niet online

bwerg

Internettrol

Ik zou bij het oriënteren op een programmeertaal trouwens totaal niet kijken naar of het cross-platform is etc. Tegen de tijd dat je echt applicaties gaat maken die je kan uitgeven, ben je al lang klaar om naar een nieuwe taal over te stappen mocht dat nodig zijn. En om het gewoon voor jezelf te leren en te proberen, wat is er mis met een taal die alleen voor een bepaald platform bedoeld is als jij zelf toch dat platform gebruikt? En GUI, dat interesseert me altijd bijzonder weinig. Leuk als het er gelikt uitziet of een GUI gemakkelijk te maken is, maar bij leren programmeren is dat maar een heel klein deel. Anders moet je grafisch ontwerper worden.

[ Voor 4% gewijzigd door bwerg op 13-05-2013 09:34 ]

Heeft geen speciale krachten en is daar erg boos over.


Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Objective Pascal/Delphi,
Ik zou zelf dan kiezen voor RAD Studio.
http://www.embarcadero.com/products/rad-studio (inmiddels zitten ze al op XE4, gaat de laatste tijd daar in een rap tempo).

Ook hier, net als C++ dien je rekening met geheugen te houden, persoon vind ik dat juist een hele belangrijke aspect om te weten hoe je hiermee omgaat. (beter in 1x goed aanleren).
Naast dat Delphi een zeer snelle compiler heeft kan je met Rad Studio (vanaf Professional) als 1 v.d. weinige programmeer omgevingen ook meteen de code exporteren voor XCode (OSX) en Linux.
Verder kan bij mijn weten dit alleen RealBasic naast RAD Studio.
Verder kan het ook voor iOS en Windows 8 Metro.

Ze hebben een standaard instap versie, rond de 300 Euro.
Het mag een duid zijn maar je hebt geheid een mooie programmeer omgeving met een uitstekende taal, vooral om mee te beginnen leren programmeren.
Persoonlijk hoop ik dat ze snel met een native versie voor OSX komen want het is een stuk eenvoudiger dan Objective C/XCode.

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
bwerg schreef op maandag 13 mei 2013 @ 09:31:
Ik zou bij het oriënteren op een programmeertaal trouwens totaal niet kijken naar of het cross-platform is etc. Tegen de tijd dat je echt applicaties gaat maken die je kan uitgeven, ben je al lang klaar om naar een nieuwe taal over te stappen mocht dat nodig zijn. En om het gewoon voor jezelf te leren en te proberen, wat is er mis met een taal die alleen voor een bepaald platform bedoeld is als jij zelf toch dat platform gebruikt? En GUI, dat interesseert me altijd bijzonder weinig. Leuk als het er gelikt uitziet of een GUI gemakkelijk te maken is, maar bij leren programmeren is dat maar een heel klein deel. Anders moet je grafisch ontwerper worden.
Betreft grafisch vormgeving kan je natuurlijk op verschillende manieren opvatten.
Voor web-omgevingen ziet dat plaatje compleet anders uit als je native applicaties gaat ontwikkelen.
Met name als je custom componenten gaat maken, dan loop je snel aan tegen de Canvas.
GUI is niet alleen grafisch vormgeving maar ook alle eigenschappen en methodes die ermee gepaard gaan.
Events en noem maar op. En een applicatie werkt pas prettig als al die componenten er netjes uit zien en doen wat ze moeten doen (niks meer, niks minder).

[ Voor 31% gewijzigd door BoringDay op 13-05-2013 17:59 ]


Acties:
  • 0 Henk 'm!

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

Je kan ook zoals mij beginnen met een OO scripting taal zoals Powershell en dan de stap maken naar een programmeertaal zoals C#. Het is niet eens een grote stap.

Acties:
  • 0 Henk 'm!

  • Corniel
  • Registratie: April 2002
  • Laatst online: 31-03 14:56

Corniel

De wereld is gek!

Ik vraag me oprecht af wat de verwachtingen van de TS zijn bij "leren programmeren". In zijn vraagstelling leest ik namelijk eerder een behoefte om een CV op te leuken dan wel er iets over te leren. De antwoorden gaan volgens mij vooral uit van het idee dat de TS programmeur wil worden.

In het laatste geval lijken zowel Java als C# me goede kandidaten, in het eerste geval denk ik vooral: bezint eer ge begint.

while (me.Alive) {
me.KickAss();
}


Acties:
  • 0 Henk 'm!

Anoniem: 303530

YellowOnline schreef op maandag 13 mei 2013 @ 18:09:
Je kan ook zoals mij beginnen met een OO scripting taal zoals Powershell en dan de stap maken naar een programmeertaal zoals C#. Het is niet eens een grote stap.
En dat was dus de precieze reden dat ik aankwam met cross platform talen. Ik heb een aantal van mijn scripts in powershell geschreven en pak voor quick-n-dirty 'geen zin om een project aan te maken' dingen vaak powershell. Maar nu zit ik met een aantal scripts waardoor ik mijn server niet naar linux kan zetten totdat ik deze port.

Achteraf gezien had ik veel beter python kunnen gebruiken. Of C++, of java, of ..

Acties:
  • 0 Henk 'm!

  • Compizfox
  • Registratie: Januari 2009
  • Laatst online: 19:14

Compizfox

Bait for wenchmarks

BoringDay schreef op maandag 13 mei 2013 @ 17:46:
Ze hebben een standaard instap versie, rond de 300 Euro.
Het mag een duid zijn maar je hebt geheid een mooie programmeer omgeving met een uitstekende taal, vooral om mee te beginnen leren programmeren.
Persoonlijk hoop ik dat ze snel met een native versie voor OSX komen want het is een stuk eenvoudiger dan Objective C/XCode.
€300 voor een IDE terwijl TS nog niet eens kan programmeren?

Dat kan ook prima gratis. Aangezien TS student is heeft hij vast een Microsoft Dreamspark-account. Daarmee heb je gratis toegang tot Visual Studio Professional 2012 (en uiteraard ook 2010 en 2008)
Dan kun je gratis C# of andere .NET-talen programmeren in 'dé professionele IDE'.

Als je C++ met Qt wilt leren, kun je zoals gezegd gebruikmaken van QtCreator. Eventueel in combinatie met de MSVC++-compiler, die is iets beter dan MinGW.
Of je pakt Visual Studio met de Qt-plugin, maar zelf vind ik de integratie daarvan niet zo.

Helemaal gratis, wel te verstaan.

Gewoon een heel grote verzameling snoertjes


Acties:
  • 0 Henk 'm!

  • Bolletje
  • Registratie: Juni 2008
  • Laatst online: 06-05 08:33

Bolletje

Moderator Harde Waren
Compizfox schreef op dinsdag 14 mei 2013 @ 00:48:
[...]

Aangezien TS student is heeft hij vast een Microsoft Dreamspark-account.
Dat is niet voor alle studies. Voor Bedrijfseconomie denk ik in elk geval niet.

Acties:
  • 0 Henk 'm!

  • Compizfox
  • Registratie: Januari 2009
  • Laatst online: 19:14

Compizfox

Bait for wenchmarks

Niet?

Ik doe VWO en ik heb het zelfs :P
Of ja, had. Een jaar geleden was je CJP Cultuurkaart nog een ISIC-kaart, wat betekent dat het nummer dat erop staat wordt geaccepteerd door Microsoft Dreamspark, waarmee je hebt bewezen dat je student/scholier bent.

Nu is de Cultuurkaart dat blijkbaar niet meer, dus moet je terugvallen op verificatie dmv je school-emailadres. Mijn school staat gewoon in de lijst, maar het domein van mijn school staat er blijkbaar niet goed in |:(


Ik denk iig dat zolang je kunt bewijzen dat je student bent, ofwel dmv een ISIC-nummer, danwel dmv een je school-emailadres, je een Dreamspark-account kunt krijgen.

[ Voor 100% gewijzigd door Compizfox op 14-05-2013 01:01 ]

Gewoon een heel grote verzameling snoertjes


Acties:
  • 0 Henk 'm!

  • Bolletje
  • Registratie: Juni 2008
  • Laatst online: 06-05 08:33

Bolletje

Moderator Harde Waren
Oh, wacht, of dat is het verschil tussen Dreamspark en Dreamspark Premium. Laatstgenoemde was eerder MSDNAA.

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Compizfox schreef op dinsdag 14 mei 2013 @ 00:48:
[...]

€300 voor een IDE terwijl TS nog niet eens kan programmeren?

Dat kan ook prima gratis. Aangezien TS student is heeft hij vast een Microsoft Dreamspark-account. Daarmee heb je gratis toegang tot Visual Studio Professional 2012 (en uiteraard ook 2010 en 2008)
Dan kun je gratis C# of andere .NET-talen programmeren in 'dé professionele IDE'.

Als je C++ met Qt wilt leren, kun je zoals gezegd gebruikmaken van QtCreator. Eventueel in combinatie met de MSVC++-compiler, die is iets beter dan MinGW.
Of je pakt Visual Studio met de Qt-plugin, maar zelf vind ik de integratie daarvan niet zo.

Helemaal gratis, wel te verstaan.
Het kan op zoveel manieren gratis.
Maar gezien het feit Delphi de langste speler is met een zeer goede reputatie en RAD Studio niet beperkt tot ontwikkeling voor windows is het absoluut geen mindere en laat staan een slechte optie.
En ook daar kan je c++ toepassen en assembly.
Eveneens kan je in XCode met c++ programmeren.


Echter zie ik gratis niet als een factor die een rol zou moeten spelen in een keus.
Je kan zelfs met javascript OOP, event-driven programmeren (daarbij is js-server side) sterk in opkomst zodat je verlost kan worden van php.

[ Voor 4% gewijzigd door BoringDay op 14-05-2013 02:51 ]


Acties:
  • 0 Henk 'm!

  • base_
  • Registratie: April 2003
  • Laatst online: 07-05 15:31
Eigenlijk zijn de meeste (OO) programmeer structuren generiek en onafhankelijk van de gebruikte programmeertaal. Kies een taal die je bevalt en zodra je er handig in wordt is het ineens best eenvoudig om ook andere talen te leren gebruiken. Het grote verschil ligt in de toepassing: met Python kan je vrij eenvoudig heel leuke mee doen maar het zal niet het snelst lopen, C#/ASP.net is leuk voor windows/m$ office, PHP werkt goed voor websites, LISP en Matlab doen het weer beter met wiskunde. Hoe meer verschillende programmeertalen je leert kennen hoe meer overeenkomsten en verschillen je zal vinden en hoe beter je kan bepalen wat het best past bij de toepassing.
Als je overigens een goede open source IDE zoekt: Eclipse (http://projects.eclipse.org/list-of-projects) is wel een van de meest uitgebreide en meest gebruikte IDE's.
Microsoft Visual Studio (voor C# of ASP.net b.v.) lijkt leuk maar op het moment dat het interessant begint te worden moet je toch echt gaan betalen voor een professional versie :(

@Boringday: Delphi is idd een oude rot, (ik dacht dat die al overleden was...) maar verlost van php begrijp ik niet (PHP werkt prima voor (OOP) Response->Request interaction zoals websites en webservices)?

Acties:
  • 0 Henk 'm!

  • YellowOnline
  • Registratie: Januari 2005
  • Laatst online: 28-03-2023

YellowOnline

BEATI PAVPERES SPIRITV

Anoniem: 303530 schreef op maandag 13 mei 2013 @ 23:34:
[...]

En dat was dus de precieze reden dat ik aankwam met cross platform talen. Ik heb een aantal van mijn scripts in powershell geschreven en pak voor quick-n-dirty 'geen zin om een project aan te maken' dingen vaak powershell. Maar nu zit ik met een aantal scripts waardoor ik mijn server niet naar linux kan zetten totdat ik deze port.

Achteraf gezien had ik veel beter python kunnen gebruiken. Of C++, of java, of ..
Scripts moeten porten is geen drama. Mijn reactie ging over heel vereenvoudigde leerproces: met een objectgeoriënteerde scripttaal zoals Powershell, die in Windows ingebakken zit met ISE (ik ga er vanuit dat de TS Windows draait) kan je gemakkelijk leren met variabelen werken zonder ze expliciet te hoeven declareren en kan je het concept OO gemakkelijk aanleren. Bovendien gaat alles vanuit de Shell en moet er niet gecompiled worden, wat de drempel nog wat lager legt.
Op deze manier kan je concepten en denkwijzen voor programmeren leren die een overstap naar elke taal gemakkelijker maken van vanaf 0 te beginnen - in het geval van PowerShell zeker als je naar een .NET taal overstapt aangezien PoSh onderliggend ook dat framework gebruikt.

Een lagere taal als C of C++ is vanuit een puristisch, als ik dat zo mag noemen, programmeerstandpunt weliswaar beter omdat je echt alles zelf moet doen en aldus veel beter weet hoe alles precies werkt, maar dan kan je bijna opperen om assembly te leren ook. Als de TS zijn doel is om programmeren te leren 'during lunchbreak' zonder iets concreets voor ogen, dan kan hebben zulke talen geen zin.

Java zou inderdaad ook nog een optie zijn, maar de voordelen van een .NET taal zijn groter dan de nadelen (nagenoeg niet cross-platform, al heb je Mono of hoe heet het), zeker voor een hobbyist op Windows.

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
base_ schreef op dinsdag 14 mei 2013 @ 03:22:
Eigenlijk zijn de meeste (OO) programmeer structuren generiek en onafhankelijk van de gebruikte programmeertaal. Kies een taal die je bevalt en zodra je er handig in wordt is het ineens best eenvoudig om ook andere talen te leren gebruiken. Het grote verschil ligt in de toepassing: met Python kan je vrij eenvoudig heel leuke mee doen maar het zal niet het snelst lopen, C#/ASP.net is leuk voor windows/m$ office, PHP werkt goed voor websites, LISP en Matlab doen het weer beter met wiskunde. Hoe meer verschillende programmeertalen je leert kennen hoe meer overeenkomsten en verschillen je zal vinden en hoe beter je kan bepalen wat het best past bij de toepassing.
Als je overigens een goede open source IDE zoekt: Eclipse (http://projects.eclipse.org/list-of-projects) is wel een van de meest uitgebreide en meest gebruikte IDE's.
Microsoft Visual Studio (voor C# of ASP.net b.v.) lijkt leuk maar op het moment dat het interessant begint te worden moet je toch echt gaan betalen voor een professional versie :(

@Boringday: Delphi is idd een oude rot, (ik dacht dat die al overleden was...) maar verlost van php begrijp ik niet (PHP werkt prima voor (OOP) Response->Request interaction zoals websites en webservices)?
Delphi is nog lang niet overleden, de nieuwere versies gaan een behoorlijke groei door.
PHP heeft maar half gebakken OOP daarbij kent het geen events.
Als javascript zowel serversite als clientsite ga ma naar hoeveel werk je dat kan besparen.

Acties:
  • 0 Henk 'm!

  • PatrickH89
  • Registratie: November 2009
  • Laatst online: 06-05 23:04
BoringDay schreef op dinsdag 14 mei 2013 @ 08:44:
[...]
Als javascript zowel serversite als clientsite ga ma naar hoeveel werk je dat kan besparen.
?

Overigens heeft de structuur van PHP niets te maken met events (het is ook volstrekt willekeurig om dat als nadeel te noemen). Als je events wilt dan ben je gewoon bij PHP niet aan het goede adres, maar dat betekent niet dat het een nadeel is van de taal zelf. Sowieso is er in huidige versies maar weinig halfbakken aan (voor het laatst naar PHP gekeken met PHP4?). Halfbakken OOP is een inmiddels wel heel erg prehistorisch argument wat mij betreft.

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
PatrickH89 schreef op dinsdag 14 mei 2013 @ 10:28:
[...]


?

Overigens heeft de structuur van PHP niets te maken met events (het is ook volstrekt willekeurig om dat als nadeel te noemen). Als je events wilt dan ben je gewoon bij PHP niet aan het goede adres, maar dat betekent niet dat het een nadeel is van de taal zelf. Sowieso is er in huidige versies maar weinig halfbakken aan (voor het laatst naar PHP gekeken met PHP4?). Halfbakken OOP is een inmiddels wel heel erg prehistorisch argument wat mij betreft.
PHP op zichzelf niet, maar je wil toch wel de gegevens uit de database op een pagina tonen,
gegevens kunnen bewerken, valideren en vervolg acties uitvoeren.
Als ik een property uitlees of toewijs wil ik meteen kunnen triggeren en overgaan op vervolg acties.
Daar ontbreekt het aan bij PHP op alle fronten en ja ik zie dat als een enorm groot nadeel omdat het juist ontzettend veel tijd kan besparen en de code veel netter door kan worden.

In principe moet je van losse functies en noem maar op afwillen, alles OOP.

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:21

Creepy

Tactical Espionage Splatterer

BoringDay: ik snap niet wat je nu precies bedoelt. Wordt eens concreet met je "events" en hoe je dat gebruikt (wat voorbeeldcode). Het lijkt erop dat je zegt dat als er een property wordt toegewezen je dan gelijk een database actie zou willen uitvoeren bijvoorbeeld. Dat lijkt me dus absoluut niet handig.

En PHP afraden om OOP te leren, maar dan wel Javascript aanraden? In javascript is er nogal veel mogelijk en wordt je absoluut niet bij het handje gehouden qua OOP. Dan is inderdaad Delphi (of C#, of Java) een betere omgeving om dit te leren alhoewel Delphi zeker in het verleden ook wat rare dingen had zoals vol automatisch van elk Formr een instantie maken zodat het gros van de beginners het verschil tussen de Class en de instantie niet meer uit elkaar konden houden, ook niet erg fijn.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
Javascript is geeneens OO, het maakt gebruik van prototypal inheritance.
En wat mij betreft zijn "events" op de server ontzettend useless. HTTP is stateless, dus ga geen state proberen in te vouwen in je server. Je hoeft alleen maar naar ASP.NET Webforms te kijken om te zien wat voor troep het dan wordt.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

  • Cloud
  • Registratie: November 2001
  • Laatst online: 07-05 10:21

Cloud

FP ProMod

Ex-moderatie mobster

Inderdaad geen php of javascript. Kun je later altijd eens oppakken maar als eerste taal zou ik het echt afraden. Ik zou één van de volgende talen aanhouden om mee te beginnen (als je programmeur wilt worden):
  • C#
  • Java
Is het puur voor de hobby dan zou je ook Python kunnen overwegen (daar is veel minder werk in) :)

Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana


Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

Grijze Vos schreef op dinsdag 14 mei 2013 @ 11:57:
Javascript is geeneens OO, het maakt gebruik van prototypal inheritance.
En waarom zou het daardoor niet OO kunnen zijn?
Toegegeven, er is enige discussie mogelijk, zeker wat betreft public/private variabelen, hoewel daar ook wel omheen te werken is, maar Javascript kan je toch echt wel grotendeels als een OO taal zien.
Je moet alleen wel weten wat je doet en hoen de taal in elkaar steekt.

Acties:
  • 0 Henk 'm!

  • PatrickH89
  • Registratie: November 2009
  • Laatst online: 06-05 23:04
Nou ja, het is in ieder geval een beetje gek om PHP een halfbakken OOP taal te noemen en JS wel een goede taal om mee te leren. Sorry hoor, maar dan weet je echt niet waar je over praat :p

Acties:
  • 0 Henk 'm!

  • EddoH
  • Registratie: Maart 2009
  • Niet online

EddoH

Backpfeifengesicht

Ik neem aan dat die opmerking niet aan mij gericht is? Anders heb je m'n post niet helemaal begrepen...

Acties:
  • 0 Henk 'm!

  • PatrickH89
  • Registratie: November 2009
  • Laatst online: 06-05 23:04
Was meer een bevestiging/aanvulling van jouw post met een verwijzing naar het standpunt van BoringDay. Sorry als het onduidelijk was :P

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Grijze Vos schreef op dinsdag 14 mei 2013 @ 11:57:
Javascript is geeneens OO, het maakt gebruik van prototypal inheritance.
En wat mij betreft zijn "events" op de server ontzettend useless. HTTP is stateless, dus ga geen state proberen in te vouwen in je server. Je hoeft alleen maar naar ASP.NET Webforms te kijken om te zien wat voor troep het dan wordt.
Er waar denk je de term inheritance vandaan komt?
inherited, override, overload, virtual ... allemaal termen uit het OOP.
Zal dit geen object zijn?
MyObject = Object.create();

Waar jij op doelt is denk ik:
function myclass = {
}

myclass.prototype.doiets = function (var) {
return var
}

Waar ik meer op doel is:
var TApplication = Object.create(null);

/* properties definitions */
TApplication._module = 'default';
TApplication._debug = false;

/* properties methodes */
TApplication.GetModule = function() { return this._module; }
TApplication.SetModule = function(value) {
this._package = value;
}


Object.defineProperty(TApplication,'module', {
get: function() { return this.GetModule(); },
set: function(value) { this.SetModule(value); }
});

Object.defineProperty(TApplication,'debug', {
get: function() { return this.GetDebug(); },
set: function(value) { this.SetDebug(value); }
});

Acties:
  • 0 Henk 'm!

  • Megamind
  • Registratie: Augustus 2002
  • Laatst online: 28-02 01:01
Cloud schreef op dinsdag 14 mei 2013 @ 12:05:
Inderdaad geen php of javascript. Kun je later altijd eens oppakken maar als eerste taal zou ik het echt afraden. Ik zou één van de volgende talen aanhouden om mee te beginnen (als je programmeur wilt worden):
  • C#
  • Java
Is het puur voor de hobby dan zou je ook Python kunnen overwegen (daar is veel minder werk in) :)
Eerlijk gezegd, waarom zou je voor Java kiezen. Als je eenmaal java kent is de overstap naar C# bv zeer eenvoudig. Maar C# biedt meer mogelijkheden mbt het bouwen van grafische applicaties (WPF/Winforms), websites (MVC4), apps (Xamarin), games out the box terwijl je (imo) bij Java meer tijd kwijt bent aan het optuigen van alle randcomponenten.

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Megamind schreef op dinsdag 14 mei 2013 @ 12:53:
[...]

Eerlijk gezegd, waarom zou je voor Java kiezen. Als je eenmaal java kent is de overstap naar C# bv zeer eenvoudig. Maar C# biedt meer mogelijkheden mbt het bouwen van grafische applicaties (WPF/Winforms), websites (MVC4), apps (Xamarin), games out the box terwijl je (imo) bij Java meer tijd kwijt bent aan het optuigen van alle randcomponenten.
Allemaal niet relevant voor het leren programmeren.
BoringDay schreef op dinsdag 14 mei 2013 @ 12:49:
[...]


Er waar denk je de term inheritance vandaan komt?
inherited, override, overload, virtual ... allemaal termen uit het OOP.
Zal dit geen object zijn?
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
MyObject = Object.create();

Waar jij op doelt is denk ik:
function myclass = {
}

myclass.prototype.doiets = function (var) {
   return var
}

Waar ik meer op doel is:
var TApplication = Object.create(null);

/* properties definitions */
TApplication._module    = 'default';
TApplication._debug     = false;

/* properties methodes */
TApplication.GetModule  = function() { return this._module; }
TApplication.SetModule  = function(value) { 
    this._package       = value;
}


Object.defineProperty(TApplication,'module', {
    get: function() { return this.GetModule(); },
    set: function(value) { this.SetModule(value); }
});

Object.defineProperty(TApplication,'debug', {
    get: function() { return this.GetDebug(); },
    set: function(value) { this.SetDebug(value); }
});
toon volledige bericht
Los van of het wel of niet OO te noemen is, is het nogal afwijkend van vrijwel alle andere implementaties van OO en daarom als beginnerstaal een rampzalig slechte keuze. Sowieso is het nogal discutabel of het wel netjes is om een object procedureel te gaan opbouwen zoals je daar doet...

[ Voor 56% gewijzigd door NMe op 14-05-2013 12:58 ]

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


Acties:
  • 0 Henk 'm!

  • Cloud
  • Registratie: November 2001
  • Laatst online: 07-05 10:21

Cloud

FP ProMod

Ex-moderatie mobster

Ik zou zelf nooit Java kiezen, gezien mijn eigen ervaringen. Ik heb Java er voor de volledigheid bij staan, omdat er anders gegarandeerd gezeik over komt :) Maar qua leren hobbymatig programmeren maakt het niet zoveel uit en zou naast C#/Java ook Python kunnen werken. Als je echter een baan als devver zoekt zou ik absoluut voor C# gaan.

Het hangt echt een beetje af van wat iemand ermee wil doen. 'Op je CV zetten' zegt me net wat te weinig :)

Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana


Acties:
  • 0 Henk 'm!

  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
BoringDay schreef op dinsdag 14 mei 2013 @ 12:49:
[...]

Er waar denk je de term inheritance vandaan komt?
inherited, override, overload, virtual ... allemaal termen uit het OOP.
Ik wilde aangeven dat er iig een flink verschil zit tussen klassiek OOP en prototype based programmeren. Het is inderdaad ook een vorm van OO, maar wel eentje die toch wel anders werkt. Zeker voor beginners is die distinctie belangrijk.

override, overload en virtual zijn overigens termen die je niet gebruikt in JS. ;) die eerste krijg je automagisch cadeau als je een method redefined. Die andere twee zijn niet eens mogelijk.

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Cloud schreef op dinsdag 14 mei 2013 @ 12:57:
Ik zou zelf nooit Java kiezen, gezien mijn eigen ervaringen. Ik heb Java er voor de volledigheid bij staan, omdat er anders gegarandeerd gezeik over komt :) Maar qua leren hobbymatig programmeren maakt het niet zoveel uit en zou naast C#/Java ook Python kunnen werken. Als je echter een baan als devver zoekt zou ik absoluut voor C# gaan.
Och, een programmeur die aan één taal begint en nooit meer iets anders doet is ook weer zoiets. De taal waar je mee begint is niet zo heel belangrijk als de principes die je er leert maar toe te passen zijn op andere talen. Op zich dus niet zo'n slecht idee om met Java te beginnen, niet in de laatste plaats omdat je daar leuke IDE's als BlueJ voor hebt die het leerproces makkelijker maken. C# heeft dat veel minder.

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


Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Creepy schreef op dinsdag 14 mei 2013 @ 11:51:
BoringDay: ik snap niet wat je nu precies bedoelt. Wordt eens concreet met je "events" en hoe je dat gebruikt (wat voorbeeldcode). Het lijkt erop dat je zegt dat als er een property wordt toegewezen je dan gelijk een database actie zou willen uitvoeren bijvoorbeeld. Dat lijkt me dus absoluut niet handig.

En PHP afraden om OOP te leren, maar dan wel Javascript aanraden? In javascript is er nogal veel mogelijk en wordt je absoluut niet bij het handje gehouden qua OOP. Dan is inderdaad Delphi (of C#, of Java) een betere omgeving om dit te leren alhoewel Delphi zeker in het verleden ook wat rare dingen had zoals vol automatisch van elk Formr een instantie maken zodat het gros van de beginners het verschil tussen de Class en de instantie niet meer uit elkaar konden houden, ook niet erg fijn.
Ok ik stel je voor om het volgende te proberen in PHP:

class Persoon {
public $voornaam = '';
}

$Persoon = new Persoon;
$Persoon->voornaam = 'Piet';

Probeer nu eens de class Persoon zodanig te maken dat op het moment
wanneer jij $Persoon->voornaam = 'een naam';
Meteen een functie getriggerd wordt en een echo met de voornaam komt te staan.
Je mag dan na $Persoon->voornaam = 'een naam'; geen andere functie aanroepen.

Misschien je het dan begrijpt.

Acties:
  • 0 Henk 'm!

  • Cloud
  • Registratie: November 2001
  • Laatst online: 07-05 10:21

Cloud

FP ProMod

Ex-moderatie mobster

@NMe
Ben ik met je eens, wisselen van taal kan altijd en zal ook zelfs erg nuttig zijn. Maar ik vind de keuze voor de eerste taal toch wel een belangrijk punt. C# en Java kunnen beide prima en je kan daarna altijd PHP oppakken maar ik zou de volgorde niet snel om willen draaien.

BlueJ kende ik niet echt, ziet er wel leuk uit :) Toch kan C#, met VS Express en een goed boek je ook prima leren programmeren, al mis je dan het interactieve aspect. Of desnoods een online programming course, zoals die er tegenwoordig veel zijn :) Al gebruiken die vrijwel nooit C# maar vooral Python en soms Java.

Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 22:50

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

NMe schreef op dinsdag 14 mei 2013 @ 13:08:
Op zich dus niet zo'n slecht idee om met Java te beginnen, niet in de laatste plaats omdat je daar leuke IDE's als BlueJ voor hebt die het leerproces makkelijker maken. C# heeft dat veel minder.
Waarom heeft C# dat veel minder? Zo'n beetje elke fatsoenlijke IDE kan C# aan en VS (Express) is één van de beste IDE's, zo niet de beste.
BoringDay schreef op dinsdag 14 mei 2013 @ 13:13:
[...]


Ok ik stel je voor om het volgende te proberen in PHP:

class Persoon {
public $voornaam = '';
}

$Persoon = new Persoon;
$Persoon->voornaam = 'Piet';

Probeer nu eens de class Persoon zodanig te maken dat op het moment
wanneer jij $Persoon->voornaam = 'een naam';
Meteen een functie getriggerd wordt en een echo met de voornaam komt te staan.
Je mag dan na $Persoon->voornaam = 'een naam'; geen andere functie aanroepen.

Misschien je het dan begrijpt.
toon volledige bericht
Dan doe je 't precies 'tzelfde als in Java; je maakt een getNaam() en setNaam(). En in die methods kun je triggeren wat je wil. Of je dat ook daadwerkelijk wil in een getter/setter is een tweede, maar een goed voorbeeld is bijvoorbeeld de "INotifyPropertyChanged methode".

Overigens vind ik (auto implemented) properties in C# veel mooier vind dan dat omslachtige getFoo()/setFoo() gedoe in Java...). Uiteindelijk is 't natuurlijk syntactic sugar, maar een property getter/setter vind ik mooier dan voor elke property een get/set method maken.
Cloud schreef op dinsdag 14 mei 2013 @ 13:16:
Of desnoods een online programming course, zoals die er tegenwoordig veel zijn :)
:Y http://mottishaked.com/training/dot-net-tutorial Schijnt wel aardig te zijn, maar als je een paar euro kunt missen moet je vooral eens kijken bij pluralsight. Die zijn, IMHO, kwalitatief erg goed.
Cloud schreef op dinsdag 14 mei 2013 @ 13:16:
Al gebruiken die vrijwel nooit C# maar vooral Python en soms Java.
Het is maar net waar je op zoekt; ik heb een shitton aan goede C#/.Net video's bookmarked. Voor ASP.Net (webforms / MVC) zijn er veel goede video's, MSDN is vergeven van de video's evenals channel9 (welke vaak wat minder in-depth gaat maar wel weer meer "het globale idee" verduidelijkt), er zijn veel WPF, WCF video's etc. etc.

[ Voor 85% gewijzigd door RobIII op 14-05-2013 13:36 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:21

Creepy

Tactical Espionage Splatterer

BoringDay schreef op dinsdag 14 mei 2013 @ 13:13:
[...]


Ok ik stel je voor om het volgende te proberen in PHP:

class Persoon {
public $voornaam = '';
}

$Persoon = new Persoon;
$Persoon->voornaam = 'Piet';

Probeer nu eens de class Persoon zodanig te maken dat op het moment
wanneer jij $Persoon->voornaam = 'een naam';
Meteen een functie getriggerd wordt en een echo met de voornaam komt te staan.
Je mag dan na $Persoon->voornaam = 'een naam'; geen andere functie aanroepen.

Misschien je het dan begrijpt.
toon volledige bericht
Maar reageer dan aub eens op mijn eerdere post waarin ik o.a. aangeef dat je dat gedrag niet zomaar wil hebben. Door het toekennen van een property treedt er ineens allemaal extra gedrag op, en dat is nu juist waar je methods voor hebt. Daarom is je voorbeeld ook absoluut geen goed OO. Zomaar properties van een instantie aanpassen buiten de instantie om is erg vaak geen goed OO gebruik. Bij goed OO heb je dus een method ala setVoornaam die je aanroept, en dan kan wat jij wil weer wel, ook in PHP.
PHP:
1
2
3
4
5
6
7
8
9
10
class Persoon {
 private $voornaam = '';
 public funcion setVoornaam($naam) {
  $this->voornaam = $naam;
  // hier je "event"
  }
}

$persoon = new Persoon;
$persoon->setVoornaam('Piet');


Dat noemen als nadeel van PHP om OO te leren is nogal krom. En om dan opmerking om "mischien dat je het dan begrijpt" te maken is dan ook niet zo handig ;)

Snelle RobIII...

[ Voor 9% gewijzigd door Creepy op 14-05-2013 13:23 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Grijze Vos schreef op dinsdag 14 mei 2013 @ 13:07:
[...]

Ik wilde aangeven dat er iig een flink verschil zit tussen klassiek OOP en prototype based programmeren. Het is inderdaad ook een vorm van OO, maar wel eentje die toch wel anders werkt. Zeker voor beginners is die distinctie belangrijk.

override, overload en virtual zijn overigens termen die je niet gebruikt in JS. ;) die eerste krijg je automagisch cadeau als je een method redefined. Die andere twee zijn niet eens mogelijk.
Ik ben die termen idd niet tegen gekomen in Javascript, maar het zijn termen die officieel tot OOP behoren.
En OOP is gewoon OOP, klassieke OOP bestaat niet, dat zou je ook niet moeten willen.
Daarnaast moet override wel bestaan anders kan je ook bar weinig met inherited.
Wellicht de term niet naar voren komt, maar OOP zonder inherited en override methodes is geen OOP.

Acties:
  • 0 Henk 'm!

  • mbarie
  • Registratie: Mei 2011
  • Laatst online: 04-08-2021
Creepy schreef op dinsdag 14 mei 2013 @ 13:19:
[...]

Maar reageer dan aub eens op mijn eerdere post waarin ik o.a. aangeef dat je dat gedrag niet zomaar wil hebben. Door het toekennen van een property treedt er ineens allemaal extra gedrag op, en dat is nu juist waar je methods voor hebt. Daarom is je voorbeeld ook absoluut geen goed OO. Zomaar properties van een instantie aanpassen buiten de instantie om is erg vaak geen goed OO gebruik. Bij goed OO heb je dus een method ala setVoornaam die je aanroept, en dan kan wat jij wil weer wel, ook in PHP.
Ik kon het niet laten te melden dat het sowieso in PHP kan via magic method __set() -> http://nl1.php.net/__set :)

Storyteller @ soundcloud


Acties:
  • 0 Henk 'm!

  • Caelorum
  • Registratie: April 2005
  • Laatst online: 17-03 09:43
RobIII schreef op dinsdag 14 mei 2013 @ 13:16:
[...]
Waarom heeft C# dat veel minder? Zo'n beetje elke fatsoenlijke IDE kan C# aan en VS (Express) is één van de beste IDE's, zo niet de beste.
[...]
Ik denk dat hij daar doelt op IDE's specifiek voor beginners zoals dat rampzalige BlueJ waar ik nooit iets van heb gesnapt:
Afbeeldingslocatie: http://www.bluej.org/help/mbcs-layout.gif

[ Voor 6% gewijzigd door Caelorum op 14-05-2013 13:31 ]


Acties:
  • 0 Henk 'm!

  • Cloud
  • Registratie: November 2001
  • Laatst online: 07-05 10:21

Cloud

FP ProMod

Ex-moderatie mobster

RobIII schreef op dinsdag 14 mei 2013 @ 13:16:
[...]
:Y http://mottishaked.com/training/dot-net-tutorial Schijnt wel aardig te zijn, maar als je een paar euro kunt missen moet je vooral eens kijken bij pluralsight. Die zijn, IMHO, kwalitatief erg goed.
Pluralsight is inderdaad echt heel goed ja :) Die mottishaked website ziet er ook netjes uit. Heb hem hier gebookmarked om later eens te bekijken, misschien is het wat voor vrienden van me.
[...]
Het is maar net waar je op zoekt; ik heb een shitton aan goede C#/.Net video's bookmarked.
Videos(eries) zijn er inderdaad genoeg, ik bedoelde meer 'interactieve' leeromgevingen zoals Udacity, Coursera en zo :)

Never attribute to malice that which can be adequately explained by stupidity. - Robert J. Hanlon
60% of the time, it works all the time. - Brian Fantana


Acties:
  • 0 Henk 'm!

  • base_
  • Registratie: April 2003
  • Laatst online: 07-05 15:31
BoringDay schreef op dinsdag 14 mei 2013 @ 11:19:
[...]


PHP op zichzelf niet, maar je wil toch wel de gegevens uit de database op een pagina tonen,
gegevens kunnen bewerken, valideren en vervolg acties uitvoeren.
Als ik een property uitlees of toewijs wil ik meteen kunnen triggeren en overgaan op vervolg acties.
Daar ontbreekt het aan bij PHP op alle fronten en ja ik zie dat als een enorm groot nadeel omdat het juist ontzettend veel tijd kan besparen en de code veel netter door kan worden.

In principe moet je van losse functies en noem maar op afwillen, alles OOP.
Nog nooit van symfony/propel of doctrine gehoord? Allemaal PHP en vrijwel geheel OOP, incl triggers en validatie.
PHP is stateless maar websites/requests zijn dat over het algemeen ook.
Voor het schrijven van applicaties kan je dus beter een andere taal gebruiken (voor websites is PHP veruit favoriet).

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Creepy schreef op dinsdag 14 mei 2013 @ 13:19:
[...]

Maar reageer dan aub eens op mijn eerdere post waarin ik o.a. aangeef dat je dat gedrag niet zomaar wil hebben. Door het toekennen van een property treedt er ineens allemaal extra gedrag op, en dat is nu juist waar je methods voor hebt. Daarom is je voorbeeld ook absoluut geen goed OO. Zomaar properties van een instantie aanpassen buiten de instantie om is erg vaak geen goed OO gebruik. Bij goed OO heb je dus een method ala setVoornaam die je aanroept, en dan kan wat jij wil weer wel, ook in PHP.
PHP:
1
2
3
4
5
6
7
8
9
10
class Persoon {
 private $voornaam = '';
 public funcion setVoornaam($naam) {
  $this->voornaam = $naam;
  // hier je "event"
  }
}

$persoon = new Persoon;
$persoon->setVoornaam('Piet');


Dat noemen als nadeel van PHP om OO te leren is nogal krom. En om dan opmerking om "mischien dat je het dan begrijpt" te maken is dan ook niet zo handig ;)

Snelle RobIII...
toon volledige bericht
Dan heb je nog nooit componenten/objecten ontworpen en niet goed begrepen.

Bij OOP is het juist niet de bedoeling om setVoornaam aan te roepen.
Sets en Gets zijn juist bedoeld voor als je de property Voornaam aanroept of een waarde toekent een trigger wordt gestuurd en in die trigger kan je bepalen wat er moet gebeuren.

Dit is juist het hele principe van properties, de naam zegt het al in feite het is een eigenschap.
Een eigenschap van het object.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 22:50

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Caelorum schreef op dinsdag 14 mei 2013 @ 13:30:
[...]

Ik denk dat hij daar doelt op IDE's specifiek voor beginners zoals dat rampzalige BlueJ waar ik nooit iets van heb gesnapt:
[afbeelding]
In VS kun je ook prima met class designers, UML designers werken (en nog veel meer zoals dependency graphs, grafisch code "exploren" etc.)

[ Voor 13% gewijzigd door RobIII op 14-05-2013 13:46 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Amras
  • Registratie: Januari 2003
  • Laatst online: 07-05 16:22
BoringDay schreef op dinsdag 14 mei 2013 @ 13:38:
[...]


Dan heb je nog nooit componenten/objecten ontworpen en niet goed begrepen.

Bij OOP is het juist niet de bedoeling om setVoornaam aan te roepen.
Sets en Gets zijn juist bedoeld voor als je de property Voornaam aanroept of een waarde toekent een trigger wordt gestuurd en in die trigger kan je bepalen wat er moet gebeuren.

Dit is juist het hele principe van properties, de naam zegt het al in feite het is een eigenschap.
Een eigenschap van het object.
Wat jij doet is direct een attribuut van een object wijzigen, wat uit den boze is in OOP - zie Encapsulation. Je mag alleen attributen wijzigen via methoden of properties van het object, wat Creepy demonstreert.

[ Voor 6% gewijzigd door Amras op 14-05-2013 13:43 ]


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 22:50

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

BoringDay schreef op dinsdag 14 mei 2013 @ 13:38:
[...]


Dan heb je nog nooit componenten/objecten ontworpen en niet goed begrepen.

Bij OOP is het juist niet de bedoeling om setVoornaam aan te roepen.
Sets en Gets zijn juist bedoeld voor als je de property Voornaam aanroept of een waarde toekent een trigger wordt gestuurd en in die trigger kan je bepalen wat er moet gebeuren.

Dit is juist het hele principe van properties, de naam zegt het al in feite het is een eigenschap.
Een eigenschap van het object.
With all due respect; hoe goed ben jij eigenlijk bekend met OOP? Want ik zie je her-en-der toch aardig de plank mis slaan :X

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Daos
  • Registratie: Oktober 2004
  • Niet online
Caelorum schreef op dinsdag 14 mei 2013 @ 13:30:
Ik denk dat hij daar doelt op IDE's specifiek voor beginners zoals dat rampzalige BlueJ waar ik nooit iets van heb gesnapt:
Met BlueJ kan je objecten maken en gebruiken zonder dat je die ingewikkelde static main functie nodig hebt. Ik vind het wel geinig werken.

Je maakt eerst een class en klikt met de rechter muisknop op "new <class>()". Dit maakt een object/instance en die komt in de balk beneden te staan. Eenmaal daar kan je de methods aanroepen. Static methods kan je direct bij de class aanroepen.

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Amras schreef op dinsdag 14 mei 2013 @ 13:42:
[...]

Wat jij doet is direct een attribuut van een object wijzigen, wat uit den boze is in OOP. Je mag alleen attributen wijzigen via methoden of properties van het object, wat Creepy demonstreert.
Ik zal je uitleggen waarom dit OOP incorrect is:
properties zijn een eigenschap van een object.

In een ontwikkel omgeving heb je te maken met een property inspector.
Die toont de properties met zijn waarden weer.
Op het moment van weergeven van een property wordt vanuit het object zelf de Get aangeroepen.
Op het moment van toewijzen van een waarde triggert het object zelf de Set.

Wat je hier in PHP doet is een property, de eigenschap dus, gewoon verbergen voor de buitenwereld.
Als een auto blauw is dan wil je toch ook zien dat het blauw is?
Als je de auto geel spuit wil je toch ook zien dat die geel wordt?

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
RobIII schreef op dinsdag 14 mei 2013 @ 13:45:
[...]

With all due respect; hoe goed ben jij eigenlijk bekend met OOP? Want ik zie je her-en-der toch aardig de plank mis slaan :X
OOP ken ik al sinds 2004.
Wel eens gehoord van een property inspector?

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:21

Creepy

Tactical Espionage Splatterer

De property inspector ken ik, erg goed zelfs, vanuit Delphi. Maar die gebruiken om aan te geven dat je public properties moet hebben die je te pas en te onpas vanuit allerlei code maar moet lezen en zetten is echt totale onzin. Lees je aub eens in over Encapsulation. Als je echt snapt wat dat is dan snap je ook dat public properties juist NIET de bedoeling is.

Ik gok dat je de plank mis slaat vanuit Delphi omdat je dan de property een get en set methode kan meegeven die dan automatisch voor je gebruikt worden.
Delphi:
1
2
3
...
 property Value: String read FValue write SetValue;
...

Dat zijn echter geen events. Dat is wat extra "suiker" om met minder code / makkelijker toch hetzelfde effect te gebruiken. Bij die property in Delphi hoort ook een (private) variabele die in de set methode wordt gezet (FValie hier), en dat is nu precies waar het om draait. Dat o.a. Delphi hier leuke syntax voor heeft wil natuurlijk niet zeggen dat elke andere omgeving die niet niet heeft maar half bakken OO heeft, verre van zelfs.

En dat is nu ook gelijk 1 van de nadelen van het focussen op 1 omgeving: dingen die daar standaard inzitten zijn lang niet altijd standaard OO ;)

Ow: en wil je misschien niet zelfs enters in paragraven toevoegen? Het loopt vanzelf door naar de juiste regel

[ Voor 59% gewijzigd door Creepy op 14-05-2013 14:00 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • incaz
  • Registratie: Augustus 2012
  • Laatst online: 15-11-2022
@BoringDay: de essentie van OOP is wel iets anders dan slechts het auto-aanroepen van getters / setters on properties. (Neemt niet weg dat het een hippe feature is die ik graag zou hebben in php hoor.)

@Amras: properties zijn niet zo heel gek veel meer dan attributen. Dat onderscheid is vooral ontstaan omdat C++ en Java dat onderscheid noodzakelijk maken voor je propertyvalidation kunt doen (wat vaak een goed idee is maar in redelijk wat gevallen niet nodig.)

Het aanroepen van echo in een property getter/setter is overigens een violation van heel wat OO-principes. Ook het automatisch doorschrijven naar database of disk lijkt me geen goed idee. Het zetten van een property zou geen side effects moeten hebben buiten het object.

@OP: je ziet, discussie zat. Een andere manier van benaderen is om eerst een goed boek te kiezen en daarmee aan de gang te gaan. Omdat ik fan ben van de Head First-boeken zou dat vermoedelijk leiden tot Java (Software Development, OOA&D, Java en Design Patterns...) Zelfs al ben ik niet echt vriendjes met java als taal. (Maar tegelijkertijd - talen maken niet zoveel uit. Staar je daar niet op blind.)

Never explain with stupidity where malice is a better explanation


Acties:
  • 0 Henk 'm!

  • Amras
  • Registratie: Januari 2003
  • Laatst online: 07-05 16:22
BoringDay schreef op dinsdag 14 mei 2013 @ 13:49:
[...]


Ik zal je uitleggen waarom dit OOP incorrect is:
properties zijn een eigenschap van een object.

In een ontwikkel omgeving heb je te maken met een property inspector.
Die toont de properties met zijn waarden weer.
Op het moment van weergeven van een property wordt vanuit het object zelf de Get aangeroepen.
Op het moment van toewijzen van een waarde triggert het object zelf de Set.

Wat je hier in PHP doet is een property, de eigenschap dus, gewoon verbergen voor de buitenwereld.
Als een auto blauw is dan wil je toch ook zien dat het blauw is?
Als je de auto geel spuit wil je toch ook zien dat die geel wordt?
Ik zou het linkje over encapsulation wat ik hierboven postte eens doornemen, misschien dat het dan duidelijker wordt wat wij bedoelen. Een eigenschap van een object haal je op door middel van zijn getter, dus bijv. getKleur() in jouw voorbeeld.
incaz schreef op dinsdag 14 mei 2013 @ 13:52:
@Amras: properties zijn niet zo heel gek veel meer dan attributen. Dat onderscheid is vooral ontstaan omdat C++ en Java dat onderscheid noodzakelijk maken voor je propertyvalidation kunt doen (wat vaak een goed idee is maar in redelijk wat gevallen niet nodig.)
Er is wel degelijk een verschil tussen een public property en public attribuut, namelijk dat de eerste wel bijdraagt aan encapsulation en de tweede niet. Public attributen hoef ik niet te zien in onze source code.
Het aanroepen van echo in een property getter/setter is overigens een violation van heel wat OO-principes. Ook het automatisch doorschrijven naar database of disk lijkt me geen goed idee. Het zetten van een property zou geen side effects moeten hebben buiten het object.
Mee eens, geen side effects in properties, daar hebben ze methoden voor bedacht. :)

Acties:
  • 0 Henk 'm!

  • BoringDay
  • Registratie: Maart 2009
  • Laatst online: 07-02 16:59
Creepy schreef op dinsdag 14 mei 2013 @ 13:52:
De property inspector ken ik, erg goed zelfs, vanuit Delphi. Maar die gebruiken om aan te geven dat je public properties moet hebben die je te pas en te onpas vanuit allerlei code maar moet lezen en zetten is echt totale onzin. Lees je aub eens in over Encapsulation. Als je echt snapt wat dat is dan snap je ook dat public properties juist NIET de bedoeling is.
Zeg ik dat je in Delphi properties in public zet?
Je zet ze daar bij published, alleen de properties die niet zichbaar dienen te zijn zet je in private/protected.
Als jij een component dynamisch aanmaakt in Delphi.
En je wijst een naam aan het component toe, wat zal er dan gebeuren?

comp := TComponent.Create(AOwner);
comp.name = 'component1';
Bij comp.name wordt een trigger verstuurd en valideert of de naam niet al bestaat.
Bestaat de naam dan krijg je een melding, bestaat naam niet dan wordt de naam toegekend.

En dat is een correcte methode, of denk je nu Delphi als sinds het begin niet heeft begrepen?
Het is notabene een van de eerste visuele ontwikkel omgevingen die gebaseerd is op objecten/componenten/packages.

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 21:21

Creepy

Tactical Espionage Splatterer

Lees de rest van mijn post ook eens door, dat selectief stukjes uit een post pakken en alleen daar op regearen is niet zo tof. Het is geen trigger, en het is geen event ;) Het is syntactic sugar. Niks meer en niks minder en absoluut geen reden om omgevingen die dit niet hebben af te doen als "halfbakken OO", en dat is nu precies wat je wel doet.

[ Voor 65% gewijzigd door Creepy op 14-05-2013 14:04 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 01-05 10:36

NMe

Quia Ego Sic Dico.

Sowieso is het belachelijk om dat soort code in een trigger of event te stoppen. Je bent dan niet meer aan het doen dan een taal als C# (met goeie getter- en setter-support) te emuleren. Moet je helemaal niet willen, en daarom zou je juist in PHP en in Javascript netjes met methods moeten werken.

Maar goed, dit is intussen wel heel erg offtopic. Laten we het erop houden dat er nogal wat dingen discutabel zijn aan PHP en JS en het daarom niet bepaald de beste talen zijn om mee te beginnen.

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


Acties:
  • 0 Henk 'm!

  • incaz
  • Registratie: Augustus 2012
  • Laatst online: 15-11-2022
Amras schreef op dinsdag 14 mei 2013 @ 13:55:

Er is wel degelijk een verschil tussen een public property en public attribuut, namelijk dat de eerste wel bijdraagt aan encapsulation en de tweede niet. Public attributen hoef ik niet te zien in onze source code.
Is dat zo, ook bij een taal als C#, en zo ja wat? (Daar heb ik namelijk vrijwel geen ervaring mee.)

Never explain with stupidity where malice is a better explanation

Pagina: 1 2 3 Laatste