Component Based Software Engineering
|
|
- Holly Griffith
- 6 years ago
- Views:
Transcription
1 Component Based Software Engineering Masato Suzuki School of Information Science Japan Advanced Institute of Science and Technology 1 Schedule Mar :30-15:00 : 09. Introduction and basic concepts 15:10-16:40 : 10. Client side components(1) Mar :30-15:00 : 11. Client side components(2) 15:10-16:40 : 12. Server side components(1) Mar :30-15:00 : 13. Server side components(2) 15:10-16:40 : 14. Frameworks and middlewares Mar :30-14:00 : 15. State-of-the-art topics 2
2 #11 Client side components(2) Contents!! JavaBeans!!Delegation event model!!indirect connection by adapters!! MVC architecture style!! Examples 3 Application by JavaBeans JavaBeans are components mainly used for building clients in Java. They are!! based on introspection and serialization!! related to some visual image!! unit of applications/applets Reservation System Vacency in Single Twin OK JFrame/JApplet JLabel VacancyBean VacancyScrollBean VacancyContentsBe an JButton 4
3 Communication through Events!! Beans will interact through events, which notify!! mousemoved / mousepressed / keypressed etc.!! value of a property is changed!! Sender and receiver don't know each other, so we need a mechanism to pass the event. VacancyScrollBean Vacancy in 10 property: Month=10 create forward event when mouse is pressed at here event mouse pressed forward Adapter VacancyContentsBean Single Twin property: StartDay=10/20 increment StartDay by one when forward is received 5 Delegation event model!! A sender makes an event.!! A receiver is called through an eventlistener.!! An adapter will connect them indirectly. VacancyScrollBean Reservation System JButton JLabel JButton Vacancy in 10 pushed update pushed Single Twin Adapter changed update OK (adapters usually have no visuals) JLabel JLabel VacancyContentsBean JTable 6
4 Mechanisms for Delegation 1.! Listners are added to the source and the target to the action. 2.! The event is fired. 3.! The source broadcast the event to the all listeners. 4.! The listener who can accept the event will invoke the action corresponding to the event. 5.! The method in the target is called by the action. VacancyScrollBean ForwardEvent e... forward listener listeners L1 L2 L3 VacancyContentsBean incr action A1 A2 A3 target 7 Collaboration in classes!! Event source: class in which the event is fired!! Event target: class for which the event is sent!! Event listener: interface which must be implemented in the event target Source VacancyScrollBean addforwardlister() removefowardlister() fireforwardevent() e = new ForwardEvent(); forall l in listeners do l.forwardhappend(e); done (2)broadcase to all listeners listeners (0) add lister <<creates>> (1) create Event Object ForwardEvent getsource() s = e.getsource() // do operation ForwardListener ForwardHappend (forwardevent e) <<param>> Listener Target (VacancyContentsBean) ForwardHappend (forwardevent e) (3) perform operations 8
5 Role of Adapters!! Adapter works as event listener for the event source.!! Adapter works as action listener for the event target. Source Target VacancyScrollBean addforwardlister() removefowardlister() fireforwardevent() VacancyContentsBean StartDay: Date incrementstartday() addactionlistener(adp) 1:n relation might be allowed btwn source:target ActionListener actionperformed(e) ForwardListener ForwardHappend (forwardevent e) ForwardAdapter ForwardHappend (forwardevent e) target.incrementstartda y (e.getcount()) 9 Properties and Accessors Property is a value which shows status of Bean and read/write is allowed from the outside. Naming rule: Accessors of a property foo whose type is T must be as follows: getter : T getfoo() setter : setfoo(t foo) If you want to use other names, you have to specify them into the corresponding BeanInfo. public PropertyDescriptor[] getpropertydescriptor() { private Method getmethod = new Method( myget, beanclass); private Method setmethod = new Method( myset, beanclass); private PropertyDescriptor property = new PropertyDescriptor ( foo, getmethod, setmethod ); private static PropertyDescriptor[] pds = { property }: } return pds; 10
6 Notification of property change Using same mechanism to eventlisteners source VacancyContentsBean PropertyChangeSupport chg; addpropertychangelistener() removepropertychangelister() setvalue() getvalue() generated event PropertyChangeEvent getsource() getpropertyname() getnewvalue() getoldvalue() chg.firepropertychange( Month, old, new ); Month = new; adapter PropertyChangeAdapter listener interface PropertyChangeListener PropertyChange () PropertyChange (e) target.setmonth (e.getnewvalue()); 11 Model-View-Controller(1) An architecture style generally used for GUI. Role of each components: View Model!"#$"#! '(&()*! %&$"#! Controller persistent storage 12
7 Model-View-Contoller(2) Model holds encapsulated data.!! It grants readonly to the view!! It grants r/w to the controller Model +content +getcontent() +setcontent() R1: Suzuki 10/1 10/10 10/12 2 R2: Sato 10/4 10/11 10/ /10 10/12 R1: Suzuki 10/1 10/11 10/13 R2: Sato 10/4 2 (101,102) 1 (103) ResvModel +setowner() +setcreatedate() +setduration() +setroomcnt() (args are omitted) 13 Model-View-Contoller(3) View shows data.!! Many views might be used!! It provides update op. View +init(model) +update() R1: R2: Suzuki 10/10 10/12 2 Sato 10/11 10/13 1 ResvView1 ResvView2 Thay show latest information hold in the model when update is called. 10/10 10/11 10/12 10/ R1 R1 R1 102 R1 R1 R1 103 R2 R2 R2 14
8 Model-View-Contoller(4) Controller is responsible for input/change of data.!! Transfer events to corresponding inputs.!! If its behavior depends on the model, update must be automatically called. (eg. disable add button when data is readonly) R1: R2: new: Suzuki 10/10 10/12 2 Sato 10/11 10/13 1 Tanaka 10/12 10/13 1 Controller +handleev() +update() add Cancel ResvCont. V and C might be mixed sometimes. +handleev() 15 Integration in MVC (1) Class diagram shows static relashonships. InputWindow - model - controller +init(model) +makectrl() +update() create delegate refer use InputController - model - view +init(model,view) +handleevent() +update() ResvModel +init(view) +attach(ctrl) +getdata(field) +setdata(field) +service() 16
9 Integration in MVC (2) Communication diagram shows dynamisms. Change of num.,inputcont.,resvmodel handleevent(input) service(input) setdata(),inputwin Submit button handleevent(send) update() update() getdata() service(send) update() 17 Example: Reservation System Based on Client/Server architecture. Functional requirements : Submit/retrieve/cancel from user client Show status from manager client Consume/dispose from frontdesk clerk client No additional softwares are necessary for clients Non-functional requirements: scalability MVC is suitable for clients. It is interactive. It is required to present the same data on the different view. Structure of views might be changed. 18
10 Impl. of MVC with JavaBeans AWT/Swing Beans are already built on MVC. Ex: java.awt.textarea View ta.contentspane Software Architechture TextArea ta = new TextArea(); update() Model ta.text Software\nArchitecture\n ta.currentposition (1,3) ta.scrollbarpolicy BOTH Controller insert(t,pos) MouseEvent KeyEvent ta.actionlistener (Some detail in model are omitted) 19 Client with Beans(1) Example of view for retrieve/cancel resv. Model R1 Suzuki 10/10 10/20 10/23 S2T0 [101,102] R2 Sato 10/14 10/22 10/25 S1T2 [103,201,202] 1.retrieve from the server 2.disp. 4.disp. View1 R1 Suzuki R2 Sato Cont1 show show new 3.create View2 ID R1 Owner Suzuki Ckin 10/20 Ckout 10/23 Rooms S2 T0 Status OK user: buttons for his/her record only Cont2 cancel OK manager: all of buttons are enabled 20 send to the server when cancel is pressed
11 Client with Beans(2) Example of view for submit new resv. Model R1 Suzuki 10/10 10/20 10/23 S2T0 [101,102] R2 Sato 10/14 10/22 10/25 S1T2 [103,201,202] R1 Suzuki 10/10 10/29 11/03 S0T1 [] 3:send to the server 4.disp. 2.disp. View1 R1 Suzuki Cont1 show View3 Owner Suzuki Ckin 12/29 10/29 Ckout 01/02 11/03 R2 Sato show Rooms 1.create S0/T1 new Cont3 send back (View1 is updated after the request is accepted by the server) 21 Summary!! Delegation event model!! A sender and a receiver are independent.!! An adapter connects them by eventlister / actionlister.!! MVC architecture style!! Input (control) / Output (view) / Storage (model)!! Provide maximum flexibility.!! Implementation: Hotel Reservation System!! Retrieve/cancel reservation: static connection btwn a view and a controller!! Submit new reservation: dynamic connection btwn a view and a model 22
12 Next Chapter Server side components (1)!! Web application!! Servlet and JSP 23 Exercise Review the content of my lecture by answering the following simple questions.!! What is the delegation event model?!! What is the role of event / eventlistener?!! What is the role of action / actionlistener?!! What is the MVC architecture?!! Why we use MVC for client of our reservation system?!! Trace the behavior of clients shown in p20 and p21 step by step. 24
6 The MVC model. Main concepts to be covered. Pattern structure. Using design patterns. Design pattern: Observer. Observers
Main concepts to be covered 6 The MVC model Design patterns The design pattern The architecture Using design patterns Inter-class relationships are important, and can be complex. Some relationship recur
More informationComponent Based Software Engineering
Component Based Software Engineering Masato Suzuki School of Information Science Japan Advanced Institute of Science and Technology 1 Schedule Mar. 10 13:30-15:00 : 09. Introduction and basic concepts
More informationComponent Based Software Engineering
Component Based Software Engineering Masato Suzuki School of Information Science Japan Advanced Institute of Science and Technology 1 Schedule Mar. 10 13:30-15:00 : 09. Introduction and basic concepts
More informationJavaBeans, Properties of Beans, Constrained Properties
Richard G Baldwin (512) 223-4758, baldwin@austin.cc.tx.us, http://www2.austin.cc.tx.us/baldwin/ JavaBeans, Properties of Beans, Constrained Properties Java Programming, Lecture Notes # 512, Revised 02/19/98.
More informationHow to be a Good Bean
How to be a Good Bean A JavaBeans component, or simply a Bean, is a reusable software component that can be manipulated visually in a builder tool. The JavaBeans 1.0 architecture specifies how a JavaBeans
More informationJAVA JavaBeans Java, summer semester
JAVA JavaBeans Components overview component reusable piece of code characterized by services provided and required no exact definition component models JavaBeans Enterprise JavaBeans (EJB) CORBA Component
More informationJAVABEANS CLASS TO BE A COMPONENT WHAT MAKES A DETAILED VIEW. Tomas Cerny, Software Engineering, FEE, CTU in Prague,
JAVABEANS WHAT MAKES A CLASS TO BE A COMPONENT DETAILED VIEW Tomas Cerny, Software Engineering, FEE, CTU in Prague, 2016 1 BUILDING LARGE APP How? Tomas Cerny, Software Engineering, FEE, CTU in Prague,
More informationMarcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science
Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science mluckner@mini.pw.edu.pl http://www.mini.pw.edu.pl/~lucknerm } Abstract Window Toolkit Delegates creation and
More informationChallenges in component based programming. Lena Buffoni
Challenges in component based programming Lena Buffoni Challenge: Size & complexity Software is everywhere and increasingly complex (embedded systems, internet of things ) Single products have become product
More informationADF Mobile Code Corner
ADF Mobile Code Corner m03. Abstract: A requirement in software development is to conditionally enable/disable or show/hide UI. Usually, to accomplish this, you dynamically look-up a UI component to change
More informationIntroduction... xv SECTION 1: DEVELOPING DESKTOP APPLICATIONS USING JAVA Chapter 1: Getting Started with Java... 1
Introduction... xv SECTION 1: DEVELOPING DESKTOP APPLICATIONS USING JAVA Chapter 1: Getting Started with Java... 1 Introducing Object Oriented Programming... 2 Explaining OOP concepts... 2 Objects...3
More informationMIT AITI Swing Event Model Lecture 17
MIT AITI 2004 Swing Event Model Lecture 17 The Java Event Model In the last lecture, we learned how to construct a GUI to present information to the user. But how do GUIs interact with users? How do applications
More informationDistributed Collaboration - Assignment 1: Multi-View 1-User IM
Distributed Collaboration - Assignment 1: Multi-View 1-User IM Date Assigned:??? 1-View Target Date:??? Multi-View Submission Date:??? Objectives: Understand the use of observer pattern in user -interface
More information6.170 Design Project Experiences: Space Elevator Simulator Part I
6.170 Design Project Experiences: Space Elevator Simulator Part I Image removed due to copyright restrictions. 1 Page 1 1 Space Elevator Elevator 60,000 miles high to carry cargo into space Sci-fi solution
More informationCS211 GUI Dynamics. Announcements. Motivation/Overview. Example Revisted
CS211 GUI Dynamics Announcements Prelim 2 rooms: A-M are in Olin 155 N-A are in Olin 255 Final exam: final exam 5/17, 9-11:30am final review session (TBA, likely Sun 5/15) Consulting: regular consulting
More informationLecture 19 GUI Events
CSE 331 Software Design and Implementation Lecture 19 GUI Events The plan User events and callbacks Event objects Event listeners Registering listeners to handle events Anonymous inner classes Proper interaction
More informationEvent Driven Programming
Event Driven Programming 1. Objectives... 2 2. Definitions... 2 3. Event-Driven Style of Programming... 2 4. Event Polling Model... 3 5. Java's Event Delegation Model... 5 6. How to Implement an Event
More informationCS 112 Programming 2. Lecture 14. Event-Driven Programming & Animations (1) Chapter 15 Event-Driven Programming and Animations
CS 112 Programming 2 Lecture 14 Event-Driven Programming & Animations (1) Chapter 15 Event-Driven Programming and Animations rights reserved. 2 Motivations Suppose you want to write a GUI program that
More informationCSE 331 Software Design & Implementation
CSE 331 Software Design & Implementation Hal Perkins Spring 2017 GUI Event-Driven Programming 1 The plan User events and callbacks Event objects Event listeners Registering listeners to handle events Anonymous
More informationThe Observer Design Pattern
The Observer Design Pattern Some common applications Responding to GUI events Responding to changes in data values Model The observing task registers to be notified on any change of state for the object
More informationCourse Status Networking GUI Wrap-up. CS Java. Introduction to Java. Andy Mroczkowski
CS 190 - Java Introduction to Java Andy Mroczkowski uamroczk@cs.drexel.edu Department of Computer Science Drexel University March 10, 2008 / Lecture 8 Outline Course Status Course Information & Schedule
More informationJavaBeans Component Development
JavaBeans Component Development SL-291 JavaBeans Component Development November 1999 Copyright 1999 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, California 94303, U.S.A. All rights reserved.
More information10/16/2008. CSG 170 Round 5. Prof. Timothy Bickmore. User Analysis Task Analysis (6) Problem Scenarios (3)
Human-Computer Interaction CSG 170 Round 5 Prof. Timothy Bickmore T2: Requirements Analysis Review User Analysis Task Analysis (6) Problem Scenarios (3) 1 T2 Review Requirements Analysis Who is the user?
More informationChapter 15 Event-Driven Programming and Animations
Chapter 15 Event-Driven Programming and Animations 1 Motivations Suppose you want to write a GUI program that lets the user enter a loan amount, annual interest rate, and number of years and click the
More informationInformation Technology for Industrial Engineers 15 November ISE 582: Information Technology for Industrial Engineers
ISE 582: Information Technology for Industrial Engineers University of Southern California Department of Industrial and Systems Engineering Lecture 10 JAVA Cup 9: Images, Interactive Forms Handouts & Announcements
More informationClass 16: The Swing Event Model
Introduction to Computation and Problem Solving Class 16: The Swing Event Model Prof. Steven R. Lerman and Dr. V. Judson Harward 1 The Java Event Model Up until now, we have focused on GUI's to present
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #13: Java OO cont d. Janak J Parekh janak@cs.columbia.edu Administrivia Homework due next week Problem #2 revisited Constructors, revisited Remember: a
More informationPROGRAMMING DESIGN USING JAVA (ITT 303) Unit 7
PROGRAMMING DESIGN USING JAVA (ITT 303) Graphical User Interface Unit 7 Learning Objectives At the end of this unit students should be able to: Build graphical user interfaces Create and manipulate buttons,
More informationDesign Patterns. it s about the Observer pattern, the Command pattern, MVC, and some GUI. some more
Lecture: Software Engineering, Winter Semester 2011/2012 some more Design Patterns it s about the Observer pattern, the Command pattern, MVC, and some GUI Design Pattern *...+ describes a problem which
More informationCSE 331 Software Design and Implementation. Lecture 19 GUI Events
CSE 331 Software Design and Implementation Lecture 19 GUI Events Leah Perlmutter / Summer 2018 Announcements Announcements Quiz 7 due Thursday 8/9 Homework 8 due Thursday 8/9 HW8 has a regression testing
More informationAll the Swing components start with J. The hierarchy diagram is shown below. JComponent is the base class.
Q1. If you add a component to the CENTER of a border layout, which directions will the component stretch? A1. The component will stretch both horizontally and vertically. It will occupy the whole space
More informationCOMP 401 Recitation 8. Observer Pattern
COMP 401 Recitation 8 Observer Pattern Agenda Quick review of the Observer pattern Worked example Exam review (~30 minutes) Quiz (on your own time) 2 Observer Pattern Problem Statement I have some object
More informationProperty Editors and Customizers. COMP434 Software Design. Property Editors. Property Editors and. Property Editors.
COMP434 Software Design and Customizers and Customizers A property editor allows the user to read and modify the value of one property A customizer provides a graphical user interface that allows the user
More informationJava Graphical User Interfaces AWT (Abstract Window Toolkit) & Swing
Java Graphical User Interfaces AWT (Abstract Window Toolkit) & Swing Rui Moreira Some useful links: http://java.sun.com/docs/books/tutorial/uiswing/toc.html http://www.unix.org.ua/orelly/java-ent/jfc/
More informationJava & Graphical User Interface II. Wang Yang wyang AT njnet.edu.cn
Java & Graphical User Interface II Wang Yang wyang AT njnet.edu.cn Outline Review of GUI (first part) What is Event Basic Elements of Event Programming Secret Weapon - Inner Class Full version of Event
More informationDistributed Collaboration Prasun Dewan 1
3. Shared Objects Distributed Collaboration Prasun Dewan 1 In the previous chapter, we saw how WYSIWIS applications can be supported by shared window systems. Here we will focus on non-wysiwis interfaces.
More informationMVC: Model View Controller
MVC: Model View Controller Computer Science and Engineering College of Engineering The Ohio State University Lecture 26 Motivation Basic parts of any application: Data being manipulated A user-interface
More informationIntroflection. Dave Landers BEA Systems, Inc.
Introflection Dave Landers BEA Systems, Inc. dave.landers@bea.com Agenda What is Introflection? Primary Classes and Objects Loading Classes Creating Objects Invoking Methods Java Beans Proxy What is Introflection?
More informationModel-View Controller IAT351
Model-View Controller IAT351 Week 17 Lecture 1 15.10.2012 Lyn Bartram lyn@sfu.ca Administrivia CHANGE to assignments and grading 4 assignments This one (Assignment 3) is worth 20% Assignment 4 is worth
More informationThe JFrame Class Frame Windows GRAPHICAL USER INTERFACES. Five steps to displaying a frame: 1) Construct an object of the JFrame class
CHAPTER GRAPHICAL USER INTERFACES 10 Slides by Donald W. Smith TechNeTrain.com Final Draft 10/30/11 10.1 Frame Windows Java provides classes to create graphical applications that can run on any major graphical
More informationMVC Table / Delegation
CS108, Stanford Handout #27 Winter, 2006-07 Nick Parlante MVC Table / Delegation Delegate MVC Table Censor Example Uses the delegate strategy to build a variant table model Uses table model listener logic
More informationPIC 20A GUI with swing
PIC 20A GUI with swing Ernest Ryu UCLA Mathematics Last edited: November 22, 2017 Hello swing Let s create a JFrame. import javax. swing.*; public class Test { public static void main ( String [] args
More informationThe AWT Event Model 9
The AWT Event Model 9 Course Map This module covers the event-based GUI user input mechanism. Getting Started The Java Programming Language Basics Identifiers, Keywords, and Types Expressions and Flow
More informationTo gain experience using GUI components and listeners.
Lab 5 Handout 7 CSCI 134: Fall, 2017 TextPlay Objective To gain experience using GUI components and listeners. Note 1: You may work with a partner on this lab. If you do, turn in only one lab with both
More informationCSE1720 Lecture 08; Week 05 Lecture 09 Second level Third level Fourth level Fifth level
Shooter Games CSE1720 Click to edit Master Week text 04, styles Lecture 08; Week 05 Lecture 09 Second level Third level Fourth level Fifth level Winter 2014! Thursday, Jan 29, 2015/Tuesday, Feb 03, 2015
More informationSession 8. JavaBeans. Reading & Reference. Reading. Reference. Session 8 Java Beans. 2/27/2013 Robert Kelly, Head First Chapter 3 (MVC)
Session 8 JavaBeans 1 Reading Reading & Reference Head First Chapter 3 (MVC) Reference JavaBeans Tutorialdocs.oracle.com/javase/tutorial/javabeans/ 2 2/27/2013 1 Lecture Objectives Understand how the Model/View/Controller
More informationCSE 143. Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT
CSE 143 Event-driven Programming and Graphical User Interfaces (GUIs) with Swing/AWT slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/
More informationSwing from A to Z Some Simple Components. Preface
By Richard G. Baldwin baldwin.richard@iname.com Java Programming, Lecture Notes # 1005 July 31, 2000 Swing from A to Z Some Simple Components Preface Introduction Sample Program Interesting Code Fragments
More informationCS 134 Programming Exercise 7:
CS 134 Programming Exercise 7: Scribbler Objective: To gain more experience using recursion and recursive data structures. This week, you will be implementing a program we call Scribbler. You have seen
More informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 6 Problem Definition and Implementation Outline Problem: Create, read in and print out four sets of student grades Setting up the problem Breaking
More informationUsing Beans to Build an Application Naming Patterns for Bean Components Events Bean Property Types
Course Name: Advanced Java Lecture 23 Topics to be covered Using Beans to Build an Application Naming Patterns for Bean Components Events Bean Property Types Using Beans to Build an Application Builder
More informationGUI Software Architecture
GUI Software Architecture P2: Requirements Analysis User Analysis Task Analysis Problem Scenarios Usability Criteria Scenario Your engineers just developed a new desktop computer. They give you the following
More informationJavaBeans. JavaBeans. Java. Java JavaBeans. JavaBeans. JavaBeans GUI. JavaBeans Builder (vitsual) Java. JavaBeans. Beans. Builder.
JavaBeans Java JavaBeans JavaBeansBuilder (vitsual) Java JavaBeans JavaBeans Builder Java JavaBeans BeansJava JavaBeans Beans Java GUI JavaJDK(Java Development Kit) Abstract Window Toolkit(AWT)AWT window
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2006 FINAL EXAMINATION 7pm to 10pm, 19 DECEMBER 2006, Jeffrey Hall 1 st Floor Instructor: Alan
More informationITEC 120 4/14/11. Review. Need. Objectives. GUI basics JFrame JPanel JLabel, JButton, JTextField Layout managers. Lecture 38 GUI Interactivity
Review ITEC 120 Lecture 38 GUI GUI basics JFrame JPanel JLabel, JButton, JTextField Layout managers Flow / Box Border / Grid Objectives Need Add interactivity When you click on a button How does your code
More informationCS108, Stanford Handout #22. Thread 3 GUI
CS108, Stanford Handout #22 Winter, 2006-07 Nick Parlante Thread 3 GUI GUIs and Threading Problem: Swing vs. Threads How to integrate the Swing/GUI/drawing system with threads? Problem: The GUI system
More informationCode reuse for improving software productivity and quality in AOP
Code reuse for improving software productivity and quality in AOP Youssef Hassoun and Constantinos A. Constantinides School of Computer Science and Information Systems Birkbeck College, University of London,
More informationGUI Forms and Events, Part II
GUI Forms and Events, Part II Quick Start Compile step once always mkdir labs javac PropertyTax6.java cd labs Execute step mkdir 6 java PropertyTax6 cd 6 cp../5/propertytax5.java PropertyTax6.java Submit
More informationStruts interview questions
Struts interview questions 1.What is MVC? Model-View-Controller (MVC) is a design pattern put together to help control change. MVC decouples interface from business logic and data. Model : The model contains
More informationControl Flow: Overview CSE3461. An Example of Sequential Control. Control Flow: Revisited. Control Flow Paradigms: Reacting to the User
CSE3461 Control Flow Paradigms: Reacting to the User Control Flow: Overview Definition of control flow: The sequence of execution of instructions in a program. Control flow is determined at run time by
More informationContents Introduction 1
SELF-STUDY iii Introduction 1 Course Purpose... 1 Course Goals...1 Exercises... 2 Scenario-Based Learning... 3 Multimedia Overview... 3 Assessment... 3 Hardware and Software Requirements... 4 Chapter 1
More informationCommand-Line Applications. GUI Libraries GUI-related classes are defined primarily in the java.awt and the javax.swing packages.
1 CS257 Computer Science I Kevin Sahr, PhD Lecture 14: Graphical User Interfaces Command-Line Applications 2 The programs we've explored thus far have been text-based applications A Java application is
More informationCoSc Lab # 6 (The Model) Due Date: Part I, Experiment classtime, Tuesday, Nov 6 th, 2018.
CoSc 10403 Lab # 6 (The Model) Due Date: Part I, Experiment classtime, Tuesday, Nov 6 th, 2018. Part II, Program - by midnight, Tuesday, Nov 6 th, 2018. Again you will be required to "zip" together the
More informationJATKA Java Technology
JATKA Java Technology David Ježek david.jezek@vsb.cz Tel: 597 324 482 Office: A1035 1 Something from history 500 BC Pythagoras founded a society of peoples that believe among other things, that beans contains
More informationSINGLE EVENT HANDLING
SINGLE EVENT HANDLING Event handling is the process of responding to asynchronous events as they occur during the program run. An event is an action that occurs externally to your program and to which
More informationJava JavaBeans JavaBeans Builder (vitsual) Java JavaBeans JavaBeans http://java.sun.com/j2se/1.3/ja/docs/ja/guide/beans/ http://java.sun.com/products/javabeans/software/bdk_download.html Beans Development
More informationJava for Interfaces and Networks (DT3010, HT10)
Java for Interfaces and Networks (DT3010, HT10) Mouse Events, Timers, Serialization Federico Pecora School of Science and Technology Örebro University federico.pecora@oru.se Federico Pecora Java for Interfaces
More informationGUI 4.1 GUI GUI MouseTest.java import javax.swing.*; import java.awt.*; import java.awt.event.*; /* 1 */
25 4 GUI GUI GUI 4.1 4.1.1 MouseTest.java /* 1 */ public class MouseTest extends JApplet implements MouseListener /* 2 */ { int x=50, y=20; addmouselistener(this); /* 3 */ super.paint(g); /* 4 */ g.drawstring("hello
More informationGraphical User Interfaces 2
Graphical User Interfaces 2 CSCI 136: Fundamentals CSCI 136: Fundamentals of Computer of Science Computer II Science Keith II Vertanen Keith Vertanen Copyright 2011 Extending JFrame Dialog boxes Overview
More informationPrototype 1.0 Specification
Prototype 1.0 Specification Javier Ramos Rodríguez Use Case View The prototype 1.0 will implement some basic functionality of the system to check if the technology used is the appropriate one to implement
More informationJava GUI Design: the Basics
Java GUI Design: the Basics Daniel Brady July 25, 2014 What is a GUI? A GUI is a graphical user interface, of course. What is a graphical user interface? A graphical user interface is simply a visual way
More information[module lab 2.2] GUI FRAMEWORKS & CONCURRENCY
v1.0 BETA Sistemi Concorrenti e di Rete LS II Facoltà di Ingegneria - Cesena a.a 2008/2009 [module lab 2.2] GUI FRAMEWORKS & CONCURRENCY 1 GUI FRAMEWORKS & CONCURRENCY Once upon a time GUI applications
More informationSolution register itself
Observer Pattern Context: One object (the Subject) is the source of events. Other objects (Observers) want to know when an event occurs. Or: several objects should be immediately updated when the state
More informationLab 4. D0010E Object-Oriented Programming and Design. Today s lecture. GUI programming in
Lab 4 D0010E Object-Oriented Programming and Design Lecture 9 Lab 4: You will implement a game that can be played over the Internet. The networking part has already been written. Among other things, the
More informationJava Event Handling -- 1
Java Event Handling -- 1 Event Handling Happens every time a user interacts with a user interface. For example, when a user pushes a button, or types a character. 2 A Typical Situation: Scrollbar AWTEvent
More informationWeek Chapter Assignment SD Technology Standards. 1,2, Review Knowledge Check JP3.1. Program 5.1. Program 5.1. Program 5.2. Program 5.2. Program 5.
Week Chapter Assignment SD Technology Standards 1,2, Review JP3.1 Review exercises Debugging Exercises 3,4 Arrays, loops and layout managers. (5) Create and implement an external class Write code to create
More informationMore on Design. CSCI 5828: Foundations of Software Engineering Lecture 23 Kenneth M. Anderson
More on Design CSCI 5828: Foundations of Software Engineering Lecture 23 Kenneth M. Anderson Outline Additional Design-Related Topics Design Patterns Singleton Strategy Model View Controller Design by
More informationPart 1. Audio Controls and Indicators. When I first thought about writing a book on the processing of sound, I concluded INTRODUCTION...
PH009-Lindley01 11/23/99 11:08 AM Page 1 Part 1 Audio Controls and Indicators INTRODUCTION............................ When I first thought about writing a book on the processing of sound, I concluded
More informationAP CS Unit 11: Graphics and Events
AP CS Unit 11: Graphics and Events This packet shows how to create programs with a graphical interface in a way that is consistent with the approach used in the Elevens program. Copy the following two
More informationCSE 70 Final Exam Fall 2009
Signature cs70f Name Student ID CSE 70 Final Exam Fall 2009 Page 1 (10 points) Page 2 (16 points) Page 3 (22 points) Page 4 (13 points) Page 5 (15 points) Page 6 (20 points) Page 7 (9 points) Page 8 (15
More informationDesign Patterns. CSC207 Fall 2017
Design Patterns CSC207 Fall 2017 Design Patterns A design pattern is a general description of the solution to a well-established problem using an arrangement of classes and objects. Patterns describe the
More informationProctors are unable to respond to queries about the interpretation of exam questions. Do your best to answer exam questions as written.
SOLUTION HAND IN Answers Are Recorded on Question Paper QUEEN'S UNIVERSITY SCHOOL OF COMPUTING CISC212, FALL TERM, 2006 FINAL EXAMINATION 7pm to 10pm, 19 DECEMBER 2006, Jeffrey Hall 1 st Floor Instructor:
More informationEvent-driven Programming: GUIs
Dr. Sarah Abraham University of Texas at Austin Computer Science Department Event-driven Programming: GUIs Elements of Graphics CS324e Spring 2018 Event-driven Programming Programming model where code
More informationThe DSL created in Scala was accomplished using the Implicit conversion (Views) feature of Scala.
5. Rich Graphical User Interface DSL To evaluate the ability of Scala and Groovy to be DSL hosts, we created a small JavaFX like DSL for Rich Graphical User Interface (GUI) creation. The DSL provides features
More informationUser Manual. SmartLite WebQuiz SQL Edition
User Manual SmartLite WebQuiz SQL Edition SmartLite WebQuiz SQL All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including
More information1Z Java SE 5 and 6, Certified Associate Exam Summary Syllabus Questions
1Z0-850 Java SE 5 and 6, Certified Associate Exam Summary Syllabus Questions Table of Contents Introduction to 1Z0-850 Exam on Java SE 5 and 6, Certified Associate... 2 Oracle 1Z0-850 Certification Details:...
More informationMultimedia Information Systems Design Patterns & Web Frameworks (Part 1) VU ( ) Christoph Trattner
Multimedia Information Systems Design Patterns & Web Frameworks (Part 1) VU (707.020) Christoph Trattner Know-Center @Know-Center, TUG, Austria 1 Today s plan! PART 1: First partial exam (30mins) PART
More information1005ICT Object Oriented Programming Lecture Notes
1005ICT Object Oriented Programming Lecture Notes School of Information and Communication Technology Griffith University Semester 2, 2015 1 20 GUI Components and Events This section develops a program
More informationSocket attaches to a Ratchet. 2) Bridge Decouple an abstraction from its implementation so that the two can vary independently.
Gang of Four Software Design Patterns with examples STRUCTURAL 1) Adapter Convert the interface of a class into another interface clients expect. It lets the classes work together that couldn't otherwise
More informationExample Programs. COSC 3461 User Interfaces. GUI Program Organization. Outline. DemoHelloWorld.java DemoHelloWorld2.java DemoSwing.
COSC User Interfaces Module 3 Sequential vs. Event-driven Programming Example Programs DemoLargestConsole.java DemoLargestGUI.java Demo programs will be available on the course web page. GUI Program Organization
More informationCS 251 Intermediate Programming GUIs: Event Listeners
CS 251 Intermediate Programming GUIs: Event Listeners Brooke Chenoweth University of New Mexico Fall 2017 What is an Event Listener? A small class that implements a particular listener interface. Listener
More informationGUI Program Organization. Sequential vs. Event-driven Programming. Sequential Programming. Outline
Sequential vs. Event-driven Programming Reacting to the user GUI Program Organization Let s digress briefly to examine the organization of our GUI programs We ll do this in stages, by examining three example
More informationGraphical User Interfaces 2
Graphical User Interfaces 2 CSCI 136: Fundamentals of Computer Science II Keith Vertanen Copyright 2011 Extending JFrame Dialog boxes Ge?ng user input Overview Displaying message or error Listening for
More informationGUI Event Handlers (Part I)
GUI Event Handlers (Part I) 188230 Advanced Computer Programming Asst. Prof. Dr. Kanda Runapongsa Saikaew (krunapon@kku.ac.th) Department of Computer Engineering Khon Kaen University 1 Agenda General event
More informationModule 4 Multi threaded Programming, Event Handling. OOC 4 th Sem, B Div Prof. Mouna M. Naravani
Module 4 Multi threaded Programming, Event Handling OOC 4 th Sem, B Div 2017-18 Prof. Mouna M. Naravani Event Handling Complete Reference 7 th ed. Chapter No. 22 Event Handling Any program that uses a
More informationJava SE7 Fundamentals
Java SE7 Fundamentals Introducing the Java Technology Relating Java with other languages Showing how to download, install, and configure the Java environment on a Windows system. Describing the various
More informationJava: Graphical User Interfaces (GUI)
Chair of Software Engineering Carlo A. Furia, Marco Piccioni, and Bertrand Meyer Java: Graphical User Interfaces (GUI) With material from Christoph Angerer The essence of the Java Graphics API Application
More informationCritical Thinking Assignment #6: Java Program #6 of 6 (70 Points)
Critical Thinking Assignment #6: Java Program #6 of 6 (70 Points) Java Interactive GUI Application for Number Guessing with Colored Hints (based on Module 7 material) 1) Develop a Java application that
More informationObject Oriented Programming
Object Oriented Programming Part 3 Refactoring Console Input and Output 1 Lecture Refactoring Design Problem with I/O Design Redesign of I/O Refactoring Code 2 Refactoring Design 3 Refactoring Refactoring
More informationCOWLEY COLLEGE & Area Vocational Technical School
COWLEY COLLEGE & Area Vocational Technical School COURSE PROCEDURE FOR ADVANCED JAVA PROGRAMMING CIS1870 3 Credit Hours Student Level: This course is open to students on the college level in either freshman
More information