Oud 19-11-2002, 19:35
marreco_k
marreco_k is offline
Goeiedag,
Ik zit in 6 VWO, en doe m'n profielwerkstuk over Java. Heb het al bijna af, moet alleen nog even een deelvraag beantwoorden. Die luidt: Wat is Object georienteerd programmeren (OOP)?

Zelf ben ik ook aardig n00b met Java, en dus al helemaal met dit. Het schijnt al vrij lastig uit leggen zijn voor een leek. Heb al wel wat op i'net gevonden, waaronder het verhaal dat je het kan vergelijken met een tv. Je kan o.a. de opdracht geven om van kanaal te wisselen. Hoe dit verder in de tv werkt hoe je niet te weten, maar je maakt er wel gebruik van.

Wie kan me helpen?

Gr. Marco
Met citaat reageren
Advertentie
Oud 19-11-2002, 20:58
Verwijderd
Ik heb zelf nog nooit gehoord van OOP, maar heb je hier wat aan?

http://www.cs.vu.nl/~aefeddy/oop.html
Met citaat reageren
Oud 19-11-2002, 21:26
marreco_k
marreco_k is offline
Citaat:
henri schreef:
Ik heb zelf nog nooit gehoord van OOP, maar heb je hier wat aan?

http://www.cs.vu.nl/~aefeddy/oop.html
Mjah.. kan ik op zich wel gebruiken.

Heb inmiddels op Helpmij.nl ook al ff wat gepost, en daar staat ook al een aardig verhaal. Zie http://www.helpmij.nl/forum/showthre...threadid=94788

Iemand daar nog wat aan toe te voegen??
Met citaat reageren
Oud 20-11-2002, 00:53
Verwijderd
Urm.. dit soort dingen zou ik eigenlijk moeten weten, maar ja. Ik kan je geen heldere definitie geven maar ik kan proberen te omschrijven wat ik denk dat het is. Je kunt hieraan geen rechten ontlenen.

OO programmeren is gebruikersvriendelijker dan 'normaal' programmeren. OO programmeren stelt de ontwikkelaar in staat om ingewikkelde programma's te bouwen met een ontwikkeltool met een relatief intuitieve interface en een 'what you see is what you get' principe. Vergelijk het oude MSDOS maar eens met Windows, bij Windows zie je direct wat je doet (of wat je doet ook écht is wat je doet laat ik even buiten beschouwing).

