Programmeren in Java 2



Vergelijkbare documenten
Modulewijzer tirprog02/infprg01, programmeren in Java 2

Programmeren in Java 1

Modulewijzer Tirdat01

Programmeren in Java 3

Modulewijzer tirprog03, programmeren in Java 3

Matrix- en vectorrekening

Datawarehousing BIM. Modulecode: BIMDTB06 Modulehouder: H.D.A. de Wit Publicatiedatum: mei 2014 Studiejaar: Studielast: 2 punten

Programmeren in Java

Marketing met Interactieve Media

Datatypes Een datatype is de sort van van een waarde van een variabele, veel gebruikte datatypes zijn: String, int, Bool, char en double.

Media Outlook 2 HOGESCHOOL ROTTERDAM / CMI CDMMOU02-2. Aantal studiepunten:2 Modulebeheerder: Ayman van Bregt. Goedgekeurd door:

Studiewijzer. Bachelor Informatica. Inleiding Programmeren Studiejaar en semester: jaar 1, semester 1 (blok 1)

HOGESCHOOL ROTTERDAM / CMI

HOGESCHOOL ROTTERDAM / CMI

Programmeren in C++ (deel 1)

Objectgeorïenteerd werken is gebaseerd op de objecten die door het systeem gemanipuleerd worden.

HOGESCHOOL ROTTERDAM / CMI

Programmeren in Java 3

Programmeren met Java

Modulewijzer InfPbs00DT

Vereiste kennis. 1 Java-editor. 2 Het compileren van een programma

Vakgroep CW KAHO Sint-Lieven

Studiewijzer BACHELOR KUNSTMATIGE INTELLIGENTIE EXTRA KEUZENVAK VAK: C++ PROGRAMMEERMETHODEN

HOGESCHOOL ROTTERDAM MODULEWIJZER RIVBEVP1K7

Overerving & Polymorfisme

Inhoud. Introductie tot de cursus

HOGESCHOOL ROTTERDAM

HOGESCHOOL ROTTERDAM / CMI. Organiseren zonder Organisaties MODULEWIJZER MEDBV201D

Design research and use context

Java. Basissyllabus. Egon Pas

Studiewijzer Inleiding Digitale Techniek, versie 1.6, , J.E.J. op den Brouw

Vakcode: VTMMEM10 EC: 2. Jaar 3. Periode 1, 2, 3, 4

Inleiding programmeren

Tentamen Imperatief en Object-georiënteerd programmeren in Java voor CKI

tot oplevering (thuis e maken met ondersteuning via forum) Cursus Moodle, boek, internet

Hoofdstuk 1: Inleiding. Hoofdstuk 2: Klassen en objecten Datahiding: afschermen van implementatiedetails. Naar de buitenwereld toe enkel interfaces.

Vakgebied(en) Bedrijfsadministratie

Modelleren en Programmeren

Modulebeschrijving FINBAD0414 COLLEGEJAAR 09/10

Zelftest Programmeren in Java

Introductie tot de cursus

Onderwijseenheid INLMIC Inleiding microcontrollers

Tentamen Object Georiënteerd Programmeren TI januari 2013, Afdeling SCT, Faculteit EWI, TU Delft

Inhoud introductie. Introductie tot de cursus

Modulebeschrijving FINSLC0108

MODULEWIJZER TIRCPS01 Computersystemen 1

MODULEBESCHRIJVING FFEBLR0111

HOGESCHOOL VAN AMSTERDAM Informatica Opleiding. CPP 1 van 10

HBO5 Informatica Netwerkbeheer (90 studiepunten) In deze module leer je projecten op te stellen en te programmeren in de VB.NET-omgeving.

Abstracte klassen & Interfaces

Lineaire Algebra voor E (VKO)

Kleine cursus PHP5. Auteur: Raymond Moesker

APPLICATIEBOUW 1E COLLEGE: INTRODUCTIE. Onderdeel van SmartProducts

Programmeren in Java les 3

ECTS fiche. Module info. Evaluatie. Gespreide evaluatie OPLEIDING. Handelswetenschappen en bedrijfskunde HBO Informatica

Inhoud. Introductie tot de cursus

MODULEHANDLEIDING BM- Succesvolle Organisaties

Universiteit van Amsterdam FNWI. Voorbeeld van tussentoets Inleiding programmeren

Communicatie voor juristen. mevrouw drs. D. van der Wagen. Communicatie voor juristen. Beschrijving en doel van dit beroepsproduct

VI. Klassen en objecten

Studiewijzer Keuzedeel Verdiepingsoftware (AO)

Informatica. Deel II: les 1. Java versus Python. Jan Lemeire Informatica deel II februari mei Parallel Systems: Introduction

Minor in het buitenland Mogelijkheden bij de opleiding Geneeskunde

