Model View. View Controller. Model View Controller. Observer. GrIP-vt2010-GUI-programmering Cristian Bogdan
|
|
- Malin Hellström
- för 6 år sedan
- Visningar:
Transkript
1 Model View Model: data and its changing rules ( applica8on logic ) A data model can have a number of views and can a@ach them dynamically Views are not necessarily graphical The model is unaware of the views details, it just no8fies them of changes, and allows the views to read the data View Controller A controller defines a pa@ern of interac8on between a view and its model In the graphical case, the controller listens to events (or gets other forms of no8fica8on) from the view components and changes the model according to the event s seman8cs The view needs not know details about the controllers a@ached to it Alterna8ve controllers of the same view define interac8on strategies Model View Controller When the controller changes the model, the model no8fies all its views to update Instead of changing the model, the controller can ignore or compensate for user interac8on that is not consistent with the model assump8ons (possibly warn user) in an editor, you can t move past the end of the text S E P A R A T I O N data descrip8on: MODEL data illustra8on: VIEWs interac8on: CONTROLLERs Observer För a@ implementera MVC används owa designmönstret Observer Tillåter a@ e@ objekt meddelas om det gjorts en förändring i e@ annat objekt, utan a@ objekten görs starkt knutna 8ll varandra Event listeners (delega8on) are an alterna8ve to Observer Observer Observer
2 package java.util; Observer i Java public interface Observer { void update(observable o, Object arg); public class Observable { private Observer[] arr; public void addobserver(observer o) { arr.addelement(o); public void notify(object arg) { for (int i = 0; i < arr.size; i++) { arr[i].update(this, arg); Det här är inte hela sanningen, men principen är densamma i den riktiga javaimplementationen! Issues with MVC There are different interpreta8ons of the MVC architecture Strictly speaking, in Swing the controller is the event dispatcher OWen a view will have only one controller, hard or not useful to separate But model and view separa8on is owen easily possible and profitable MVC is implemented owen in mul8ple layers Video prototype example, we iden8fy the model and views Project Implement the produc8on planner Model: tasks, task planning dates/lines, task rules: Tasks can t collide on a line / date interval When a task is planned on a certain date, others need may need to be moved to earliest possible dates Views: task planning chart, task table Project: model Basic Model: tasks, task planning dates/lines, task rules: Tasks can t collide on a line / date interval Move tasks automa8cally to earliest possible dates Views: task planning chart, controller: drag and drop task table, controllers: edi8ng, crea8on Project: hierarchical model Higher level model: Current Task Does not affect the core applica8on logic But helps the two views coordinate Even higher level model: the table model Cell data: from the Basic Model Cell selec8on: from Current Task model See Swing JTable Swing Separable Model Architecture Varje komponent hanterar view/control. Själva utritningen är delegerad 8ll e@ s.k. UI object (för a@ man ska kunna ändra look andfeel, t.ex.). Varje komponent har en modell kopplad 8ll sig. Hierarchical MVC Aka: Presenta8on abstrac8on control (PAC)
3 Separable Model Architecture De flesta komponenters modell har enbart göra med själva (t.ex. om en är nedtryckt eller ej). Vissa komponenters innehåll kan dock bara definieras av applika8onen (t.ex. innehållet i en lista eller tabell). Några faller mi@ emellan (t.ex. sliders). Man ersä@er en modell genom a@ subklassa defaultmodellen och sedan anropa setmodel() på komponenten. Your own components All Swing components are lightweight (drawn in Java), and you can make your own. h@p://java.sun.com/products/jfc/tsc/ar8cles/pain8ng Old approach: subclassing Canvas Implement the paint (Graphics g) method you get a rectangular shape covering the others new JComponent(){ public void paint(graphics g){ ; achieves the same, and more paint() is called automa8cally by Swing when the container becomes visible The Graphics object contains foreground and background color, as well as a clipping rectangle, in case not the whole component needs be drawn. Your own components for non rectangular, or transparent components, you need to extend Component, Container or JComponent directly implement the needed processxxx and addxxxlistener contains() for non rectangular shapes Implement isopaque() or call setopaque() to tell whether your component is transparent as usual, paint() to draw your own component shape If the component is opaque, paint() will need to cover all the area for which contains() is true Fönstersystem Applikation Interaktionstoolkit Händelsehanterare och grafiktoolkit Operativsystem Hårdvara Erfarenheten visar a@ det kan vara knepigt a@ hantera toolkits. Om allt är "8llåtet" är det lä@ a@ applika8oner blir inkonsekventa eller ser "fula" ut. E@ framework är en uppsä@ning klasser (abstrakta och vanliga) som "påtvingar" e@ visst sä@ a@ arbeta. Javas framework för fönsterhantering heter Swing. Swing vs IBM/Eclipse SWT MicrosoWs motsvarighet heter MFC (som nu är på väg a@ ersä@as av.net). MFC vs Borland OWL Koda med klassbibliotek Min kod Kod i klassbibliotek Koda med framework Framework Min kod, brukar kallas för callbacks. Inversion of control (see Spring framework) Hollywood principle (we ll call you) Template method design pattern
4 Ett vanligt sätt att arbeta med frameworks är att man subklassar någon form av basklass med grundfunktionalitet. Sedan överlagrar man de metoder som man intresserar sig för. It is often suitable that the subclass is anonymous import java.awt.*; import javax.swing.*; public class MyFrame extends JFrame { public void paint(graphics g) { g.drawstring("hello", 10, 50); public static void main(string[] args) { MyFrame f = new MyFrame(); Koda med klassbibliotek Min kod Kod i klassbibliotek Koda med framework Framework Min kod, brukar kallas för callbacks. What are the most important types of Swing callbacks? - event listener methods like windowclosing() - paint() method Other callbacks in Java? yes, finalize(), Observer s notify() Fundament: we implement the callbacks, but never call them. We wait for the framework to call them. GUI byggare OWa integrerade med en IDE, Integrated Development Environment GUI:er består owast av widgets, samt kod som skickar meddelanden mellan dessa GUI byggare: "rita" gränssni@et, kod som skapar widgets och deras layout genereras automa8skt! Sedan lägger man 8ll händelselyssnare etc. själv, owa via någon form av property inspector. Några GUI byggare: Visual Studio.NET Forms Designer, Borland C++ Builder, QT Designer, NetBeans, Olika plug ins för Eclipse, Men det finns många, många fler! NetBeans 6.0 UML Både en mjukvarudesignprocess och en serie diagramtyper. Utvecklades av företaget Ra8onal i mi@en av 90 talet. Är idag standardiserat och används överallt i industrin. Ger dock mycket begränsad info om hur användargränssni@et ska se ut!
5 UML: Use case diagrams UML: Klassdiagram En abstrak8on av en eller flera processer, d.v.s. scenario. Visar aktörer och use cases, d.v.s. vad aktörerna gör. One or more scenarios may be generated from a use case UML: Interak8onsdiagram Visar hur meddelanden skickas mellan klassinstanser i systemet. Ger en översikt över processer i systemet. UML: Tillståndsdiagram Visar hur systemet går mellan olika 8llstånd. UML: Ak8vitetsdiagram Liknar 8llståndsdiagrammet men fokuserar på ak8vitet istället. En ak8vitet behöver inte vara detsamma som e@ 8llstånd. Kan motsvara funk8oner som användaren ak8verar. Används för a@ visa rela8onen mellan hårdoch mjukvara i systemet. Kan också användas för a@ visa hur systemet är distribuerat över olika maskiner, t.ex. i e@ nätverk. UML: Fysikdiagram
6 Designmönster (design Utgår från arkitekten Christopher Alexanders arbete på 70 talet Alexander försökte se mönster i hur man löst återkommande problem inom arkitektur och skrev en bok där han beskriver lösningarna Alexander, C. (1977). A PaHern Language. Oxford University Press Idén togs upp på allvar inom systemdesign i mi@en av 90 talet Den mest kända boken är Gamma et al. (1995). Design PaHerns: Elements of Reusable Object Oriented SoNware. Addison Wesley Design pa@erns Namn och generell typ Intent (vad den gör) Also Known As Mo8va8on Applicability Structure (e@ UML diagram) Design pa@erns Par8cipants (beskr. av klasser som ingår) Collabora8ons (hur klasserna arbetar 8llsammans) Consequences (av a@ använda mönstret) Implementa8on Sample code Known uses Related pa@erns
Fönstersystem. Objektorientering och händelsebaserad programmering. Applikation. Interaktionstoolkit. Händelsehanterare och grafiktoolkit
Objektorientering och händelsebaserad programmering Gustav Taxén gustavt@nada.kth.se Fönstersystem Applikation Interaktionstoolkit Händelsehanterare och grafiktoolkit Operativsystem Hårdvara 1 Frameworks
Läs merFrameworks. GUI till tusen. GUI till tusen. Sampling architectures. Inmatningstyper
Frameworks Koda med klassbibliotek Koda med framework GUI-programmering Min kod Framework Cristian Bogdan cristi@kth.se Kod i klassbibliotek Min kod, brukar kallas för callbacks. DH2640 Grafik och Interaktionsprogrammering
Läs merGUI-programmering. Gustav Taxén Martin Berglund DH2640 Grafik och Interaktionsprogrammering VT 2008
GUI-programmering Gustav Taxén gustavt@csc.kth.se Martin Berglund mabe02@kth.se DH2640 Grafik och Interaktionsprogrammering VT 2008 WIMP Window Icon Menu Pointing device Modernt Gränssnitt Vad ingår i
Läs merObjektorientering i allmänhet
Objektorientering i allmänhet Objektorientering och händelsebaserad programmering Gustav Taxén gustavt@nada.kth.se Ett objekt är en "låda" da" där man samlar Data Metoder som (oftast) manipulerar denna
Läs merObjektorientering och händelsebaserad programmering. Gustav Taxén
Objektorientering och händelsebaserad programmering Gustav Taxén gustavt@csc.kth.se 2D1640 Grafik och Interaktionsprogrammering VT 2007 Racingspel Vi skagöraettenkeltracingspel med olika sorters fordon.
Läs merObserver Pattern och MVC. Objekt-orienterad programmering och design Alex Gerdes, 2016
Observer Pattern och MVC Objekt-orienterad programmering och design Alex Gerdes, 2016 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är väldigt vanligt
Läs merObserver Pa*ern och MVC. Objekt-orienterad programmering och design Alex Gerdes, 2018
Observer Pa*ern och MVC Objekt-orienterad programmering och design Alex Gerdes, 2018 Model View Controller Model View Controller (MVC) är e2 design pa2ern (architectural pa2ern) som är väldigt vanligt
Läs merITK:P1 Föreläsning 4. Grafiska gränssnitt i Java. AWT-komponenter
ITK:P1 Föreläsning 4 Grafiska gränssnitt och händelsehantering 1 DSV Peter Mozelius Grafiska gränssnitt i Java Efterfrågan på program med grafiskt gränssnitt har ökat avsevärt de senaste åren I Java finns
Läs merDesign. Vad lärde jag mig förra lekfonen? Hur bidrog jag Fll lärandet? Kravhantering sammanfa0ning 13/04/14
Design Vad är design? Vad är arkitektur? Architectural Pa:erns Designprinciper Design Pa:erns UML Domain Driven Design Domänmodell Vad lärde jag mig förra lekfonen? Hur bidrog jag Fll lärandet? Kravhantering
Läs merLösningar till tentamen i EDAF25
Lösningar till tentamen i EDAF25 1 juni 2017 Lösning 1 Se figur 1. Figure 1: Tillståndsdiagram espressomaskin Lösning 2 (a) Kompositmönstret (b) Se figur 2 (c) Se figur 3 : Square : Drawing : Group : Circle
Läs merObserver Pattern och MVC. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018
Observer Pattern och MVC Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är
Läs merGUI /ll tusen. GUI /ll tusen. Java/Swing. Top Level Containers. General Purpose Containers. GrIP-vt2010-GUI-programmering Cristian Bogdan
GUI programmering Cristian Bogdan cristi@kth.se GUI /ll tusen Win32 API (C) MFC (C++) VCL/CLX (C++/Delphi) wxwidgets (C++) Qt (C++/Java) GTK+ (C).NET Framework (VB/C++/C#) Java AWT/Swing/SWT (Java) osv
Läs merTentamen i EDAF25. 1 juni Skrivtid: Skriv inte med färgpenna enda tillåtna färg är svart/blyerts.
Tentamen i EDAF5 juni 07 Skrivtid: 4-9 Skriv bara på ena sidan av pappret tentorna kommer att scannas in, och endast framsidorna rättas. Skriv inte med färgpenna enda tillåtna färg är svart/blyerts. Skriv
Läs merVad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes
Vad kännetecknar en god klass F12 Nested & En odelad, väldefinierad abstraktion Uppgiften kan beskrivas kort och tydlig Namnet är en substantiv eller adjektiv som beskriver abstraktionen på ett adekvat
Läs merObserver Pattern och MVC. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2017
Observer Pattern och MVC Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2017 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är
Läs merDenna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se
1 F18-20-2006 Denna vecka Måndag: Ett komplext problem Tisdag: Lektion. Kväll: Essäfrågan distribueras via webben. Dead-line onsdag 17 maj, kl 12.00. Inlämning elektroniskt och på papper. Onsdag: Grafik
Läs merTvå designmönster, MVC och Observer/Observable. Objektorienterad programvaruutveckling GU (DIT011)
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Innehåll Föreläsning 8 Två designmönster, MVC och Observer/Observable. Designrekommendation
Läs merGUI-programmering. Gustav Taxén
GUI-programmering Gustav Taxén gustavt@csc.kth.se 2D1640 Grafik och Interaktionsprogrammering VT 2007 Racingspel Vi utökar vårt racingspel lite grann. Vi behöver en bättre modell för hur bilarna ska flyttas.
Läs merFöreläsning 8. Designmönster
Föreläsning 8 Designmönster Designmönster När man designar program kan det vara viktigt att förstå hur man tidigare gått till väga när man konstruerat program. Kännedom om dessa tillvägagångssätt kan snabba
Läs merDesignmönster/Design patterns
Johan Eliasson Design patterns Designmönster/Design patterns Vad är det? Beprövade lösningar till återkommande programmeringsproblem Plattformsoberoende Beskrivs ofta med hjälp av UML Baseras på en bok
Läs merIsolda Purchase - EDI
Isolda Purchase - EDI Document v 1.0 1 Table of Contents Table of Contents... 2 1 Introduction... 3 1.1 What is EDI?... 4 1.2 Sending and receiving documents... 4 1.3 File format... 4 1.3.1 XML (language
Läs merRecitation 4. 2-D arrays. Exceptions
Recitation 4. 2-D arrays. Exceptions Animal[] v= new Animal[3]; 2 declaration of array v Create array of 3 elements v null a6 Assign value of new-exp to v Assign and refer to elements as usual: v[0]= new
Läs merObjektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015
Objektorienterad Programkonstruktion Föreläsning 3 9 nov 2015 Kursnämnd Namn kommer... UML: Klassdiagram UML: Relationer Ärver från superklass Implementerar gränssnitt Dubbelriktad eller oriktad relation
Läs merLösningar till tentamen i EDAF25
Lösningar till tentamen i EDAF25 21 aug 2017 Lösning 1 Javaklasser (många varianter finns naturligtvis): class Client { private Invoker invoker; public void newcommand(string cmdtext) { Command cmd; if
Läs merUML. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016
UML Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 UML Unified Modelling Language Grafiskt modelleringsspråk för att beskriva olika aspekter av objektorienterade system. Vi kommer
Läs merObjektorienterad Programkonstruktion. Föreläsning 3 7 nov 2016
Objektorienterad Programkonstruktion Föreläsning 3 7 nov 2016 Klass/instans Med hjälp av nyckelordet static kan vi bestämma att en metod eller ett fält ska tillhöra själva klassen i stället för en specifik
Läs merDesignmönster, introduktion. Vad är det? Varför skall man använda mönster?
Designmönster, introduktion. Vad är det? Varför skall man använda mönster? Kent Petersson EMW, Mölndal Datavetenskap, Chalmers epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.se/~kentp
Läs merDetta dokument är ett exempel, cirka andra hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling
Detta dokument är ett exempel, cirka andra hälften av en tentamen för TDA545 Objektorienterad programvaruutveckling Fulltentamen vitsord: 3=28p, 4=38p, 5= 48p, max 60p. Max 30p i denna halvtentamen Hjälpmedel:
Läs merMönster. Ulf Cederling Växjö University Ulf.Cederling@msi.vxu.se http://www.msi.vxu.se/~ulfce. Slide 1
Mönster Ulf Cederling Växjö University UlfCederling@msivxuse http://wwwmsivxuse/~ulfce Slide 1 Beskrivningsmall Beskrivningsmallen är inspirerad av den som användes på AG Communication Systems (AGCS) Linda
Läs merhttp://marvel.com/games/play/31/create_your_own_superhero http://www.heromachine.com/
Name: Year 9 w. 4-7 The leading comic book publisher, Marvel Comics, is starting a new comic, which it hopes will become as popular as its classics Spiderman, Superman and The Incredible Hulk. Your job
Läs merSI-pass 4. Johan Brook och Jesper Persson. 25 september 2012. Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner.
SI-pass 4 Johan Brook och Jesper Persson 25 september 2012 1. Sant eller falskt? Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner. Interfaces i Java kan innehålla privata
Läs merTentamen i Objektorienterad modellering och diskreta strukturer
Lunds Tekniska Högskola Datavetenskap Ulf Asklund, Sven Gestegård obertz Tentamen EDAF10 2014 10 31, 14.00 19.00 Tentamen i Objektorienterad modellering och diskreta strukturer Vid bedömningen kommer hänsyn
Läs mer" «Observable» DataGenerator" betyder att klassen DataGenerator ärver från den abstrakta klassen Observable.
1 Klassdiagram Markera om följande påståenden är sanna eller falska: " «Observable» DataGenerator" betyder att klassen DataGenerator ärver från den abstrakta klassen Observable. Om klassen A ärver från
Läs mer12.6 Heat equation, Wave equation
12.6 Heat equation, 12.2-3 Wave equation Eugenia Malinnikova, NTNU September 26, 2017 1 Heat equation in higher dimensions The heat equation in higher dimensions (two or three) is u t ( = c 2 2 ) u x 2
Läs merIsometries of the plane
Isometries of the plane Mikael Forsberg August 23, 2011 Abstract Här följer del av ett dokument om Tesselering som jag skrivit för en annan kurs. Denna del handlar om isometrier och innehåller bevis för
Läs merTDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering
Läs merDagens program. Objektorienterad modellering och diskreta strukturer / design. Model/View/Control-implementering. Model/View/Control-arkitektur
Dagens program Objektorienterad modellering och diskreta strukturer / design Fler mönster och Paketdesign Lennart Andersson Model View Control Observer Paketdesign Namngivning Reviderad 2011 09 12 2011
Läs merProperties. Användbara metoder som kan anropas i propertychanged:
Properties Ett objekt kan ha vissa egenskaper (som beskrivs med instansvariabler). En enkel egenskap X avläses och sätts med metoderna getx() och setx(värde). En indexerad egenskap (från t.ex. en array)
Läs merWriting with context. Att skriva med sammanhang
Writing with context Att skriva med sammanhang What makes a piece of writing easy and interesting to read? Discuss in pairs and write down one word (in English or Swedish) to express your opinion http://korta.nu/sust(answer
Läs merPreschool Kindergarten
Preschool Kindergarten Objectives CCSS Reading: Foundational Skills RF.K.1.D: Recognize and name all upper- and lowercase letters of the alphabet. RF.K.3.A: Demonstrate basic knowledge of one-toone letter-sound
Läs merDesign Patterns. Objekt-orienterad programmering och design Alex Gerdes, 2016
Design Patterns Objekt-orienterad programmering och design Alex Gerdes, 2016 Vad är ett design pattern? Ett design pattern (designmönster) är en (ofta namngiven) generell lösning av en vanligt återkommande
Läs merMaterialplanering och styrning på grundnivå. 7,5 högskolepoäng
Materialplanering och styrning på grundnivå Provmoment: Ladokkod: Tentamen ges för: Skriftlig tentamen TI6612 Af3-Ma, Al3, Log3,IBE3 7,5 högskolepoäng Namn: (Ifylles av student) Personnummer: (Ifylles
Läs merThe Last Adventure. Innehåll. Objektorientering. Språket Java. Java - Paket. Java - synlighet. Den sista lektionen. Repetition.
Innehåll The Last Adventure Den sista lektionen Repetition Examination Slutar 14:45 (minnesstund) Många saker "flashar" förbi - hojta Objektorientering Språket Java Class Object Inheritance Polymorphism
Läs merFöreläsnings 11 - GUI, Händelsestyrda program, MVC
Föreläsnings 11 - GUI, Händelsestyrda program, MVC Josef Svenningsson Tisdag 20/11 Boken Denna föreläsning går igenom följande sektioner i boken: 10.1 och 10.2 11.1 Notera att kapitel 11 inte finns i boken
Läs merObjektorientering (OO)
GrIP-vt2008-Föeläsning 6: OO & UI Cristian Bogdan 2008-02-05 Objektorientering (OO) Objektorientering och UI-programmering Yngve Sundblad y@kth.se Cristian Bogdan cristi@kth.se From the icy waters of Norway
Läs merObjektorienterad Programkonstruktion. Föreläsning 6 23 nov 2015
Objektorienterad Programkonstruktion Föreläsning 6 23 nov 2015 Designmönster Färdiga "recept" för att lösa (del-)problem i struktureringen av ens program Mönster kan beskriva små komponenter eller stora
Läs merModule 6: Integrals and applications
Department of Mathematics SF65 Calculus Year 5/6 Module 6: Integrals and applications Sections 6. and 6.5 and Chapter 7 in Calculus by Adams and Essex. Three lectures, two tutorials and one seminar. Important
Läs mer2I1049 Föreläsning 8. Grafiska gränssnitt i Java. AWT-komponenter. Grafiska gränssnitt, Java interface och händelsehantering
2I1049 Föreläsning 8 Grafiska gränssnitt, Java interface och händelsehantering 1 KTH-MI Peter Mozelius Grafiska gränssnitt i Java Efterfrågan på program med grafiskt gränssnitt har ökat avsevärt de senaste
Läs merTentamen i Objektorienterad modellering och design
Lunds Tekniska Högskola Datavetenskap Tentamen EDA061 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Vid bedömningen kommer hänsyn att tas till lösningens kvalitet. UML-diagram
Läs merFöreläsning 15 (16) Historik (java.awt) Historik (javax.swing) Introduktion till Swing
Föreläsning 15 (16) Introduktion till Swing Historik (java.awt) JDK 1.0 AWT (Abstract Window Toolkit) Paket för gränssnittsprogrammering Har en del nackdelar: Använder s.k. native code Stödjer endast komponenter
Läs merTentamen Programmering fortsättningskurs DIT950
Tentamen Programmering fortsättningskurs Datum: 2015-03-17 Tid: 08.30-12.30 Hjälpmedel: Engelskt-Valfritt språk lexikon Betygsgränser: U: -23 G: 24-43 VG: 44-60 (max 60) Lärare:. Någon besöker ca 10.00
Läs merLULEÅ TEKNISKA UNIVERSITET
LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, Andrey Kruglyak, 491000 Resultatet offentliggörs senast: 2010-04-09. Tillåtna
Läs merVässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson
Vässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson Kravhantering På Riktigt, 16 maj 2018 Anna Fallqvist Eriksson Agilista, Go See Talents linkedin.com/in/anfaer/
Läs merFörskola i Bromma- Examensarbete. Henrik Westling. Supervisor. Examiner
Förskola i Bromma- Examensarbete Henrik Westling Handledare/ Supervisor Examinator/ Examiner Ori Merom Erik Wingquist Examensarbete inom arkitektur, grundnivå 15 hp Degree Project in Architecture, First
Läs merSOA. Länkar +ll sidor om SOA h3p:// h3p://dsv.su.se/soa/
SOA Länkar +ll sidor om SOA h3p://www.soaprinciples.com/p3.php h3p://dsv.su.se/soa/ Vad är SOA? h3p://www.soaprinciples.com/p3.php Standardized Service Contracts Service Loose Coupling Service Abstrac+on
Läs merDesign för användbarhet Designexempel, hur tänkte man vid designen?
Design för användbarhet Designexempel, hur tänkte man vid designen? Bengt Göransson :: Användbarhetsdesigner Guide Redina AB :: Bengt.Goransson@guide.se Varför? Bengt Göransson, Guide Redina AB, 2005 http://www.guide.se/
Läs merPrinciples of subclasses. Objekt-orienterad programmering och design Alex Gerdes, 2018
Principles of subclasses Objekt-orienterad programmering och design Alex Gerdes, 2018 Implementation inheritance Subclassing, eller implementation inheritance (implementationsarv), ger oss två fördelar:
Läs merTDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 3 Laboration 3 Visualisering (och implementering) av sortering Exempel på grafik (med Swing-paketet) Frågor 1 Laboration 3 Visualisering
Läs merJUnit. Ska kompletteras med kodexempel på JUnit. DD2385 Programutvecklingsteknik Några bilder till föreläsning 12 21/5 2012
DD2385 Programutvecklingsteknik Några bilder till föreläsning 12 21/5 2012 Innehåll Testning med JUnit Refactoring Några designprinciper JUnit Ramverk i Java för testning av Java-klasser Utvecklat av Gamma
Läs merSupport Manual HoistLocatel Electronic Locks
Support Manual HoistLocatel Electronic Locks 1. S70, Create a Terminating Card for Cards Terminating Card 2. Select the card you want to block, look among Card No. Then click on the single arrow pointing
Läs merProgrammeringsteknik II - HT18. Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt
Programmeringsteknik II - HT18 Föreläsning 6: Grafik och händelsestyrda program med användargränssnitt (och Java-interface) Johan Öfverstedt 18-09-28 1 Förra gången: Arv och klasshierarkier Vi såg hur
Läs merHT1 2013, FÖRELÄSNING 14 (INFÖR TENTAN)
Objektorienterad modellering och diskreta strukturer (EDAF10/EDA061) HT1 2013, FÖRELÄSNING 14 (INFÖR TENTAN) Dagens agenda Admin Tentatid och plats Tillåtet på tentan EDAF10 Föreläsning inför XL-projektet
Läs merEfterhand fick vi ett system som vi tyckte var väl anpassat. Vi renskrev kladden (nedan) och började programmera menyerna.
Övning 3 - grupp 10 Övningen gick ut på att sortera givna funktionerna till ett ritprogram in i en meny. Den startsidan vi fick var blank och såg ut som nedan. I denna skulle vi skapa en meny med hjälp
Läs merObservationshotellet. The observation hotel. Fanny Vallo !!! Ersätt bilden med en egen bild. Emma Karlsson Martin Hedenström Ljung.
Observationshotellet The observation hotel Fanny Vallo Handledare/ Supervisor B Bojan Boric Emma Karlsson Martin Hedenström Ljung Examinator/ Examiner Erik Wingquist Examensarbete inom arkitektur, grundnivå
Läs merObjektorienterad Programkonstruktion. Föreläsning 2 2 nov 2016
Objektorienterad Programkonstruktion Föreläsning 2 2 nov 2016 Objekt - klass Namn Fält1 Fält2 Fält3 Metod1 Metod2 Metod3 Metod4 Objekt - klass Objekt - klass Objekt - klass + Objekt - klass public class
Läs merStyrteknik: Binära tal, talsystem och koder D3:1
Styrteknik: Binära tal, talsystem och koder D3:1 Digitala kursmoment D1 Boolesk algebra D2 Grundläggande logiska funktioner D3 Binära tal, talsystem och koder Styrteknik :Binära tal, talsystem och koder
Läs merNär? Varför? För vem? Resultat? (Artefakter?)
Arkitektur Vad är arkitektur? Vad har vi arkitekturmodellen till? Hur redovisar vi en arkitektur? Hur tar vi fram en arkitektur? Uppgift När? Varför? För vem? Resultat? (Artefakter?) Efter lunch Redovisning/Diskussion
Läs merSvaret kan ges i Javakod (eller i UML-klassdiagram). public class A { B minb;... } public class B { <B:s många variabler och metoder> } Lösning:
Lös koppling mellan programdelar (klasser) eftersträvas ofta i objektorienterad programmering. Om klassen A beror av klassen B, hur kan man lösa upp detta beroende och åstadkomma en lösare koppling mellan
Läs merInformation technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE
SVENSK STANDARD SS-ISO/IEC 26300:2008 Fastställd/Approved: 2008-06-17 Publicerad/Published: 2008-08-04 Utgåva/Edition: 1 Språk/Language: engelska/english ICS: 35.240.30 Information technology Open Document
Läs merHealth café. Self help groups. Learning café. Focus on support to people with chronic diseases and their families
Health café Resources Meeting places Live library Storytellers Self help groups Heart s house Volunteers Health coaches Learning café Recovery Health café project Focus on support to people with chronic
Läs merWebbregistrering pa kurs och termin
Webbregistrering pa kurs och termin 1. Du loggar in på www.kth.se via den personliga menyn Under fliken Kurser och under fliken Program finns på höger sida en länk till Studieöversiktssidan. På den sidan
Läs merLösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg
LUNDS TEKNISKA HÖGSKOLA 1(7) Institutionen för datavetenskap Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg 1. a) Figure 1 2015 06 04 GeometryApp GraphicalApp
Läs merTentamen i Objektorienterad modellering och design Helsingborg
Lunds Tekniska Högskola Datavetenskap Emelie Engström Tentamen EDAF25 2016 10-26, 08:00 13:00 Tentamen i Objektorienterad modellering och design Helsingborg Tentamen består av en teoridel om totalt 5 poäng
Läs merMVC-mönstret. model-view-control i Swing
MVC-mönstret model-view-control i Swing MVC Tanken bakom MVC (model view control) är att separera uppgifter i ett program från varandra. Model - Den data som behandlas View - Hur användargränssnittet ser
Läs merThe Municipality of Ystad
The Municipality of Ystad Coastal management in a local perspective TLC The Living Coast - Project seminar 26-28 nov Mona Ohlsson Project manager Climate and Environment The Municipality of Ystad Area:
Läs merDesign Patterns. Objekt-orienterad programmering och design Alex Gerdes, 2018
Design Patterns Objekt-orienterad programmering och design Alex Gerdes, 2018 Vad är ett design pattern? Ett design pattern (designmönster) är en (ofta namngiven) generell lösning av en vanligt återkommande
Läs merCHANGE WITH THE BRAIN IN MIND. Frukostseminarium 11 oktober 2018
CHANGE WITH THE BRAIN IN MIND Frukostseminarium 11 oktober 2018 EGNA FÖRÄNDRINGAR ü Fundera på ett par förändringar du drivit eller varit del av ü De som gått bra och det som gått dåligt. Vi pratar om
Läs merSwing. MER Java Foundation Classes (JFC) Hur lära sig? Vad är farorna. LayoutManagers. Exempel på några av komponenterna
MER Java Foundation Classes (JFC) Swing Swing Många klasser Vettigt att lära sig dem utantill - Tror inte det -... men det kan vara bra att ha en liten överblick över vad som finns - Idag (och med fortsättning
Läs merDesignmönster för sociala användningssituationer
Designmönster för sociala användningssituationer Baserat på Interaction design patterns for computers in sociable use, kommande artikel i International Journal of Computer Applications in Technology, matar@ida.liu.se
Läs merTDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Konstruktorer Statiska metoder & attribut
Läs merTentamen i Objektorienterad modellering och diskreta strukturer
Lunds Tekniska Högskola Datavetenskap Ulf Asklund, Sven Gestegård obertz Tentamen EDAF10 2013 10 24, 8.00 13.00 Tentamen i Objektorienterad modellering och diskreta strukturer Vid bedömningen kommer hänsyn
Läs merKonstruktion av klasser med klasser
Konstruktion av klasser med klasser Klasser kan byggas på redan denierade klasser genom att klassobjekt används som dataattribut när en ny klass beskrivs. Exempel: Klassen PairOfDice har två attribut attribut
Läs merSwing. MER Java Foundation Classes (JFC) Vad är farorna. Hur lära sig? LayoutManagers. Exempel på några av komponenterna
MER Java Foundation Classes (JFC) Swing Swing Många klasser" Vettigt att lära sig dem utantill" - Tror inte det" -... men det kan vara bra att ha en liten överblick över vad som finns" - Idag (och med
Läs merSyns du, finns du? Examensarbete 15 hp kandidatnivå Medie- och kommunikationsvetenskap
Examensarbete 15 hp kandidatnivå Medie- och kommunikationsvetenskap Syns du, finns du? - En studie över användningen av SEO, PPC och sociala medier som strategiska kommunikationsverktyg i svenska företag
Läs merKvalitetsarbete I Landstinget i Kalmar län. 24 oktober 2007 Eva Arvidsson
Kvalitetsarbete I Landstinget i Kalmar län 24 oktober 2007 Eva Arvidsson Bakgrund Sammanhållen primärvård 2005 Nytt ekonomiskt system Olika tradition och förutsättningar Olika pågående projekt Get the
Läs merUML Objektdiagram. Objektorienterad modellering och design (EDAF25) Föreläsning 3. UML Sekvensdiagram. UML Objektdiagram. Agenda
Objektorienterad modellering och design (EDAF25) Föreläsning 3 UML Objektdiagram Agenda UML objekt och sekvensdiagram Design smells Designprinciper (ALP, SRP, OCP, DIP) (, Composite) Att göra denna och
Läs merProjekt 2 XL. Observer-mönstret
Projekt 2 XL Objektorienterad modellering och diskreta strukturer Inför nästa projekt Lennart Andersson Reviderad 2011 10 24 2011 OMD 2011 F15-1 Schema designmöten OMD 2011 F15-2 Observer-mönstret 2 och
Läs merDesign Patterns Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2017
Design Patterns Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2017 Vad är ett design pattern? Ett design pattern (designmönster) är en (ofta namngiven) generell lösning av en vanligt
Läs merLaboration 3 GUI-programmering
Laboration 3 GUI-programmering Syfte Erbjuder studenterna en möjlighet att lära sig grunderna i gränssnittsprogrammering i Java. Genomförande Genomförs individuellt eller i grupp om 2 personer. Uppskattad
Läs merDependencies High cohesion, low coupling. Objekt-orienterad programmering och design Alex Gerdes, 2018
Dependencies High cohesion, low coupling Objekt-orienterad programmering och design Alex Gerdes, 2018 Vad är ett bra program? Korrekt? Effektivt? Användbart? Flexibelt? Robust? Skalbart? Enkelt? Läsbart?
Läs merPrinciples of subclasses Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018
Principles of subclasses Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018 Implementation inheritance Subclassing, eller implementation inheritance (implementationsarv), ger oss
Läs merFöreläsning 1, vecka 6: Abstraktion genom objektorientering
TDA 548: Grundläggande Programvaruutveckling Föreläsning 1, vecka 6: Abstraktion genom objektorientering Magnus Myréen Chalmers, läsperiod 1, 2016-2017 Hur skulle ni implementera detta? (3D demo) Vi återkommer
Läs merA metadata registry for Japanese construction field
A metadata registry for Japanese construction field LCDM Forum, Japan October 25 th -27 th - 2006 TAKEYA, Isobe LCDM Forum Secretariat Document No. GEC-2005-002 LCDM Forum, Japan LCDM Forum, Japan Non-profit
Läs merTentamen LÖSNINGSFÖRSLAG. c) Tilldelningen C x = new D() ger kompileringsfel eftersom klassen D är abstrakt.
Tentamen 101213 - LÖSNINGSFÖRSLAG Uppgift 1. a) Ger utskriften c( ) in D b) Ger utskriften true c) Tilldelningen C x = new D() ger kompileringsfel eftersom klassen D är abstrakt. d) Ger utskriften b( )
Läs merDVG C01 TENTAMEN I PROGRAMSPRÅK PROGRAMMING LANGUAGES EXAMINATION :15-13: 15
DVG C01 TENTAMEN I PROGRAMSPRÅK PROGRAMMING LANGUAGES EXAMINATION 120607 08:15-13: 15 Ansvarig Lärare: Donald F. Ross Hjälpmedel: Bilaga A: BNF-definition En ordbok: studentenshemspråk engelska Betygsgräns:
Läs merRUP är en omfattande process, ett processramverk. RUP bör införas stegvis. RUP måste anpassas. till organisationen till projektet
RUP är en omfattande process, ett processramverk RUP bör införas stegvis RUP måste anpassas till organisationen till projektet Volvo Information Technology 1 Även RUP har sina brister... Dåligt stöd för
Läs merUrban Runoff in Denser Environments. Tom Richman, ASLA, AICP
Urban Runoff in Denser Environments Tom Richman, ASLA, AICP Tom Richman, CATALYST 1 Tom Richman, CATALYST 2 Tom Richman, CATALYST 3 Tom Richman, CATALYST 4 Tom Richman, CATALYST 5 Tom Richman, CATALYST
Läs merNya möjligheter med M3 Technology. Björn Svensson, Björn Torold
Nya möjligheter med Technology Björn Svensson, Björn Torold Vem är vi? 2 Copyright 2011 Lawson. All rights reserved. Nya möjligheter med Technology System Foundation Grid Förändrar basen i Installation
Läs merWebbtillgänglighet. Tillgänglighet på webben. Hörselskadades behov. Synskadades behov. Kognitivt funktionshindrades behov. Rörelsehindrades behov
Webbtillgänglighet Tillgänglighet på webben Att göra webbsidor så att de är tillgängliga för alla oavsett vilka funktionsnedsättningar man har Att göra sidor tillgängliga oavsett vilken inoch utmatningsutrustning
Läs merWebbreg öppen: 26/ /
Webbregistrering pa kurs, period 2 HT 2015. Webbreg öppen: 26/10 2015 5/11 2015 1. Du loggar in på www.kth.se via den personliga menyn Under fliken Kurser och under fliken Program finns på höger sida en
Läs mer