Het is daarom best logisch dat de OO programeertools, (worden ook vaak aangeduid als 4GL (fourth generation language (denk ik)) steeds populairder worden.
Met citaat reageren
Oud 20-11-2002, 01:58
Manuzhai
Avatar van Manuzhai
Manuzhai is offline
Citaat:
eXo schreef:
Urm.. dit soort dingen zou ik eigenlijk moeten weten, maar ja. Ik kan je geen heldere definitie geven maar ik kan proberen te omschrijven wat ik denk dat het is. Je kunt hieraan geen rechten ontlenen.

OO programmeren is gebruikersvriendelijker dan 'normaal' programmeren. OO programmeren stelt de ontwikkelaar in staat om ingewikkelde programma's te bouwen met een ontwikkeltool met een relatief intuitieve interface en een 'what you see is what you get' principe. Vergelijk het oude MSDOS maar eens met Windows, bij Windows zie je direct wat je doet (of wat je doet ook écht is wat je doet laat ik even buiten beschouwing).

Het is daarom best logisch dat de OO programeertools, (worden ook vaak aangeduid als 4GL (fourth generation language (denk ik)) steeds populairder worden.
Met alle respect; je lult uit je nek. Je hebt het hier puur over 4GL, en dat heeft in principe nix te maken met OOP. 4GL staat voor een manier om programma's op een intuitievere manier te maken, door bijvoorbeeld grafisch te werk te gaan (slepen met plaatjes en het visueel leggen van verbinding), of bij het gebruik van talen die heel erg lijken op natuurlijke taal (zoals SQL).

OOP is echter iets geheel anders. Bij Object-Oriented Programming schrijf je je programma's via classes. Deze classes (het ontwerp van een dergelijk programma gebeurt vaak in UML) vormen een abstract onderdeel van je programma. Hierbij kun je de code in de classes gebruiken zonder dat je verder precies weet wat deze code inhoudt.

Object-Oriented Programming is ontstaan vanuit de gedachte dat de code die tot dan toe geproduceerd werd te weinig werd hergebruikt. Belangrijk bij OOP is dan ook dat je je code zo veel mogelijk in standaard-blokken verdeelt, die je vervolgens kunt hergebruiken in veel verschillende projecten (of die door andere developers in hun programma's gebruikt kunnen worden).

Het is niet zo gemakkelijk uit te leggen, maar http://java.sun.com/docs/books/tutor...ts/object.html geeft wel een redelijk overzichtje. De pagina die hierboven werd vermeld vind ik zelf niet erg informatief...
__________________
Slechts beschikbaar via naamzoek/privebericht.
Met citaat reageren
Oud 20-11-2002, 10:14
Verwijderd
Ik weet niet of iemand het programma Lab-View kent? Het word in ieder geval veel gebruikt bij bedrijven om machines te programeren, maar het is ook simpelweg plaatjes slepen enzo..

Is dat dan ook OOP?
Met citaat reageren
Oud 20-11-2002, 10:39
Manuzhai
Avatar van Manuzhai
Manuzhai is offline
Citaat:
McLaren schreef:
Is dat dan ook OOP?
Zou kunnen, maar het is in ieder geval 4GL.
__________________
Slechts beschikbaar via naamzoek/privebericht.
Met citaat reageren
Oud 20-11-2002, 14:35
Verwijderd
Citaat:
Manuzhai schreef:
Met alle respect; je lult uit je nek.
Ik disclaimde mezelf al door te zeggen ' hier kunnen geen rechten aan worden ontleend' . Ik dacht dat 4GL en OOP op hetzelfde neer kwam.
Met citaat reageren
Oud 20-11-2002, 14:45
a new noise
a new noise is offline
bij OOP ga je inderdaad, zoals al gezegd en zoals in de naam staat, Object georienteerd (systematisch) te werk. Je code gaat dus niet van boven helemaal naar beneden maar veel stukjes code zullen terugwijzen op een class of ander soort code-deel.
__________________
The best thing since canned vegetables.
Met citaat reageren
Oud 20-11-2002, 14:46
a new noise
a new noise is offline
een link ook nog : http://www.sum-it.nl/ooplinks.html
__________________
The best thing since canned vegetables.
Met citaat reageren
Oud 20-11-2002, 20:40
McMotion
Avatar van McMotion
McMotion is offline
ai ai ai.. als je je profielwerkstuk over Java al afhebt, en je weet nog niet wat object georienteerd programmeren is dan kan je rekenen op een ZWARE onvoldoende

maargoed... ik geloof dat je al vrij veel info hebt gekregen hier... alleen wat ik nog niet heb gezien is het belangrijkste principe van object georienteerd programmeren: data hiding.. data hiding betekent dat je data die niet essentieel is voor een bepaalde eenheid programmatuur (bijvoorbeeld een library, een object, of een package) ook niet beschikbaar stelt voor andere eenheden... je de koppeling tussen twee gedeeltes zo minimaal mogelijk te houden zodat je minder afhankelijk bent van de implementatie van een ander deel (noem maar ergens de termen lage koppeling en hoge cohesie op in je verslag )... dit maakt het veel uitbreidbaarder
object georienteerd programmeren is heel erg vanuit dit oogpunt bedacht, en een goed ontwerp laat objecten niet in elkaar's geheugen snuffelen; alle communicatie gebeurt via functies of properties in plaats van direct via variabelen (globale variabelen moet je al niet eens over beginnen in het bijzijn van pro-oo-luitjes )
wat ook belangrijk is, zijn de concepten klasse en object.. een klasse is een verzamelnaam voor objecten die hetzelfde zijn, bijvoorbeeld strijkijzer of voorbinddildo.. objecten zijn gewoon een representatie van een object in reallife; ze hebben verschillende eigenschappen, maar ze kunnen dezelfde dingen doen
__________________
[AvatarDraw(c) v1.0 is uit de lucht (en per ongeluk van mijn hardeschijf verdwenen tijdens het weggooien ervan
Met citaat reageren
Oud 20-11-2002, 20:43
McMotion
Avatar van McMotion
McMotion is offline
Citaat:
a new noise schreef:
Je code gaat dus niet van boven helemaal naar beneden
kan prima hoor.. object georienteerd wil niets zeggen over de werkwijze
__________________
[AvatarDraw(c) v1.0 is uit de lucht (en per ongeluk van mijn hardeschijf verdwenen tijdens het weggooien ervan
Met citaat reageren
Oud 20-11-2002, 22:29
marreco_k
marreco_k is offline
Citaat:
McMotion schreef:
ai ai ai.. als je je profielwerkstuk over Java al afhebt, en je weet nog niet wat object georienteerd programmeren is dan kan je rekenen op een ZWARE onvoldoende
Nou.... reken maar van niet hoor! Kan jij vloeiend Spaans spreken in 80 uur (wat er aan besteed moet worden)?? Dacht het niet. Man, het hele werkstuk (53 pagina's) is slechts een inleiding op Java!

[off-topic]
Bovendien is hij ook een leek wat beterft Java, en zal dus echt niet gaan klagen. Bovendien heeft hij een zwaar relaxt scoresysteem, per contactmoment krijg je al punten. Het ziet er ook strak en compleet uit, dus ik vind het gezegend.
[/off-topic]

Maar ik kan me er wel een aardig beeld van vormen, en mocht hij wat gaan vragen, dan sta ik niet met een mond vol tanden. Bovendien is heb ik er met de fiets van Helpmij.nl en het antwoord van Manuzhai (dat je de code moet hergebruiken) er een aardig verhaal van kunnen breien!

Allemaal bedankt!
Met citaat reageren
Oud 20-11-2002, 23:19
Verwijderd
De object-georiënteerde methode
Met citaat reageren
Oud 21-11-2002, 00:34
McMotion
Avatar van McMotion
McMotion is offline
Citaat:
marreco_k schreef:
Nou.... reken maar van niet hoor! Kan jij vloeiend Spaans spreken in 80 uur (wat er aan besteed moet worden)?? Dacht het niet. Man, het hele werkstuk (53 pagina's) is slechts een inleiding op Java!
nee okay misschien een beetje overdreven; een zware onvoldoende maar aangezien Java helemaal is gebaseerd op OOP, en je niet anders KUNT dan object georienteerd programmeren onder Java... vind ik het best knap

ik kan geen vloeiend spaans leren spreken in 80 uur, maar ik zou er een stuk dichter bij in de buurt komen als ik eerst leerde wat zinnen, werkwoorden, en vervoegingen waren
__________________
[AvatarDraw(c) v1.0 is uit de lucht (en per ongeluk van mijn hardeschijf verdwenen tijdens het weggooien ervan
Met citaat reageren
Oud 21-11-2002, 01:24
Manuzhai
Avatar van Manuzhai
Manuzhai is offline
Citaat:
******** schreef:
De object-georiënteerde methode
Alleen jammer dat je C++ gebruikt om het te demonstreren... Maar goed, over een dag of wat kun je met C# gaan spelen.
__________________
Slechts beschikbaar via naamzoek/privebericht.
Met citaat reageren
Oud 21-11-2002, 08:24
a new noise
a new noise is offline
Citaat:
McMotion schreef:
kan prima hoor.. object georienteerd wil niets zeggen over de werkwijze
ok , maar hoeft niet
__________________
The best thing since canned vegetables.
Met citaat reageren
Oud 21-11-2002, 09:55
Verwijderd
Citaat:
Manuzhai schreef:
Alleen jammer dat je C++ gebruikt om het te demonstreren... Maar goed, over een dag of wat kun je met C# gaan spelen.
Ghehe

En jij binnenkort ook als alles goed gaat
Met citaat reageren
Ads door Google
Oud 21-11-2002, 19:41
marreco_k
marreco_k is offline
Citaat:
McMotion schreef:
...maar ik zou er een stuk dichter bij in de buurt komen als ik eerst leerde wat zinnen, werkwoorden, en vervoegingen waren
Je ziet het goed ja. Nu leer ik wat methodes, klassen, overerving, interfaces, packages e.d. zijn en nu ga ik het meer als een geheel zien.
Maar ach, hij was al zeer tevreden over de versies tussendoor, dus schijt echt geen 7 kleuren als ik het terug krijg! Bovendien heb ik zoiezo al een 4,6 van de mogelijke 5,2.
Met citaat reageren
Oud 23-11-2002, 17:44
Kozak
Avatar van Kozak
Kozak is offline
Even een iets makkelijkere methode om OOP te begrijpen.
Een object is een opzichzelfstaand stukje software dat is opgemaakt uit een blauwdruk. Het moet een realistisch object nabootsen (zoals in het echte leven), het heeft dus gedrag en waarden. Gedrag = functions (methods in Java) en waarden zijn gewoon variabelen.
Bijvoorbeeld het object hond zou bijvoorbeeld waarden (eigenschappen) hebben:
kleur: bruin
haarsoort: rossig
en gedrag:
hond zoekt eten
hond blaft

Een praktisck voorbeeld van hoe dit in een spel zou gaan. STel je speelt Age of Empires, en je maakt wat mannetjes aan. In plaats van een grote array te maken waar elk poppetje instaat:

{1,2,3} = {xcoord,ycoord,life}
En dan met honderd poppetjes (een array met 3*honderd = 300 slots), je kunt je voorstellen dat dan onnodig verspilde ruimte of een 'onrealistische' nabootsing van de werkelijkheid is.

Bij OOP zou je dat op te lossen door gewoon het object MAN
te creeren van de blauwdruk 'man' elk object heeft dezelfde gedragspatronen maar de waardes zijn verschillend. Dus ze kunnen andere haarkleur en coordinaten hebben. Het zijn dus op zichzelfstaande stukjes software geworden. En je kunt zoveel poppetjes er van creeren als je wilt .
__________________
Een goed lid verslapt niet.
Met citaat reageren
Oud 21-12-2002, 15:15
marreco_k
marreco_k is offline
Woei!
Hij had er een 8,8 voor gegeven! Het zag er allemaal verzorgd uit, was informatief e.d. Hij had het ook aan z'n broer laten lezen (die al wel wat van Java af wist) en die vond 't ook goed.

Weet iemand of dat cijfer toevallig ook op je examen staat? Vast niet, tis een goed cijfer...

Mijn dank is groot aan jullie allen...
Met citaat reageren
Oud 23-12-2002, 00:34
McMotion
Avatar van McMotion
McMotion is offline
Citaat:
Kozak schreef:
Bij OOP zou je dat op te lossen door gewoon het object MAN
te creeren van de blauwdruk 'man' elk object heeft dezelfde gedragspatronen maar de waardes zijn verschillend. Dus ze kunnen andere haarkleur en coordinaten hebben. Het zijn dus op zichzelfstaande stukjes software geworden. En je kunt zoveel poppetjes er van creeren als je wilt .
maar waar laat je de references naar je objecten dan?? niet in een array??
__________________
[AvatarDraw(c) v1.0 is uit de lucht (en per ongeluk van mijn hardeschijf verdwenen tijdens het weggooien ervan
Met citaat reageren
Advertentie
Reageren

Topictools Zoek in deze topic
Zoek in deze topic:

Geavanceerd zoeken

Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar

Soortgelijke topics
Forum Topic Reacties Laatste bericht
Software & Hardware [Server-side scripting] PHP of JSP?
DZHAW
45 16-07-2007 16:06
Software & Hardware [Alg] Programmeren op Linux
marino
28 31-10-2005 18:45
Verhalen & Gedichten [verhaal]schrijftstijl
T_ID
10 28-10-2005 22:52
Software & Hardware [Alg] Microsoft & beveiligingsproblemen
Dr HenDre
33 17-01-2005 17:24
Software & Hardware [Programmeren] Welke taal zal ik gaan leren?
forum.scholieren.com
46 24-11-2002 09:41


Alle tijden zijn GMT +1. Het is nu 09:08.