Deze website gebruikt cookies (en daarmee vergelijkbare technieken) om het bezoek voor u nog makkelijker en persoonlijker te maken. Met deze cookies kunnen wij en derde partijen uw internetgedrag binnen en buiten onze website volgen en verzamelen.
Hiermee kunnen wij en derde partijen advertenties aanpassen aan uw interesses en kunt u informatie delen via social media.
Klik op 'Ik ga akkoord' om cookies te accepteren en direct door te gaan naar de website of klik op om uw voorkeuren voor cookies te wijzigen. Bekijk onze privacyverklaring voor meer informatie.
$altText
Geavanceerd objectgeoriënteerd programmeren
Informatica en informatiekunde | 5 EC | Voor dit product gelden ingangseisen
Code IB0902
Prijsindicatie € 324
Deze cursus heeft een vast startmoment. Kijk in het Jaarrooster wanneer de cursus van start gaat en wanneer de begeleiding is ingeroosterd.

Algemeen

Inhoud

De cursus bestaat uit vier blokken.
Het grootste deel van het eerste blok is gewijd aan het typesysteem van Java. Ten eerste wordt overerving behandeld. Dynamische binding van methoden is daarbij een sleutelbegrip. Vervolgens komen abstracte klassen en interfaces aan de orde, begrippen die een belangrijke rol spelen bij het definiëren van zogeheten ontwerppatronen: schematische oplossingen voor veelvoorkomende problemen. Het blok eindigt met een korte behandeling van generics: de uitbreiding van Java die het gebruik van typeparameters mogelijk maakt.

Het tweede blok voltooit de behandeling van de taalconcepten van Java. De eerste twee leereenheden gaan over fouten die kunnen optreden in programma's en hoe daarmee om te gaan. Leereenheid 6 bekijkt welke soorten fouten er zijn, wat er gedaan moet worden om ze op te merken (testen) en hoe hun oorzaak opgespoord kan worden (debuggen). Java biedt een mechanisme om bepaalde soorten fouten af te handelen (exception handling). Dit is het onderwerp van leereenheid 7. Leereenheid 8 ten slotte biedt een korte inleiding in het programmeren met threads, waardoor parallellisme mogelijk wordt. We geven aan hoe een programma met meerdere threads gemaakt kan worden, maar laten ook zien dat u zich daarmee op glad ijs begeeft.

Het onderwerp van blok 3 is gegevensopslag. Ingegaan wordt op de koppeling van een Java-programma met een relationele database via JDBC (Java Database Connectivity).

Het laatste blok behandelt de constructie van gebruikersinterfaces. In twee leereenheden wordt ingegaan op het werken met Swing-componenten; ook het event handling-mechanisme komt daarbij aan de orde. De laatste leereenheid beschrijft het Observer-patroon, een veelgebruikt en belangrijk ontwerppatroon dat het mogelijk maakt om de domeinlaag geheel onafhankelijk te houden van de gebruikersinterfaces, ook wanneer het initiatief voor wijzigingen in die interfaces bij de domeinlaag ligt. Tevens komt het Mode-View-Controller patroon kort aan de orde.

Leerdoelen
Na het volgen van deze cursus wordt verwacht dat u:
– de syntaxis en semantiek van een deel van de taal Java kent;
– met name begrip heeft van overerving (inclusief het gebruik van abstracte klassen en interfaces), van exception handling en van threads;
– eenvoudige generieke klassen kunt definiëren;
– begrip heeft van de wijze waarop in objectgeoriënteerde programma’s gebruikgemaakt kan worden van programmeren tegen een interface;
– een eenvoudig concurrent programma kunt programmeren;
– de manier kent waarop persistentie van gegevens gerealiseerd kan worden door middel van koppeling met databases (package java.sql) en deze ook kunt toepassen;
– in staat bent om met behulp van de package javax.swing zelf een grafische gebruikersinterface te programmeren;
– het observerpatroon kunt toepassen.