Modulehandleiding. voorjaar 2017

Studiewijzer Digitale Systeemengineering 1 (E-DIGSE1-13) 3 studiepunten

HOGESCHOOL ROTTERDAM

Tentamen Object Georiënteerd Programmeren TI oktober 2014, Afdeling SCT, Faculteit EWI, TU Delft

public Paneel() { knop = new JButton( Klik ); knop.addactionlistener( new KnopHandler() ); tekstvak = new JTextField(10); add(knop); add(tekstvak);

Programmeren in C ++ les 4

APPLICATIEBOUW 1E COLLEGE: INTRODUCTIE. Onderdeel van SmartProducts

Modulebeschrijving FFEGBE /2012

Programmeren in C# Interfaces. Hoofdstuk 23

Hoorcollege 1 datavisualisatie

MODULEBESCHRIJVING Databases DBS1

Modulebeschrijving FINSLC0106

Modelleren en Programmeren

CURSUSBESCHRIJVING Deel 1

eerste voorbeelden in Java

Uitwerking Aanvullend tentamen Imperatief programmeren Woensdag 24 december 2014, uur

Cursusbeschrijving FFEGBE0232

Verantwoording van de te bezoeken les

Inhoud. Introductie tot de cursus

Informatica. Objectgeörienteerd leren programmeren. Van de theorie met BlueJ tot een spelletje met Greenfoot... Bert Van den Abbeele

Vergelijking Oracle certificering voor Java en het CPP Gecertificeerd Javaprogrammeur van de Open Universiteit

Modulehandleiding IMOVGM60M4: Overheid en Vastgoed

IMP Uitwerking week 13

Modelleren en Programmeren

Modelleren en Programmeren

Inleiding Staats- en Bestuursrecht. ISBE de heer mr. G. van Keeken. Rechtsvinding Staats- en Bestuursrecht

IORE-1AR (Inleiding Ondernemingsrecht) IORE-1AE (Economie voor Juristen) IORE-1AR: de heer mr. S. Boelens IORE-1AE: de heer R.

Inhoud. Introductie tot de cursus

Transcriptie:

/ CMI Programmeren in Java 2 Tinpro01-2 Aantal studieunten: 2 ects Modulebeheerder: Wessel Oele Goedgekeurd door: (namens toetscommissie) Datum: Tinpro01-2 12 november 2015

Inhoudsopgave 1 Algemene omschrijving 3 1.1 Inleiding....................................... 3 1.2 Relatie met andere onderwijseenheden....................... 3 1.3 Leermiddelen..................................... 3 2 Programma 4 3 Toetsing en beoordeling 4 3.1 Procedure...................................... 4 4 Bijlage 1: Toetsmatrijs 6 5 Bijlage 2: Voorbeeldtoets 7 6 Bijlage 3: Studielast (normering in ecs) 9 Tinpro01-2 12 november 2015 1

Modulebeschrijving Modulenaam: Programmeren in Java 2 Modulecode: Tinpro01-2 Aantal studiepunten en Deze module levert 2 studiepunten op, hetgeen overeenkomt met 56 uur. studiebelastingsuren: 8 120 minuten hoorcollege 8 120 minuten practicum 12 120 minuten zelfstudie Vereiste voorkennis: Werkvorm: Toetsing: Leermiddelen: Draagt bij aan competentie tinpro01-1 hoorcollege en practicum schriftelijk tentamen, gesloten boek zonder hulpmiddelen Schaum s outlines Programming with Java second edition, auteur: John R. Hubbard, uitgever: McGraw hill, ISBN: 0-07-142040-1 analyse advies ontwerp realisatie beheer gebruikersinteractie bedrijfsprocessen software 1 1 2 2 infrastructuur hardware interfacing Leerdoelen: Inhoud: Het kunnen adviseren over en analyseren, ontwerpen en realiseren van een computerprogramma op niveau 2. Het kunnen ontwerpen, schrijven, compileren en uitvoeren van een correct werkend Java programma vanuit een objectgeoriënteerde denkwijze. Het in correct Nederlands en met gebruikmaking van het juiste jargon kunnen communiceren over het objectgeoriënteerde paradigma. Classes en objecten Variabelen en referenties naar objecten (pointers) Modifiers: public, private en protected Data hiding Overloading De constructor Overerving en generalisatie/specialisatie De keywords super, static Abstracte classes en interfaces Opmerkingen: Modulebeheerder: Wessel Oele Datum: 12 november 2015 Tinpro01-2 12 november 2015 2

1 Algemene omschrijving 1.1 Inleiding In eerdere modules werd een begin gemaakt met het leren programmeren in Java. De nadruk lag bij deze module op het wennen aan de taal en het aanleren van een aantal elementaire taalconstructies zoals het werken met variabelen, if-else constructies, loops en het werken met methodes. Verder heeft de voorgaande module vooral tot doel gehad stelselmatig en gestructureerd te leren denken, alsmede het bedenken van algoritmen te ontwikkelen. In deze module wordt de nadruk niet gelegd op het bedenken van algoritmen, maar op de structuur van Java programma s. Zo zul je leren dat een Java programma is opgebouwd uit een aantal losse legostenen die objecten worden genoemd. Het zelf maken van één legosteen is in de voorgaande module op basaal niveau aangeleerd. In deze module ga je leren hoe je kunt werken met grote aantallen legostenen en zul je zien hoe je een verzameling verschillende stenen in elkaar kunt klikken. Net als met echt lego kun je niet zomaar iedere steen op iedere andere steen klikken. Er zijn regels, waarin is vastgelegd wat kan en wat niet kan. Deze module laat zien hoe die regels in elkaar zitten en waar je rekening mee moet houden bij het ontwerpen van een programma. Ook zul je in deze module op basaal niveau leren hoe je gebruik kunt maken van een grote verzameling kant en klare legostenen waar de hele wereld mee werkt: de Java API... De stof in deze module is aanzienlijk abstracter dan de leerstof in de vorige module. Het belangrijkste aspect om in de gaten te houden vormt het verkrijgen en behouden van overzicht. Hiermee wordt bedoeld dat er in deze module een groot aantal begrippen wordt behandeld, waarvan je precies zult moeten weten wat ze betekenen en hoe en wanneer je ze gebruikt. Wanneer je het overzicht kwijtraakt, ontstaat al snel een situatie, waarin je tegen ondoorgrondelijk taalgebruik en al even ondoorgrondelijke programmeercode aanloopt. De enige manier om dit te voorkomen is door zeer veel te oefenen en te experimenteren met kleine programma s, opdat je begrijpt hoe specifieke concepten in elkaar zitten. Oefening baart kunst 1.2 Relatie met andere onderwijseenheden Op deze module wordt voortgebouwd in de modules tinpro01-3, tinpro01-4, tinpro01-5 en diverse andere vakken, waarin verondersteld wordt het programmeren in een imperatieve en/of objectgeoriënteerde taal te beheersen. De module tinpro01-1 wordt verondersteld als voorkennis. 1.3 Leermiddelen Verplicht: Boek: Schaum s outlines Programming with Java second edition, auteur: John R. Hubbard, uitgever: McGraw hill, ISBN: 0-07-142040-1 Software: Java Development Kit (JDK) versie 6, te downloaden van http://www.javasoft. com Presentaties die gebruikt worden in de hoorcolleges (pdf): te vinden op http://med.hro. nl/oelew Tinpro01-2 12 november 2015 3

Opdrachten, waaraan gewerkt wordt tijdens het practicum (pdf): te vinden op http:// med.hro.nl/oelew Facultatief: Boek: Introduction to Java programming, auteur: Y. Daniel Liang, uitgever: Prentice Hall, ISBN:0132221586 Text editors: Emacs, VI, Jedit, Gedit, etc. 2 Programma Week Literatuur Lesinhoud Producten 1 Schaum t/m blz. 135, inleiding, classes, objecten, modifiers 2 Schaum t/m blz. 140 get- en set methodes, inleveren modifiers dracht 1 3 Schaum t/m blz. 155 constructoren, pointers, inleveren overloading dracht 2 4 Schaum t/m blz. 170 inheritance, overriding, inleveren generalisadracht 3 tie/specialisatie 5 Schaum t/m blz. 185 polymorphisme, abstracte inleveren classes dracht 3 6 Schaum t/m blz. 200 abstracte methodes, interfacedracht inleveren 4 7 Schaum t/m blz. 215 javadoc, inleiding Java inleveren a.p.i. dracht 4 8 Schaum t/m blz. 230 static, this, statische methodedracht inleveren 5 9 voorbeeldtentamen bespreking voorbeeldtentamedracht inleveren 5 10 vragenuur/inhaalles 3 Toetsing en beoordeling 3.1 Procedure Deze module wordt getoetst middels een schriftelijk tentamen (gesloten boek, zonder verdere hulpmiddelen) dat aan het einde van deze module wordt gegeven. Alvorens je aan het tentamen mag deelnemen zul je eerst in het practicum de uitwerkingen van een aantal opdrachten bij de docent of assistent moeten laten aftekenen. Deze opdrachten zijn te vinden op de website van de docent (http://med.hro.nl/oelew) Voorwaarden en uitgangspunten: Het tentamen bepaalt het eindcijfer. Met practicumopdrachten kunnen geen punten behaald worden. Tinpro01-2 12 november 2015 4

Practicumopdrachten dienen bij de practicumdocent te zijn afgetekend voor de dag, waarop het tentamen wordt afgenomen. De practicumdocent kan een deadline stellen voor het mogen inleveren van opdrachten. In de eerste les van het volgende kwartaal wordt het tentamen in zijn geheel besproken tijdens het hoorcollege. Inzage in het tentamen kan altijd: maak per email een afspraak met de docent. Het tentamen kan tijdens een collegejaar éénmalig worden herkanst. Studenten die vanwege een handicap behoefte hebben aan een groter lettertype dienen de modulebeheerder minimaal één week van te voren een email te sturen, zodat hier rekening mee kan worden gehouden. Spel- en grammaticafouten worden door de vingers gezien, tenzij het maken van een spelfout of grammaticale fout de betekenis van de zin zodanig verandert dat deze onbegrijpelijk of onjuist is. Voor deze manier van toetsen is gekozen om de volgende redenen: De programmeervaardigheid (het daadwerkelijk in een editor kunnen schrijven van een programma) wordt aangetoond middels de practicumopdrachten. Het in correct Nederlands kunnen communiceren over een progammeertaal en het, op papier, kunnen aantonen van kennis over en inzicht in de programmeertaal wordt getoetst tijdens het tentamen. Tinpro01-2 12 november 2015 5

4 Bijlage 1: Toetsmatrijs Leerdoelen Dublin descriptoren Verwijzing naar opdracht / vraag / criteria 1,2,3,4 practicumopdracht 1 t/m 5, tentamen 1 Classes en objecten, evt. herhaling diverse onderwerpen uit tinpro01-1 2 Set- en getmethodes, pointers, data-hiding, modifiers 1,2,3,4 practicumopdracht 1 t/m 5, tentamen 3 Overloading, constructor 1,2,3,4 practicumopdracht 2 t/m 5, tentamen 4 Overerving, generalisatie/specialisatie 1,2,3,4 practicumopdracht 3 t/m 5, tentamen 5 Keywords super en 1,2,3,4 practicumopdracht 5, abstract tentamen 6 Abstracte classes, polymorphisme 1,2,3,4 practicumopdracht 4 en 5, tentamen 7 Interfaces 1,2,3,4 practicumopdracht 4 en 5, tentamen Dublin-descriptoren: 1. Kennis en inzicht 2. Toepassen kennis en inzicht 3. Oordeelsvorming 4. Communicatie Tinpro01-2 12 november 2015 6

5 Bijlage 2: Voorbeeldtoets Dit tentamen bestaat uit vijf open vragen. Werk netjes en overzichtelijk; Onleesbare tekst wordt fout gerekend... Lees goed en let op de tijd. Vraag 1 Verklaar het verschil tussen private, public en protected modifiers. Beperk het antwoord tot maximaal een halve pagina. Vraag 2 Wat is het verschil tussen method overloading en method overriding? Gebruik het woord afleiding in het antwoord. (max. halve pagina) Vraag 3 Wat is een constructor? Waarom kan men zonder een constructor in een klasse op te nemen deze klasse toch instantiëren? (max. halve pagina) Vraag 4 Wat wordt bedoeld met polymorphisme? Verklaar dit begrip aan de hand van een treffend voorbeeld. Bespreek ook het gebruik van abstracte classes en abstracte methodes. (max. 1 pagina) Vraag 5a Gegeven de klasse Foo: public class Foo { private int x=1; } public Foo() { } public Foo(int _x) { x=_x; } public void print() { System.out.println("x= "+x); } Tinpro01-2 12 november 2015 7

Noteer de uitvoer van het volgende stukje code: Foo x = new Foo(); Foo y=new Foo(2); Foo z=x; x=y; x.print(); y.print(): z.print(); new Foo(3).print(); new Foo().print(); Vraag 5b Schrijf een stukje code, waarin een array van vijf Foo objecten wordt aangemaakt Voor elk Foo object geldt dat de x variabele gelijk is aan het kwadraat van de array index. Tinpro01-2 12 november 2015 8

6 Bijlage 3: Studielast (normering in ecs) aantal weken aantal lesuren van klokuren 50 minuten lesuren 10 4 33 zelfstudie leestijd aantal pagina s 3 per uur 6 per uur 120 10 per uur 12 presentaties overlegtijd uitzoektijd/research 11 niet ingeroosterde lestijd toetsen voorbereiden 3.5 toets 1.5 nabespreking 1 werkstuk,verslag,rapport,scriptie Stage, Praktijkopdracht uitzoeken overleggen schrijven voorbereiding aanwezigheid overleg Subtotaal in klokuren 56 Ruis 5% Totaal in klokuren 56 Totaal in studiepunten (ects) 2 Tinpro01-2 12 november 2015 9