Software Development fundamentals

Slides:



Advertisements
Verwante presentaties
Trillingen en Cirkelbewegingen
Advertisements

4/10/2017 Opleiding BINNENISOLATIE voor thermische renovatie Module 3 Train the trainer – 06/12/ Brugge.
Isaac Newton Omdat een beetje extra bijscholing nooit kwaad kan 
Wageningen University Meteorologie en Luchtkwaliteit
Materialen en moleculen
Hoe deel je gesteenten in? Codering; Streckeisen
Havo 5: Stoffen en Materialen
Handboek Commercieel Budgetteren: toegepast J. Vanhaverbeke & L
Veevoeding Blok 3 en 4: Ruwvoerbalans melkveehouderij
Dynamica van luchtstromen
Jeugd in het Strafrechtelijk kader Les 3, 2016 ‘Needs’
Natuurkunde Overal Hoofdstuk 1: Beweging in beeld.
Klaar met het PW? Lees aandachtig het samenvattingenblad hst 7
Greenbuilding project
Aanleiding Veranderende organisatie
Financiële situatie Volley
Portfolio Zon projecten.
Door Marco Lassche, Joyce Mulder en Mare de Winter
VAN KEUKENBLAD TOT FRIKANDEL presentatie door Koen Ongkiehong
Energielening.
De missie, het hart en het broodtrommeltje
Context 4 Verlichtingsideeën en de democratische revoluties
Gaat u dan snel naar Goedkoop of in kleine oplagen kleding (laten) bedrukken, met een embleem, logo en/of tekst van uzelf, of.
Bomen en struiken IVN Helden.
STUUR DIT AAN EEN SLIMME VROUW... EN AAN ALLE MANNEN... DIE ER TEGEN KUNNEN !!! Na 5000 jaar moppen over vrouwen... uiteindelijk moppen over mannen.
Roundtable De Gefragmenteerde Organisatie
Welkom.
Mictieklachten bij mannen
BASISVEILIGHEID (VCA)
Quel jour sommes-nous aujourd’hui ?
Hoofdstuk 6 Warmte.
Outdoor Advanced - Specialist Tuin en Openbaar Groen 3.1,
Jorismavo Examenvoorlichting
RECHT VAN SPREKEN FUNCTIONEREN OC’S 2016
Inlichtingenbijeenkomst Simulatiecapaciteit ERTMS
Toolbox: ATEX ATmosphere - EXplosive
Groeiende kritiek op de katholieke Kerk rond 1500
De wederkomst ophanden? 20 augustus 2017 Urk.
En blessurepreventie Trainingsopbouw.
Six hats: Werken met netwerken? Mijn gedacht
VEELTERMEN BLADWIJZERS: GETALWAARDE OPTELLEN EN AFTREKKEN
Omdenken Een kleine test….
Toevoeging H5 Elektriciteit
Hoofdstuk 3 In beweging.
Reisconferentie van zorg naar zelfregie
Klaar met de toets? Lees aandachtig het samenvattingenblad hst 6
Je kunt iedere dag iets betekenen voor een ander
Rd4-afvalconferentie november 2016
Nienke Hoffman Teamleider bovenbouw 28 maart 2017
Risico’s en de vertaling naar wettelijke uitgangspunten
Op zoek naar de juiste toon Geluid in de omgevingswet
TAALSITUATIE & - ONTWIKKELING IN VLAANDEREN
NIET-RATIONELE BESLISSINGEN in de TECHNIEK
Stedelijke bevolking 50% wereldwijd (70% verwacht) 75% in Europa
Hoofdstuk 5 Les 1: Markten.
6. Sleutelvoedingsfactoren
Hst. 2 Het geslachtsapparaat
Wees welkom op deze 1STE cursus windows SPECIAAL ONTWIKKELD VOOR AMBTENAREN Vergeet niet te rusten tijdens de cursus en neem een relaxe houding aan tijdens.
Microsoft® Office Outlook® 2007-cursus
De Here zeide tot Mozes: Ga, Ik zend u tot Farao
Co-creatie in de Master Health Care & Social Work
Participatie in Onderzoek ZonMw
DE WINST VAN ZORGVRIENDELIJK WERKGEVERSCHAP
VPH Les 13.
Maurits Hendriks Technisch Directeur Chef de Mission
Welkom Brussel, 25/02/2017.
Informatiebijeenkomst project Snippergroen
Nedgraphicsdag 18 september 2012
Kwaliteitsborging voor het Bouwen
Transcript van de presentatie:

Software Development fundamentals Les 5 – problemen oplossen

inhoudsopgave Problemen oplossen Debugging Breakpoints Exceptions Try/Catch/Finally Aan de slag

vraag Wat wordt natter als het droogt? Probleem: Micky en Sebastiaan hebben een relatie, en zitten in dezelfde klas. Ze kunnen goed met elkaar overweg, maar hebben één probleem: Micky wil in de les per sé achter Sebastiaan zitten, en Sebastiaan juist wil achter Micky zitten. Hoe kunnen we ze in deze onmogelijke situatie toch gelukkig maken? Welke manier heeft jouw voorkeur en waarom?

debugging Debugging = fouten in code vinden en oplossen Hoe hebben we dit gedaan in PHP en JavaScript? Welke manier heeft jouw voorkeur en waarom?

Debugging met visual studio Meest gebruikte technieken: Breakpoints Code stepping (regel voor regel code uitvoeren) Watch/QuickWatch (variabelen bekijken) Exception handling Welke manier heeft jouw voorkeur en waarom?

Demo breakpoints Breakpoint = pauzeerpunt Snel te maken door te klikken in de grijze balk links van de code. Code pauzeert op dit punt. Daarna regel voor regel te doorlopen met F10 Of uitvoering hervatten met F5

En dan? Variabelen Als je programma is gepauzeerd (door een breakpoint of een exception): Kan je de waardes in variabelen bekijken: Dit kan helpen bij het vinden van fouten.

exceptions Wat kan hier misgaan? double getal1 = 0; Console.WriteLine("Voer een getal in:"); getal1 = Double.Parse(Console.ReadLine()); Zodra je tekst in de console invoert in plaats van een getal, krijg je dit in beeld:

Exceptions Veel voorkomende exceptions: Een exception is een error. Er gebeurt iets waar in code geen rekening mee is gehouden. Een uitzondering dus. Veel voorkomende exceptions: Schrijven naar een bestand dat in gebruik is Verbinden naar een database die niet meer bestaat Een niet bestaand array element uitlezen Een string naar een getal parsen, terwijl hier geen getal in staat. Integers delen door 0

Exceptions Wat kan je doen bij het risico op een exception? Defensiever programmeren Try…catch gebruiken

Try…catch Met een try…catch blok kan je exceptions afhandelen in code. Console.WriteLine("Voer een getal in:"); try { getal1 = Double.Parse(Console.ReadLine()); } catch (FormatException e) Console.WriteLine("Je moet wel een getal invullen."); De gebruiker zal de exception nu niet te zien krijgen en de applicatie zal niet crashen.

try…catch Zet try { } om de code heen die de fout kan veroorzaken Plaats daaronder een of meerdere catch() { } blokken, van specifieke exceptions naar algemene. Code in catch (FileNotFoundException fe) zal alleen worden uitgevoerd als een bestand niet kan worden gevonden. Code in catch (Exception e) zal b ij elke exception worden uitgevoerd. Plaats tenslotte optioneel een finally { } blok voor het opruimen van systeemresources (databaseconnectie sluiten of bestand vrijgeven) Finally blokken worden altijd uitgevoerd, of er nu wel of geen exception is.

Afsluiting Zijn er vragen?

Aan de slag De opdrachten staan online