 Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions.

Slides:



Advertisements
Lignende præsentationer
Historik-service Eksempel på, hvordan en historikservice kan fungere.
Advertisements

1 • Best practice for exception handling • Exception klasser • Division med nul uden exception handling • Division med nul med exception handling •. NET.
Velkommen til Softwarekonstruktion
Udvikling af ANDROID programmer (apps) Jens Bennedsen og Jesper Tørresø marts 2011.
Begreber og Redskaber 6. Afprøvning Formål: •Ekstern afprøvning (Funktionstest). •Hvordan dokumenterer man afprøvning i en rapport. •Hvordan konstuerer.
Distribueret programmering, specielt.NET Remoting Rasmus D. Lehrmann DM
NetBeans Installation og brug.
DotNET Remoting Præsentation. Beskrivelse af arkitekturen i et dot NET program. Hvad er en Proxy. Klient, server og host begreberne. Marshaling. Eventuelt.
Objektorienteret programmering
09 – Arv og polymorfi i java
e-Tinglysning WebService Arkitektur
Tile caching og WMTS Et boost til performance
GP5, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 5 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
Objektorienteret programmering
NOEA/IT - FEN1 Typeparametisering/Genericity Generics i.NET 2 og C#
Delphi og C++ Builder C++ Referencer og pointere.
Programmering af dynamiske websider pages/tutorials/introducing-aspnet- web-pages-2/intro-to-web-pages- programming.
Aspekt-orienteret programmering (AOP) Lars Christensen Daniel Simonsen.
GP 8, 24/ Grundlæggende programmering Efterår 2001 Forelæsning 8 onsdag 24/ kl. 9:15 – 12:00.
Per P Madsen Afdeling for Proceskontrol Aalborg Universitet.
Objekter og klasser Rasmus D. Lehrmann DM
1 While Tæller-kontrolleret (eng.: counter-controlled) repetition For Steen Jensen, efterår 2013.
Procestræ under afvikling af cp init login shell cp cp src dest.
Intro Siden sidst: evaluering på opgaver og virtuel kursus.
Comparable Students German Students Composite Pattern State Pattern Observer Pattern Collections Interfaces Abstrakte klasser Design Patterns.
8 RÅD VEDRØRENDE GOD PROGRAMMERING Effective (brown) Java.
11 - Exceptions. 2 NOEA2009Java-kursus – Exceptions Hvad er en exception? En undtagelse. Typisk en fejl der opstår runtime Afbryder det normale programflow.
Uge 14: distribuerede objekter, fjernprocedurekald, RMI Tirsdag: Introduktion Mulige fordele ved distribuerede objekter Introduktion til RMI: - Interfacets.
8.5 JDBC1 JDBC 8.5 Java Database Connectivity. 8.5 JDBC2 JDBC introduktion, 393 JDBC er ikke en forkortelse for –Java Database Connectivity Sun har defineret.
9. Interfaces. 2 Nordjyllands Erhvervakademi Objectives “Good class design starts with good application design — how many classes, do they relate.
GP9, Martin Lillholm 1 Grundlæggende Programmering (GP) Efterår 2005 Forelæsning 11 Slides ligger på nettet. Du er velkommen til at printe dem nu. Vi begynder.
Tekst filer Tekstfiler opbygges normalt af linier, hvor disse ikke behøver at være samme længde. Når man skal arbejde med tekstfiler, ønsker man metoder.
Objektorienteret programmering – UML2Java.  Jens Bennedsen 2001Multimedie programmering8.2 Indhold Klasser og associering til enkelt objekt –Programmering.
 Jens Bennedsen 2002Objektorienteret systemudvikling Design klasse model ”Klassemodellen på vej til kode”
Systemudvikling – Fra idé til kode.  Jens Bennedsen 2001Multimedie programmering9.2 Begrebsmodellering Problemspecifikke begreber Problem/vision vedrørende.
 Jens Bennedsen 2002Objektorienteret systemudvikling GRASP mønstre Basale ansvarsplaceringsregler.
 Jens Bennedsen 2002Objektorienteret systemudvikling To syn på verden Aristotelisk vs. prototypisk syn.
 Jens Bennedsen 2001Multimedie programmering10A.1 Polymorfi og nedarvning Motivation for arv og “mange former”
 Jens Bennedsen 2002Objektorienteret systemudvikling Interaktionsdiagrammer Hvordan beskrives objektinteraktion? Sekvensdiagrammer Collaborationsdiagrammer.
 Jens Bennedsen 2002Objektorienteret systemudvikling Design -> kode Mapning af et klassediagram til kode.
 Jens Bennedsen, 2003Introducerende objektorienteret programmering MVC Et mønster for grænseflader.
 Jens Bennedsen, 2003Introducerende objektorienteret programmeringinterfaces.1 Interfaces En ren kontrakt.
