Software Development fundamentals

Slides:



Advertisements
Verwante presentaties
Algoritmen en Datastructuren (ALDAT)
Advertisements

Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 1.
Gegevensstructuren: list boxen en lijsten
Practica Computerlinguistiek Tekst en uitleg:
PROS2 Les 11 Programmeren en Software Engineering 2.
1 Datastructuren Sorteren: alleen of niet alleen vergelijkingen College 5.
1 Datastructuren Lijstjes (Stacks & Queues) Onderwerp 7.
De koektrommel of de grabbelton
Inleidend probleem Data structuur (hiërarchie van classes)
MICPRG Les 11 Microcontroller Programmeren in C. 112 Datastructuren in C Werkgeheugen (PC en microcontroller): Statische datastructuren (vaste grootte):
Hoorcollege 7 Collections, arrays. Programma ‘Snowflakes’ Sneeuwvlok object.
Hogeschool HZ Zeeland 19 augustus 2003augustus 2003 Data Structuren & Algoritmen Week 3.
1 Datastructuren Een informele inleiding tot Skiplists Onderwerp 13.
Instructie Programmeren Task 7
Java & het Web Programma: 3rd party libraries Standard actions (E)xpression (L)anguage.
TirPrs06: Wachttijdtheorie & simulatietechniek
GEGEVENSSTRUCTUREN IN.NET. Inleiding  Enumerated type  Structure  Collecties  Typed collections  Untyped collections.
Trillingen en Cirkelbewegingen
Isaac Newton Omdat een beetje extra bijscholing nooit kwaad kan 
Materialen en moleculen
Havo 5: Stoffen en Materialen
Six hats: Werken met netwerken? Mijn gedacht
Hoofdstuk 3 In beweging.
Datastructuren voor graafrepresentatie
Hollandse Meesters 4 Portretten.
PHP arrays.
Gevorderde EV3 PROGRAMMEER LES
Gameprogrammeren: Lists en interfaces
Tweedegraads vergelijkingen oplossen
Arjan Egges & Paul Bergervoet
Havo 4 Lesbrief Vervoer.
Waarom Google slide handig of onhandig is
Jan Depauw Onderzoeker/Lector KdG
Elektrische stroomsterkte Natuurkunde Overal 2 Havo Atheneum
ASP.NET MVC Web Development
Rekenen en meten met elektriciteit
Software Development fundamentals
Magnetische velden vwo : hoofdstuk 13.
ASP.NET MVC Web Development
HERSIENING MOTORS & GENERATOR.
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Algebra.
Hoofdstuk 5: Natuurkunde Overal (havo 4) 13 mei 2018
Hoofdstuk 6: Natuurkunde Overal (havo 4) versie 16 mei 2019
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Software Development fundamentals
Agenda 1. Klantvisie en de speerpunten 2. Uitgangspunten 3. Hoe?
Gebruikersbijeenkomst Data.overheid.nl
Bodemkunde les 2 Tom Lievense De bodem Structuur van de bodem.
De Vrijheid van onderwijs
SamenLoop voor Hoop 24-uurswandelestafette
Nog meer beleving met een CI, een cochleair implantaat in
Speciale groep bij familie: KOPP / KOV
Gebruikersbijeenkomst Data.overheid.nl
Software Development fundamentals
Bind-Kracht presenteert: Ervaringsdeskundigen in armoede als tandempartners in lessen op de Hogeschool Kristel Driessens Cindy Van Geldorp Mini-conferentie.
Vereenvoudiging van het sociaal huurstelsel Van het regelen van details naar het regelen volgens principes Toelichting Algemene Vergadering VVH 25 april.
Gameprogrammeren: Arrays
Software Development fundamentals
Begeleiden met LOL ! LOL = ‘Language of learning’. Dr. Manon Ruijters
Schakel - Master in de Ergotherapeutische Wetenschap
Hoofdstuk 6 De consument.
Welkom deze middag in de Chr. Ger. kerk van Biezelinge
Transcript van de presentatie:

