3 ECTS credits
75 u studietijd

Aanbieding 2 met studiegidsnummer 1023914BNW voor werkstudenten in het 1e semester met een verdiepend bachelor niveau.

Semester
1e semester
Inschrijving onder examencontract
Niet mogelijk
Beoordelingsvoet
Beoordeling (0 tot 20)
2e zittijd mogelijk
Ja
Inschrijvingsvereisten
Studenten die dit opleidingsonderdeel opnemen, moeten geslaagd zijn voor 'Structuur van computerprogramma's 1'. Studenten ingeschreven in het voorbereidingsprogramma Computerwetenschappen/Toegepaste informatica moeten geslaagd of ingeschreven zijn voor 'Structuur van computerprogramma's 1'.
Onderwijstaal
Nederlands
Faculteit
Faculteit Wetenschappen en Bio-ingenieurswetensch.
Verantwoordelijke vakgroep
Computerwetenschappen
Onderwijsteam
Wolfgang De Meuter (titularis)
Onderdelen en contacturen
18 contacturen Hoorcollege
18 contacturen Werkcolleges, practica en oefeningen
Inhoud

Dit opleidingsonderdeel introduceert de concepten van objectgericht programmeren en de vertaalslag van modellen naar implementatie (code). De programmeertaal Scala wordt gebruikt om deze concepten te concretiseren. De volgende onderwerpen komen aan bod:

-       Types, type-inferencing

-       Classes – objects

-       The Scala type hierarchy

-       Constructors, constructor arguments, parametric fields

-       Class hierarchies

-       Polymorfism

-       Overriding – overloading, Dynamic binding

-       Visibility

-       Singleton objects – companion objects

-       Type parameters

-       Variance, co-variance, contra-variance

-       Lower and upper bounds for type parameters

-       Traits

-       Mix-in Compositie versus Multiple Inheritance

-       Pattern Matching

-       Equality

-       Case Classes, Case Objects & Enumerations

-       Error and Exception Handling

-       Packages

-       OO klasse diagrammen mappen op OO implementaties

-       Toestandsdiagrammen implementeren

Studiemateriaal
Digitaal cursusmateriaal (Vereist) : Scala by Example, Martin Odersky
Handboek (Aanbevolen) : Programming in Scala, Updated for Scala 2.12, Martin Odersky, Lex Spoon, and Bill Venners, 3de, Artima, 9780981531687, 2016
Bijkomende info

Bijkomende informatie (assistenten, contactinformatie, inleverdata, oefeningen, opdrachten ...) kan gevonden worden via het leerplatform.

Het materiaal (transparanten) dat tijdens de hoorcolleges gebruikt wordt is beschikbaar via het leerplatform. 

 

Leerresultaten

Algemene competenties

Kennis en het inzicht:

- De student kent de belangrijkste OO programmeerconcepten en kan deze uitleggen en illustreren

- De student kan de realisatie van de belangrijkste OO programmeerconcepten in de programmeertaal Scala uitleggen en illustreren

- De student kent de belangrijkste patronen om een OO model te mappen op een OO implementatie en kan deze uitleggen en illustreren

 

Toepassing van de kennis en het inzicht:

- De student kan met de hierboven vermelde technieken en principes in de praktijk goede programma’s schrijven.

Oordeelvorming:

- De student kan de meest geschikte implementatie voor een welbepaalde toepassing kiezen.

- De student kan de gebruikte keuzes verantwoorden en kritisch beoordelen.

Communicatie:

- De student kan zich duidelijk schriftelijk uitdrukken over de hierboven opgesomde onderwerpen en zelf ontwikkelde programma’s.

Leervaardigheden:

- De student kan vertrekkend van de opgedane basiskennis, andere  object georiënteerde programmeertalen zelfstandig leren, begrijpen en toepassen.

Beoordelingsinformatie

De beoordeling bestaat uit volgende opdrachtcategorieën:
Examen Andere bepaalt 100% van het eindcijfer

Binnen de categorie Examen Andere dient men volgende opdrachten af te werken:

  • Examen andere met een wegingsfactor 1 en aldus 100% van het totale eindcijfer.

Aanvullende info mbt evaluatie

Het eindcijfer is een gewogen gemiddelde van 2 onderdelen:

(1) Tijdens de onderwijsperiode dient een project uitgewerkt te worden (toepassen van kennis) waarvoor ook een rapport moet opgeleverd worden. Het project is verplicht en telt voor 40% van het eindcijfer.

(2) Het examen is een schriftelijk examen en telt voor 60% van het eindcijfer. Dit examen bestaat uit oefeningen (toetsen van het kunnen toepassen) en theoretische vragen (toetsen van kennis en inzicht).

De student moet beide onderdelen van het examen afleggen en op elk onderdeel minstens 7/20 halen alvorens als eindcijfer het gewogen gemiddelde wordt toegekend. Indien beide onderdelen worden afgelegd maar op minstens één onderdeel wordt minder dan 7/20 gehaald is het eindcijfer het minimum van beide onderdelen.

Toegestane onvoldoende
Kijk in het aanvullend OER van je faculteit na of een toegestane onvoldoende mogelijk is voor dit opleidingsonderdeel.

Academische context

Deze aanbieding maakt deel uit van de volgende studieplannen:
Bachelor in de computerwetenschappen: Standaard traject
Bachelor in de wiskunde en Data Science: Standaard traject
Bachelor in de artificiële intelligentie: Standaard traject
Educatieve master in de wetenschappen en technologie: biologie (120 ECTS, Etterbeek)
Educatieve master in de wetenschappen en technologie: geografie (120 ECTS, Etterbeek)
Educatieve master in de wetenschappen en technologie: fysica (120 ECTS, Etterbeek)
Educatieve master in de wetenschappen en technologie: wiskunde (120 ECTS, Etterbeek)
Educatieve master in de wetenschappen en technologie: ingenieurswetenschappen (120 ECTS, Etterbeek)
Educatieve master in de economie: standaard traject (90 ECTS, Etterbeek)
Voorbereidingsprogramma Master of Science in de ingenieurswetenschappen: computerwetenschappen: Traject C (Ind Ing, 61 ECTS)
Voorbereidingsprogramma Master of Science in de ingenieurswetenschappen: computerwetenschappen: Traject A (76 ECTS)
Voorbereidingsprogramma Master of Science in de ingenieurswetenschappen: computerwetenschappen: Traject B (65 ECTS)
Voorbereidingsprogramma Master of Science in de toegepaste informatica: Traject C (Ind Ing, 58 ECTS)
Voorbereidingsprogramma Master of Science in de toegepaste informatica: Traject A (58 ECTS)
Voorbereidingsprogramma Master of Science in de toegepaste informatica: Traject B (52 ECTS)