Indledende Programmering Uge 6 - Efterår 2006
 Jens Bennedsen 2001Multimedie programmering13.1 Lingo Objectorienteret Lingo.
 Jens Bennedsen 2001Multimedie programmering11.1 Lingo Basis.
DAIMIIntroducerende objektorienteret programmering4A.1 Kontrakter og Design Kontraktbaseret design, JavaDoc dokumentation.
Klasser og objekter – grundbegreber.  Michael E. Caspersen, 2001Introducerende objektorienteret programmeringKlasser og objekter.2 Klasser og objekter.
Jesper Mosegaard Multimedie Programmering E2003 MMProg uge46 Ancestor.
 Jens Bennedsen 2001Multimedie programmering4.1 Definition af begreber Interface, implements, klasse.
 Jens Bennedsen 2002Objektorienteret systemudvikling1.1 Objektorienteret design Persistens - introduktion.
 Bærbak & Caspersen, 2000Introducerende objektorienteret programmering2B.1 Syntaksbeskrivelse Syntaksdiagrammer og EBNF-notation.
 Jens Bennedsen 2001Multimedie programmering1.1 Skildpadder Modeller, objekter og opførsel.
 Jens Bennedsen 2001Multimedie programmering14.1 Lingo Inside LingoLand.
 Jens Bennedsen 2001Multimedie programmering3B.1 Specifikationer Betingelser, specifikationer og JavaDoc.
 Jens Bennedsen 2001Multimedie programmering3A.1 Definition af klasser Klasseskelet, metoder, et eksempel: dato.
I o p o DAIMI, AU, November 1999Introducerende objektorienteret programmering9D.1 Del, løs og kombinér.
 Jens Bennedsen 2002Objektorienteret systemudvikling Begrebsmodellering Hvordan får vi opbygget en domænemodel/begrebsmodel?
Virkefeltsregler i Java int i; int j; int k; i = i+j; String t; Sequence s; int i; int j; Sequence s; String s; int i; int j;
I o p o DAIMI, AU, Oktober 1999Introducerende objektorienteret programmering3E.1 Syntaksbeskrivelse Udtryk og Java-programmer.
 Jens Bennedsen, 2003, revideret af EE Introducerende objektorienteret programmering MVC Et mønster for grænseflader.
Hvad er en inkrementel og iterativ process?
 Jens Bennedsen 2001Multimedie programmering Introduktion og velkomst.
Web- og serverprogrammering Dette materiale er under Åben Dokumentlicens, se Java Server Pages - dag 2 Java Server.
Objecter Introduktion Webintegrator HF1 PHP Object orienteret.
Forelæsning Uge 14 – Torsdag
”Avanceret” Programmering
Dokumentation.
Dokumentation.
Forelæsning Uge 14 – Mandag
Forelæsning Uge 14 Defensiv programmering Exceptions Assertions
Præsentationens transcript:

 Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions

 Jens Bennedsen, 2003Introducerende objektorienteret programmering Fejl Syntaks fejl – findes af oversætteren Type fejl – findes af oversætteren Semantiske fejl – findes ikke af oversætteren –fejlagtig kode udenlig løkke –“uheldig” anvendelse af kode angivelse af et forkert index –anvendelse af kode som den ikke er tilsigtet kald af en metode med en forkert parameter

 Jens Bennedsen, 2003Introducerende objektorienteret programmering Ansvar for fejlhåndtering Hvem har ansvaret? –Serveren: Skal lave alle mulige checks (specielt på parametre) Hvad hvis klienten “glemmer” at checke på resultatet? Mange gange ineffektivt –Klienten større mulighed for fejl – mindre robusthed sværrere at genbruge kan ikke checkes af oversætteren Klient server metode kald

 Jens Bennedsen, 2003Introducerende objektorienteret programmering 1. eksempel

 Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions (1) Et objekt der repræsenterer en fejl Der findes en række predefinerede exceptions: Throwable Exception Error RuntimeException IllegalArgumentException checkes af over- sætteren checkes IKKE af over- sætteren

 Jens Bennedsen, 2003Introducerende objektorienteret programmering Exceptions (2) Man kan lave sin egne subklasser Exception WrongArgumentException