Software Development fundamentals

Slides:



Advertisements
Verwante presentaties
Bedrijfsverbetering met de Code
Advertisements

Spaans voor beginners 6 7 Online Spaans leren via de beproefde SuperMemo-methode. U gaat in uw eigen tempo door de cursus, maar wordt wel zeer.
Object georiënteerd programmeren in Alice
OO Analyse in de praktijk OO Analyse in de praktijk IV OO basisregels.
Deel XI Eerste echte e-commerce applicatie 1 Internetapplicaties Deel 11: Eerste echte e-commerce applicatie: Ontwerp.
Rekenen 10 januari.
Game concept Samenvatting hoofdstuk 20 & 21. De waarde van esthetiek Het kan spelers aan trekken die het spel anders niet hadden gespeeld Het kan jouw.
Onderzoek doen een methodische aanpak
Welkom bij Immersive space, de flashles Tijdens deze lessen, leren wij je werken met het programma adobe flash.
Visie & Strategie.
Visie & Strategie.
Samenvatten Klas 4A de Foorakker.
Medmec04 Engagement.
Goederen en inkoop H6 Leveranciers Ondernemer detailhandel.
Herhalingscombinaties
Gecijferdheid 2 (Meten 1 – ME144X) week 5
Gecijferdheid 2 (Meten 1 – ME144X) week 5
Hoe maakt u de juiste keuze?. Drie populaire begrippen die bij elke demonstratie genoemd worden…
Trimester 2. Hfdst 1: e-Presentatie, master! e-Presentatie Met de hulp van Powerpoint gaan we leren hoe we een elektronische presentatie kan maken.
GUI & classes Een Gui in een class steken en het object gebruiken.
Rob Goossens De Werkomschrijving.
Briant College H2 het onderwerp. Briant College H1 De persoonsvorm vinden en zinsdeelstrepen zetten Hoe vind je de pv? -zin vragend maken -de zin van.
Programmeren. Wat is programmeren? Het schrijven van opdrachten voor de processor De processor “spreekt” machinetaal:
Windows applicatieontwikkeling
Programmeren.
– Software development fundamentals
Software Development fundamentals
Gameprogrammeren: Introductie
Gameprogrammeren: Overerving
Object georiënteerd programmeren
Vragen, wat voor vragen?.
Gameprogrammeren: Methoden
Gameprogrammeren: Overerving in Painter
Houd je aandacht erbij! Trainers: Jan de Groot Henk Torreman.
Welkom Havo 5..
Beste ath 4..
Gameprogrammeren: Abstracte klassen
Gameprogrammeren: Klassen en objecten
‘Inleiding objectgeoriënteerd programmeren met PHP’ ‘Inleiding’
EEN PLAATJE VAN Het wat, hoe en waarom van je les als startpunt voor het onderzoeken van je eigen lespraktijk 31 jan ROSA Conferentie Hanna Westbroek.
Software Development fundamentals
GAME MAKER ONLINE Les 3 / Pac-Man Michel Fiege.
ASP.NET MVC Web Development
Vergelijkingen oplossen
H2 het onderwerp.
Arjan Egges & Paul Bergervoet
Software Development fundamentals
Software Development fundamentals
ASP.NET MVC Web Development
ASP.NET MVC Web Development
ASP.NET MVC Web Development
Software Development fundamentals
– Software development fundamentals
Software Development fundamentals
Software Development fundamentals
– Software development fundamentals
– Software development fundamentals
Software Development fundamentals
De Kostprijs Why Bother?.
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Transcript van de presentatie:

Software Development fundamentals Object oriented design

inhoudsopgave Huiswerkreview, wat hebben we geleerd? Oefenen met classes ontwerpen Pong (klassikaal) Arkanoid (in de les) 2D RPG (zelfstandig/huiswerk) Huiswerkopdracht: Auto class

Object oriented design Onderdelen: Class: blauwdruk voor een object, bevat: Property: Eigenschap van een object Method: Actie van een object Met classes kunnen we nadenken over code alsof ons programma bestaat uit objecten Dat is voor ons intuitief, het lijkt op de manier waarop we omgaan met de echte wereld De vraag is: hoe weten we welke classes/objects we moeten maken, en wat erin komt?

Object oriented design Kunnen bepalen welke classes, methods en properties je nodig hebt. Kunnen koppelen van verantwoordelijkheden aan classes We hebben de lifeform opdracht gemaakt, Welke classes, properties en methodes? Wat zijn de verantwoordelijkheden van elke class?

Game loop Veel games volgen onderstaande structuur: De game loop wordt zo vaak en zo snel mogelijk herhaald. Hoe sneller de herhaling van de gameloop, hoe hoger het aantal frames per second (fps) en hoe soepeler de gameplay. Games zijn ideaal om OOP te oefenen. Onze lifeform applicatie volgt dezelfde structuur als hierboven., maar dan met een vast aantal herhalingen per seconde.

Object oriented design Hoe ontwerp je een applicatie met meerdere classes? Je kunt vaak kijken naar het probleem als een verzameling van objecten, en dan bepalen hoe je deze objecten kunt generaliseren naar classes Belangrijke vragen tijdens het ontwerpproces Welke gegevens heb ik nodig (properties/variabelen) Hoe kan ik deze gegevens logisch groeperen (classes) Welke acties/gedrag heb ik nodig (methods) Hoe verdeel ik deze over logische verantwoordelijkheden per class Door de lifeform opdracht weet je ongeveer hoe een simpele 2D game er in code uitziet… 1 oefening klassikaal, daarna 1 per groep, en 1 als huiswerk.

Classes (voorbeeld) Game/Form Paddle Ball Wat zijn de voordelen van aparte classes voor paddle en ball? Game Score1 Score2 Paddle1 Paddle2 Ball Update() < deze bevat de logica Paddle Position Velocity/Direction

Classes Game Paddle Ball Brick Game Brick Score Paddle Lives Ball Update() Position Velocity Brick

Huiswerk/opdrachten Maak eerst de opdracht ‘Auto class’ om nog een keer te oefenen met het maken van classes en objecten. Stel dat je een 2D RPG wilt ontwikkelen Welke classes, properties en methods heb je nodig? Werk dit uit, en lever de uitwerking aan het begin van de volgende les in. Bestudeer ook pagina 33 t/m 39 van lesson 2 (PDF) En stel vragen als je hier iets niet van begrijpt!

Vragen Zijn er vragen?