Software Development fundamentals datastructuren

inhoudsopgave Wat is een datastructuur? 5 datastructuren Opdracht Burgerkoning

Wat is een datastructuur? Wat het is: Een manier om gegevens te organiseren in het computergeheugen, voor efficient gebruik. Simpel gezegd: Een type variabele dat meerdere waardes kan bevatten Die kennen we al, toch?

array int[] cijferlijst = new int[4]; cijferlijst[0] = 9; Etc….. Alles in de array heeft hetzelfde type Items worden opgehaald met hun index Indexes zijn zero-based Een array heeft een vaste grootte in het geheugen Een array kan multi-dimensionaal zijn

array De array is opgeslagen als een aaneengesloten blok op de heap. Het is makkelijk voor de CPU om een array element te schrijven of uit te lezen. Dat maakt de array snel

Multi-dimensionale arrays 2 dimensies: int[,] grid = new int[64,64]; grid[2,1] = 25; 3 dimensies: Int[, ,] grid = new int[64,64,64]; grid[4,2,1] = 54;

array Voordelen: Snel Je kunt overal makkelijk bij met de index Nadelen Kan maar 1 type tegelijk bevatten Heeft een vaste grootte, resizen kost tijd/performance

Queue Queue<Customer> wachtrij = new Queue<Customer>(); wachtrij.Enqueue(aCustomer); Queue is bedoeld als wachtrij en werkt FIFO: First in, First out Een queue object heeft belangrijke 4 methodes: Enqueue() Voegt item toe Dequeue() Haalt het volgende element op en verwijdert dit uit de lijst Peek() Haalt alleen het volgende element op, verwijdert het niet Contains() Checkt of een object voorkomt in de queue

Queue Voordelen: Perfect voor een simpele wachtrij Flexibel in grootte Nadelen: Je hebt geen toegang tot alle elementen via een index, zoals bij de array

Stack Stack<MailMessage> stapel = new Stack<MailMessage>(); stapel.Push(aMessage); Stack is te vergelijken met een stapel, deze werkt LIFO: Last in, First out Een stack object heeft 4 belangrijke methodes: Push() Voegt item toe Pop() Haalt het volgende element op en verwijdert dit uit de lijst Peek() Haalt alleen het volgende element op, verwijdert het niet Contains() Checkt of een object voorkomt in de queue

Stack Voordelen: Perfect voor een simpele LIFO stapel Flexibel in grootte Nadelen: Je hebt geen toegang tot alle elementen via een index, zoals bij de array

List List<Product> producten = new List<Product>(); Producten.Add(aProduct); List is een verbeterde versie van de array. De belangrijkste methodes: Add() Voegt een item toe Remove() verwijdert een item De List is flexibel in grootte, snel, en alle items zijn toegankelijk via een index. De List is daarom het meest gebruikte datatype in C#.

Dictionary Dictionary<string, decimal> menukaart = new Dictionary<string, decimal>(); menukaart.Add(“Hamburger”, 4.50); De Dictionary is vergelijkbaar met een List, maar dan met keys en values beiden instelbaar (in plaats van alleen de values). Dictionary<string, string> openWith = new Dictionary<string, string>(); openWith.Add("txt", "notepad.exe"); openWith.Add("bmp", "paint.exe"); openWith.Add("dib", "paint.exe"); openWith.Add("rtf", "wordpad.exe"); Voor als een int als index niet voldoende is!

Vragen Zijn er vragen?

De opdracht Snackbarketen “De Burgerkoning” door een ander bedrijf een simpel simulatieprogramma voor managers laten ontwikkelen Dat bedrijf is nu failliet, en wij nemen het project over, maar… Er ontbreekt nogal wat in de code! Download het project van de google drive en lees de opdracht goed door, Lukt het jouw om het project af te maken?