Aanmelden

Ingangseisen

Aanmelden voor deze cursus kan pas nadat u de cursus Objectgeoriënteerd programmeren (IB1102) heeft afgerond of daarvoor bent ingeschreven of vrijgesteld conform uw online studiepad.

Toelichting aanmelden

Deze cursus start 10 februari 2020. We adviseren om uiterlijk zondag 26 januari 2020 hiervoor aan te melden zodat u tijdig het eventuele cursusmateriaal ontvangt, toegang heeft tot de leeromgeving en (indien van toepassing) ingedeeld kunt worden in een studiegroep. Bij aanmelding na 26 januari 2020 kunnen we dit niet garanderen. Aanmelden is mogelijk tot en met 9 februari 2020.

Deze cursus wordt éénmaal per academisch jaar aangeboden.

Voorkennis

De cursus is een direct vervolg op Objectgeoriënteerd programmeren (IB1102) en kan pas bestudeerd worden als deze cursus is afgerond, of als op andere wijze voldoende basiskennis van Java en objectoriëntatie is verworven.
Ervaring met objectgeoriënteerd analyseren en ontwerpen (bijvoorbeeld via de gelijknamige cursus IB1002) is gewenst.

Begeleiding

Begeleidingsvorm

Deze cursus heeft een vast startmoment. Kijk in het Jaarrooster wanneer de cursus van start gaat en wanneer de begeleiding is ingeroosterd.

Er zijn vijf online begeleidingssessies via Collaborate en standaardbegeleiding via de discussiegroep.

Begeleidingsbijeenkomsten


Online bijeenkomsten
Kwartiel 3 - begeleider: dhr. dhr. drs. B. van Gastel
1. wo 19-02-2020 / 19.30-21.00 uur
2. wo 04-03-2020 / 19.30-21.00 uur
3. wo 18-03-2020 / 19.30-21.00 uur
4. wo 01-04-2020 / 19.30-21.00 uur
5. wo 15-04-2020 / 19.30-21.00 uur

Docenten

Dhr. dr. ir. A. Kok, dhr. dr. ir. H. Passier, dhr. dr. S. de Gouw, dhr. dr. B. van Gastel en dr. ir. F. Tempelman.

Bereikbaarheidsoverzicht

Bereikbaarheidsinformatie docenten/examinatoren

Tentamen

Tentamenvorm

Regulier schriftelijk tentamen bestaande uit open vragen (ov) en een opdracht.

Tentamentoelichting

U dient zelf tijdig aan te melden voor een tentamen.

Tentamendata

Schriftelijk tentamen: 09-07-2019, 18-11-2019, 20-04-2020, 07-07-2020.
Opdracht: volgens afspraak.

Tentamenhulpmiddelen

Een 'schoon' verklarend Nederlands woordenboek (op eigen risico)
Een schoon exemplaar van het gedrukte cursusmateriaal

Meer info

Meer informatie

Voor een inkijkje in de cursus, ga naar de snapshot van de voorgaande cursus (T42241 Geavanceerd objectgeoriënteerd programmeren in Java 2).

Cursusmateriaal

Het cursusmateriaal bestaat uit drie schriftelijke delen. Ander materiaal, zoals programmeerbouwstenen en oefententamens, worden via de cursussite uitgeleverd.

Mediagebruik

De cursus gaat ervan uit dat u beschikt over een recente versie van de ontwikkelomgeving Eclipse en Java versie 8. Om Eclipse te kunnen draaien, heeft u een pc nodig met Windows. Eclipse is ook beschikbaar voor Linux, Solaris en MacOS. De Open Universiteit geeft echter geen ondersteuning bij het gebruik van deze besturingssystemen.

Digitale leeromgeving

Als student (na inschrijving) kunt u via de cursussite in de digitale leeromgeving naar de discussiegroepen. Hier kunt u met medestudenten en begeleider informatie uitwisselen en discussiëren over de leerstof.