Chapter 1 Introduction. What is a Design Pattern? Design Patterns in Smalltalk MVC
|
|
- Marcus Armstrong
- 6 years ago
- Views:
Transcription
1 Chapter 1 Intrductin Designing bject-riented sftware is hard, and designing reusable bject-riented sftware is even harder. It takes a lng time fr nvices t learn what gd bject-riented design is all abut. Experienced designers evidently knw smething inexperienced nes dn't. Expert designers find recurring patterns f classes and cmmunicating bjects in many bject-riented systems, and can apply them immediately t design prblems withut having t rediscver them. Recrding experience in designing bject-riented sftware as design patterns. Design patterns make it easier t reuse successful designs and architectures. What is a Design Pattern? Christpher Alexander says, "Each pattern describes a prblem which ccurs ver and ver again in ur envirnment, and then describes the cre f the slutin t that prblem, in such a way that yu can use this slutin a millin times ver, withut ever ding it the same way twice". Fur essential elements f a pattern:: 1. The pattern name is a handle we can use t describe a design prblem, its slutins, and cnsequences in a wrd r tw. 2. The prblem describes when t apply the pattern. 3. The slutin describes the elements that make up the design, their relatinships, respnsibilities, and cllabratins 4. The cnsequences are the results and trade-ffs f applying the pattern. The design patterns are descriptins f cmmunicating bjects and classes that are custmized t slve a general design prblem in a particular cntext. Design Patterns in Smalltalk MVC Mdel is the applicatin bject View is the mdel's screen presentatin Cntrller defines the way the user interface reacts t user input. MVC decuples views and mdels by establishing a subscribe/ntify prtcl between them.
2 The design is applicable t a mre general prblem: decupling bjects s that changes t ne can affect any number f thers withut requiring the changed bject t knw details f the thers. (Observer design pattern) MVC supprts nested views with the CmpsiteView class, a subclass f View. (Cmpsite design pattern). MVC als lets yu change the way a view respnds t user input withut changing its visual presentatin by encapsulating the respnse mechanism in a Cntrller bject. (Strategy design pattern) MVC uses Factry Methd design pattern t specify the default cntrller class fr a view and Decratr design pattern t add scrlling t a view. Describing Design Patterns Pattern Name and Classificatin Intent What des the design pattern d? What is its ratinale and intent? What particular design issue r prblem des it address? Als Knwn As Mtivatin A scenari that illustrates a design prblem and hw the class and bject structures in the pattern slve the prblem. Applicability What are the situatins in which the design pattern can be applied? Structure A graphical representatin f the classes in the pattern using a ntatin based n OMT r UML. Participants The classes and/r bjects participating in the design pattern and their respnsibilities. Cllabratins Hw the participants cllabrate t carry ut their respnsibilities. Cnsequences Hw des the pattern supprt its bjectives? What are the trade-ffs and results f using the pattern? Implementatin What shuld yu be aware f when implementing the pattern? Are there language-specific issues? Sample Cde Cde fragments that illustrate hw yu might implement the pattern in particular bject-riented prgramming languages.
3 Knwn Uses Examples f the pattern fund in real systems. Related Patterns The Catalg f Design Patterns 1.0 Abstract Factry prvides an interface fr creating families f related r dependent bjects withut specifying their cncrete classes. 2.0 Adapter cnverts the interface f a class int anther interface clients expect. Adapter lets classes wrk tgether that culdn't therwise because f incmpatible interfaces. 3.0 Bridge decuples an abstractin frm its implementatin s that the tw can vary independently. 4.0 Builder separates the cnstructin f a cmplex bject frm its representatin s that the same cnstructin prcess can create different representatins. 5.0 Chain f Respnsibility avids cupling the sender f a request t its receiver by giving mre than ne bject a chance t handle the request. Chain the receiving bjects and pass the request alng the chain until an bject handles it. 6.0 Cmmand encapsulates a request as an bject, thereby letting yu parameterize clients with different requests, queue r lg requests, and supprt undable peratins. 7.0 Cmpsite cmpses bjects int tree structures t represent part-whle hierarchies. Cmpsite lets clients treat individual bjects and cmpsitins f bjects unifrmly. 8.0 Decratr attaches additinal respnsibilities t an bject dynamically. Decratrs prvide a flexible alternative t subclassing fr extending functinality. 9.0 Facade prvides a unified interface t a set f interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier t use Factry Methd defines an interface fr creating an bject, but let subclasses decide which class t instantiate. Factry Methd lets a class defer instantiatin t subclasses Flyweight uses sharing t supprt large numbers f fine-grained bjects efficiently Interpreter, given a language, defines a representin fr its grammar alng with an interpreter that uses the representatin t interpret sentences in the language Iteratr prvides a way t access the elements f an aggregate bject sequentially withut expsing its underlying representatin Mediatr defines an bject that encapsulates hw a set f bjects interact Mement, withut vilating encapsulatin, captures and externalizes an bject's internal state s that the bject can be restred t this state later.
4 16.0 Observer defines a ne-t-many dependency between bjects s that when ne bject changes state, all its dependents are ntified and updated autmatically Prttype specifies the kinds f bjects t create using a prttypical instance, and create new bjects by cpying this prttype Prxy prvides a surrgate r placehlder fr anther bject t cntrl access t it Singletn ensures a class nly has ne instance, and prvide a glbal pint f access t it State allws an bject t alter its behavir when its internal state changes. The bject will appear t change its class Strategy defines a family f algrithms, encapsulate each ne, and make them interchangeable. Strategy lets the algrithm vary independently frm clients that use it Template Methd defines the skeletn f an algrithm in an peratin, deferring sme steps t subclasses. Template Methd lets subclasses redefine certain steps f an algrithm withut changing the algrithm's structure Visitr represents an peratin t be perfrmed n the elements f an bject structure. Visitr lets yu define a new peratin withut changing the classes f the elements n which it perates. Organizing the Catalg Purpse Creatinal Structural Behaviral Scpe Class Object Factry Methd Abstract Factry Builder Prttype Singletn Adapter Adapter Bridge Cmpsite Decratr Facade Prxy Interpreter Template Methd Chain f Respnsibility Cmmand Iteratr Mediatr Mement Flyweight Observer State Strategy Visitr
5
6 Hw Design Patterns Slve Design Prblems 1. Finding Apprpriate Objects Design patterns help yu identify less-bvius abstractins and the bjects that can capture them. 2. Determining Object Granularity Facade pattern describes hw t represent cmplete subsystems as bjects. Flyweight pattern describes hw t supprt huge numbers f bjects at the finest granularities. Abstract Factry and Builder yield bjects whse nly respnsibilities are creating ther bjects. Visitr and Cmmand yield bjects whse nly respnsibilities are t implement a request n anther bject r grup f bjects. 3. Specifying Object Interfaces The set f all signatures defined by an bject's peratins is called the interface t the bject. A type is a name used t dente a particular interface. An bject may have many types, and widely different bjects can share a type. A type is a subtype f anther if its interface cntains the interface f its supertype, r a subtype inheriting the interface f its supertype. Objects are knwn nly thrugh their interfaces. An bject's interface says nthing abut its implementatin When a request is sent t an bject, the particular peratin that's perfrmed depends n bth the request and the receiving bject. Dynamic binding: the run-time assciatin f a request t an bject and ne f its peratins. Plymrphism: dynamic binding can substitute bjects that have identical interfaces fr each ther at run-time Design patterns help yu define interfaces by identifying their key elements and the kinds f data that get sent acrss an interface. Design patterns als specify relatinships between interfaces. 4. Specifying Object Implementatins An bject's implementatin is defined by its class.
7 An abstract class is ne whse main purpse is t define a cmmn interface fr its subclasses. A mixin class is a class that's intended t prvide an ptinal interface r functinality t ther classes.
8 Class versus Interface Inheritance An bject's class defines hw the bject is implemented. An bject's type nly refers t its interface. An bject can have many types. Objects f different classes can have the same type. Relatinship between class and type: class as type (C++) vs. interface as type (Java). Class inheritance: Sub-typing + Implementatin inheritance Interface inheritance: Sub-typing nly (Plymrphism) Pure abstract classes as interfaces. Many f the design patterns depend n the distinctin between class and interface inheritances First Principle f reusable bject-riented design: Prgramming t an Interface, nt an Implementatin Class inheritance-based implementatin reuse is nly half the stry. Inheritance's ability t define families f bjects with identical interfaces is als imprtant, because plymrphism depends n it. Tw benefits t manipulating bjects slely in terms f the interface defined by abstract classes: 1. Clients remain unaware f the specific types f bjects they use, as lng as the bjects adhere t the interface that clients expect. 2. Clients remain unaware f the classes that implement these bjects. Clients nly knw abut the abstract class(es) defining the interface. Dn't declare variables t be instances f particular cncrete classes. Creatinal patterns ensure that yur system is written in terms f interfaces, nt implementatins.
9 5. Putting Reuse Mechanisms t Wrk Inheritance versus Cmpsitin White-bx reuse: class inheritance. Black-bx reuse: bject cmpsitin Class inheritance: Advantages supprted by prgramming languages, defined statically at cmpile-time and is straightfrward t use make it easier t mdify the implementatin being reused, when a subclass verrides sme but nt all peratins. Disadvantages Cannt change the implementatins/representatins inherited frm parent classes at run-time Implementatin dependency between a subclass and its parent class. Object cmpsitin Advantages Defined dynamically at run-time by referencing interfaces f bjects. Access ther bjects thugh their interfaces nly, nt break encapsulatin. Fewer implementatin dependencies. Small class hierarchies Disadvantages Mre bjects The system's behavir will depend n their interrelatinships instead f being defined in ne class The secnd principle f bject-riented design: Favr bject cmpsitin ver class inheritance. Delegatin In delegatin, tw bjects are invlved in handling a request: a receiving bject delegates peratins t its delegate. The receiver passes itself t the delegate t let the delegated peratin refer t the receiver.
10 Advantage: it makes it easy t cmpse behavirs at run-time and t change the way they're cmpsed. Disadvantage: harder t understand than mre static sftware, and run-time inefficiencies, Delegatin wrks best when it's used in standard patterns. Design patterns that use delegatin: State, Strategy, Visitr, Mediatr, Chain f Respnsibility, and Bridge patterns. 6. Relating Run-Time and Cmpile-Time Structures An bject-riented prgram's run-time structure ften bears little resemblance t its cde structure. Aggregatin Manifested at run-times. One bject wns (having) r is respnsible fr anther bject (being part). Acquaintance Manifested at cmpile-times. An bject merely knws f anther bject (assciatin, using). A weaker relatinship than aggregatin. In implementatin r cde, aggregatin and acquaintance cannt be distinct. Many design patterns capture the distinctin between cmpile-time and run-time structures explicitly.. The run-time structures aren't clear frm the cde until yu understand the patterns. 7. Designing fr Change Cmmn causes f redesign alng with the design pattern(s) that address them: 1. Creating an bject by specifying a class explicitly. Design patterns: Abstract Factry, Factry Methd, Prttype. 2. Dependence n specific peratins.. Design patterns: Chain f Respnsibility, Cmmand. 3. Dependence n hardware and sftware platfrm.. Design patterns: Abstract Factry, Bridge. 4. Dependence n bject representatins r implementatins..
11 Design patterns: Abstract Factry, Bridge, Mement, Prxy. 5. Algrithmic dependencies. Design patterns: Builder, Iteratr, Strategy, Template Methd, Visitr. 6. Tight cupling. Design patterns: Abstract Factry, Bridge, Chain f Respnsibility, Cmmand, Facade, Mediatr, Observer. Extending functinality by subclassing. Design patterns: Bridge, Chain f Respnsibility, Cmpsite, Decratr, Observer, Strategy. 7. Inability t alter classes cnveniently. Design patterns: Adapter, Decratr, Visitr. The rle design patterns play in the develpment f three brad classes f sftware: applicatin prgrams, tlkits, and framewrks. Applicatin Prgrams Internal reuse, maintainability, and extensin are high pririties. Design patterns that reduce dependencies can increase internal reuse. Design patterns make an applicatin mre maintainable when they're used t limit platfrm dependencies and t layer a system. Design patterns enhance extensibility. Tlkits (class/cmpnent libraries) Cde reuse Applicatin-general design Framewrks A framewrk is a set f cperating classes that make up a reusable design fr a specific class f sftware The framewrk dictates the architecture f yur applicatin. Framewrks emphasize design reuse ver cde reuse. Framewrks are implemented as class hierarchies.. Reuse n framewrk level leads t an inversin f cntrl between the applicatin and the sftware n which it's based. Mature framewrks usually incrprate several design patterns Design patterns vs. framewrks 1. Design patterns are mre abstract than framewrks. 2. Design patterns are smaller architectural elements than framewrks. 3. Design patterns are less specialized than framewrks.
12 Hw t Select a Design Pattern 1. Cnsider hw design patterns slve design prblems. 2. Scan Intent sectins. 3. Study hw patterns interrelate. 4. Study patterns f like purpse. 5. Examine a cause f redesign. 6. Cnsider what shuld be variable in yur design. Design Pattern Purpse Aspect(s) That Can Vary Creatinal Abstract Factry families f prduct bjects Structural Behaviral Builder Factry Methd Prttype Singletn Adapter Bridge Cmpsite Decratr Facade Flyweight Prxy Chain f Respnsibility Cmmand Interpreter Iteratr Mediatr Mement Observer State Strategy Template Methd Visitr hw a cmpsite bject gets created subclass f bject that is instantiated class f bject that is instantiated the sle instance f a class interface t an bject implementatin f an bject structure and cmpsitin f an bject respnsibilities f an bject withut subclassing interface t a subsystem strage csts f bjects hw an bject is accessed; its lcatin bject that can fulfill a request when and hw a request is fulfilled grammar and interpretatin f a language hw an aggregate's elements are accessed, traversed hw and which bjects interact with each ther what private infrmatin is stred utside an bject, and when number f bjects that depend n anther bject; hw the dependent bjects stay up t date states f an bject an algrithm steps f an algrithm peratins that can be applied t bject(s) withut changing their class(es)
13 Hw t Use a Design Pattern 1. Read the pattern nce thrugh fr an verview. Pay particular attentin t the Applicability and Cnsequences sectins t ensure the pattern is right fr yur prblem. 2. G back and study the Structure, Participants, and Cllabratins sectins. Make sure yu understand the classes and bjects in the pattern and hw they relate t ne anther. 3. Lk at the Sample Cde sectin t see a cncrete example f the pattern in cde. Studying the cde helps yu learn hw t implement the pattern. 4. Chse names fr pattern participants that are meaningful in the applicatin cntext. 5. Define the classes. 6. Define applicatin-specific names fr peratins in the pattern. 7. Implement the peratins t carry ut the respnsibilities and cllabratins in the pattern. The Implementatin sectin ffers hints t guide yu in the implementatin.
Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use.
Facade 1 Intent Prvide a unified interface t a set f interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier t use. Mtivatin Applicability Use the Facade pattern
More informationDesign Patterns. Collectional Patterns. Session objectives 11/06/2012. Introduction. Composite pattern. Iterator pattern
Design Patterns By Võ Văn Hải Faculty f Infrmatin Technlgies HUI Cllectinal Patterns Sessin bjectives Intrductin Cmpsite pattern Iteratr pattern 2 1 Intrductin Cllectinal patterns primarily: Deal with
More informationSometimes it's necessary to issue requests to objects without knowing anything about the operation being requested or the receiver of the request.
Cmmand 1 Intent Encapsulate a request as an bject, thereby letting yu parameterize clients with different requests, queue r lg requests, and supprt undable peratins. Als Knwn As Actin, Transactin Mtivatin
More informationProliferating interconnections tend to reduce object reuse. It can be difficult to change the system's behavior in any significant way.
Mediatr 1 Intent Define an bject that encapsulates hw a set f bjects interact. Mediatr prmtes lse cupling by keeping bjects frm referring t each ther explicitly, and it lets yu vary their interactin independently.
More informationOne reason for controlling access to an object is to defer the full cost of its creation and initialization until we actually need to use it.
Prxy 1 Intent Prvide a surrgate r placehlder fr anther bject t cntrl access t it. Als Knwn As Surrgate Mtivatin One reasn fr cntrlling access t an bject is t defer the full cst f its creatin and initializatin
More informationVisitor. Intent. Motivation
Visitr 1 Intent Represent an peratin t be perfrmed n the elements f an bject structure. Visitr lets yu define a new peratin withut changing the classes f the elements n which it perates. Mtivatin Applicability
More informationCommon Language Runtime
Intrductin t.net framewrk.net is a general-purpse sftware develpment platfrm, similar t Java. Micrsft intrduced.net with purpse f bridging gap between different applicatins..net framewrk aims at cmbining
More informationUML : MODELS, VIEWS, AND DIAGRAMS
UML : MODELS, VIEWS, AND DIAGRAMS Purpse and Target Grup f a Mdel In real life we ften bserve that the results f cumbersme, tedius, and expensive mdeling simply disappear in a stack f paper n smene's desk.
More informationComposition class is responsible for maintaining and updating the linebreaks of text displayed in a text viewer.
Strategy 1 Intent Define a family f algrithms, encapsulate each ne, and make them interchangeable. Strategy lets the algrithm vary independently frm clients that use it. Als Knwn As Plicy Mtivatin The
More informationSeparate the construction of a complex object from its representation so that the same construction process can create different representations.
Builder 1 Intent Separate the cnstructin f a cmplex bject frm its representatin s that the same cnstructin prcess can create different representatins. Mtivatin. Applicability The algrithm fr creating a
More informationChain of Responsibility
Chain f Respnsibility 1 Intent Avid cupling the sender f a request t its receiver by giving mre than ne bject a chance t handle the request. Chain the receiving bjects and pass the request alng the chain
More informationSynoptic Display Studio Developers Guide
Synptic Display Studi Develpers Guide Table f Cntents 1. Intrductin... 3 2. Cntributing widgets... 4 2.1. Cncepts... 4 2.2. Defining the mdel... 5 2.2.1. Prvide a widget mdel... 5 2.2.2. Define a widget
More informationInfrastructure Series
Infrastructure Series TechDc WebSphere Message Brker / IBM Integratin Bus Parallel Prcessing (Aggregatin) (Message Flw Develpment) February 2015 Authr(s): - IBM Message Brker - Develpment Parallel Prcessing
More informationProper Document Usage and Document Distribution. TIP! How to Use the Guide. Managing the News Page
Managing the News Page TABLE OF CONTENTS: The News Page Key Infrmatin Area fr Members... 2 Newsletter Articles... 3 Adding Newsletter as Individual Articles... 3 Adding a Newsletter Created Externally...
More informationMcGill University School of Computer Science COMP-206. Software Systems. Due: September 29, 2008 on WEB CT at 23:55.
Schl f Cmputer Science McGill University Schl f Cmputer Science COMP-206 Sftware Systems Due: September 29, 2008 n WEB CT at 23:55 Operating Systems This assignment explres the Unix perating system and
More informationProcurement Contract Portal. User Guide
Prcurement Cntract Prtal User Guide Cntents Intrductin...2 Access the Prtal...2 Hme Page...2 End User My Cntracts...2 Buttns, Icns, and the Actin Bar...3 Create a New Cntract Request...5 Requester Infrmatin...5
More informationLog shipping is a HA option. Log shipping ensures that log backups from Primary are
LOG SHIPPING Lg shipping is a HA ptin. Lg shipping ensures that lg backups frm Primary are cntinuusly applied n standby. Lg shipping fllws a warm standby methd because manual prcess is invlved t ensure
More informationThese tasks can now be performed by a special program called FTP clients.
FTP Cmmander FAQ: Intrductin FTP (File Transfer Prtcl) was first used in Unix systems a lng time ag t cpy and mve shared files. With the develpment f the Internet, FTP became widely used t uplad and dwnlad
More informationAndrid prgramming curse Data strage Sessin bjectives Internal Strage Intrductin By Võ Văn Hải Faculty f Infrmatin Technlgies Andrid prvides several ptins fr yu t save persistent applicatin data. The slutin
More informationContents: Module. Objectives. Lesson 1: Lesson 2: appropriately. As benefit of good. with almost any planning. it places on the.
1 f 22 26/09/2016 15:58 Mdule Cnsideratins Cntents: Lessn 1: Lessn 2: Mdule Befre yu start with almst any planning. apprpriately. As benefit f gd T appreciate architecture. it places n the understanding
More informationRISKMAN REFERENCE GUIDE TO USER MANAGEMENT (Non-Network Logins)
Intrductin This reference guide is aimed at managers wh will be respnsible fr managing users within RiskMan where RiskMan is nt cnfigured t use netwrk lgins. This guide is used in cnjunctin with the respective
More informationAngularJS. Unit Testing AngularJS Directives with Karma & Jasmine
AngularJS Unit Testing AngularJS Directives with Karma & Jasmine Directives Directives are different frm ther cmpnents they aren t used as bjects in the JavaScript cde They are used in HTML templates f
More informationCMC Blade BIOS Profile Cloning
This white paper describes the detailed capabilities f the Chassis Management Cntrller s Blade BIOS Prfile Clning feature. Authr Crey Farrar This dcument is fr infrmatinal purpses nly and may cntain typgraphical
More informationLicensing the Core Client Access License (CAL) Suite and Enterprise CAL Suite
Vlume Licensing brief Licensing the Cre Client Access License (CAL) Suite and Enterprise CAL Suite Table f Cntents This brief applies t all Micrsft Vlume Licensing prgrams. Summary... 1 What s New in this
More information16/07/2012. Design Patterns. By Võ Văn Hải Faculty of Information Technologies - HUI. Behavioral Patterns. Session objectives. Strategy.
Design Patterns By Võ Văn Hải Faculty f Infrmatin Technlgies - HUI Behaviral Patterns Sessin bjectives Strategy Observer 2 1 Behaviral Patterns 3 Mtivating example - SimpleUDuck Je wrks fr a cmpany that
More informationCisco Tetration Analytics, Release , Release Notes
Cisc Tetratin Analytics, Release 1.102.21, Release Ntes This dcument describes the features, caveats, and limitatins fr the Cisc Tetratin Analytics sftware. Additinal prduct Release ntes are smetimes updated
More informationDesign Pattern What is a Design Pattern? Design Pattern Elements. Almas Ansari Page 1
What is a Design Pattern? Each pattern Describes a problem which occurs over and over again in our environment,and then describes the core of the problem Novelists, playwrights and other writers rarely
More informationTask 1 High-Level Object-Oriented Class Specification Create Initial Design Classes Designing Boundary Classes
Task 1 High-Level Object-Oriented Class Specificatin This assessment task requires yu t analyse requirements and prduce a set f high-level bject-riented class specificatins fr a specific bject-riented
More informationGetting Started with the Web Designer Suite
Getting Started with the Web Designer Suite The Web Designer Suite prvides yu with a slew f Dreamweaver extensins that will assist yu in the design phase f creating a website. The tls prvided in this suite
More informationINSTALLING CCRQINVOICE
INSTALLING CCRQINVOICE Thank yu fr selecting CCRQInvice. This dcument prvides a quick review f hw t install CCRQInvice. Detailed instructins can be fund in the prgram manual. While this may seem like a
More informationPlease contact technical support if you have questions about the directory that your organization uses for user management.
Overview ACTIVE DATA CALENDAR LDAP/AD IMPLEMENTATION GUIDE Active Data Calendar allws fr the use f single authenticatin fr users lgging int the administrative area f the applicatin thrugh LDAP/AD. LDAP
More informationHistory of Java. VM (Java Virtual Machine) What is JVM. What it does. 1. Brief history of Java 2. Java Version History
Histry f Java 1. Brief histry f Java 2. Java Versin Histry The histry f Java is very interesting. Java was riginally designed fr interactive televisin, but it was t advanced technlgy fr the digital cable
More informationTest Pilot User Guide
Test Pilt User Guide Adapted frm http://www.clearlearning.cm Accessing Assessments and Surveys Test Pilt assessments and surveys are designed t be delivered t anyne using a standard web brwser and thus
More informationSoftware Engineering
Sftware Engineering Chapter #1 Intrductin Sftware systems are abstract and intangible. Sftware engineering is an engineering discipline that is cncerned with all aspects f sftware prductin. Sftware Prducts
More informationISTE-608 Test Out Written Exam and Practical Exam Study Guide
PAGE 1 OF 9 ISTE-608 Test Out Written Exam and Practical Exam Study Guide Written Exam: The written exam will be in the frmat f multiple chice, true/false, matching, shrt answer, and applied questins (ex.
More informationAssignment #5: Rootkit. ECE 650 Fall 2018
General Instructins Assignment #5: Rtkit ECE 650 Fall 2018 See curse site fr due date Updated 4/10/2018, changes nted in green 1. Yu will wrk individually n this assignment. 2. The cde fr this assignment
More informationJSR Java API for JSON Binding (JSON- B)
JSR Java API fr JSON Binding (JSON- B) Title: * Java API fr JSON Binding (JSON- B) Summary: * A standard binding layer (metadata & runtime) fr cnverting Java bjects t/frm JSON messages. Sectin 1: Identificatin
More informationSan José State University College of Science / Department of Computer Science CS 151 Object-Oriented Design, Section 6, Spring 2017
San Jsé State University Cllege f Science / Department f Cmputer Science CS 151 Object-Oriented Design, Sectin 6, Spring 2017 Curse and Cntact Infrmatin Instructr: Angus Yeung, Ph.D. Office Lcatin: DH
More informationLecture 6 -.NET Remoting
Lecture 6 -.NET Remting 1. What is.net Remting?.NET Remting is a RPC technique that facilitates cmmunicatin between different applicatin dmains. It allws cmmunicatin within the same prcess, between varius
More informationCustomer Information. Agilent 2100 Bioanalyzer System Startup Service G2949CA - Checklist
This checklist is used t prvide guidance and clarificatin n aspects f the auxillary Startup Service (G2949CA) including Security Pack Installatin and Familiarizatin f yur Agilent 2100 Bianalyzer System
More informationAssignment 10: Transaction Simulation & Crash Recovery
Database Systems Instructr: Ha-Hua Chu Fall Semester, 2004 Assignment 10: Transactin Simulatin & Crash Recvery Deadline: 23:59 Jan. 5 (Wednesday), 2005 This is a grup assignment, and at mst 2 students
More informationDeveloping Microsoft SharePoint Server 2013 Core Solutions
Develping Micrsft SharePint Server 2013 Cre Slutins Develping Micrsft SharePint Server 2013 Cre Slutins Curse Cde: 20488 Certificatin Exam: 70-488 Duratin: 5 Days Certificatin Track: N/A Frmat: Classrm
More informationAloha Offshore SDLC Process
Alha Sftware Develpment Life Cycle Alha Offshre SDLC Prcess Alha Technlgy fllws a sftware develpment methdlgy that is derived frm Micrsft Slutins Framewrk and Ratinal Unified Prcess (RUP). Our prcess methdlgy
More informationSummary. Server environment: Subversion 1.4.6
Surce Management Tl Server Envirnment Operatin Summary In the e- gvernment standard framewrk, Subversin, an pen surce, is used as the surce management tl fr develpment envirnment. Subversin (SVN, versin
More informationSystems & Operating Systems
McGill University COMP-206 Sftware Systems Due: Octber 1, 2011 n WEB CT at 23:55 (tw late days, -5% each day) Systems & Operating Systems Graphical user interfaces have advanced enugh t permit sftware
More informationOverview of Data Furnisher Batch Processing
Overview f Data Furnisher Batch Prcessing Nvember 2018 Page 1 f 9 Table f Cntents 1. Purpse... 3 2. Overview... 3 3. Batch Interface Implementatin Variatins... 4 4. Batch Interface Implementatin Stages...
More informationQuick Guide on implementing SQL Manage for SAP Business One
Quick Guide n implementing SQL Manage fr SAP Business One The purpse f this dcument is t guide yu thrugh the quick prcess f implementing SQL Manage fr SAP B1 SQL Server databases. SQL Manage is a ttal
More informationSan José State University College of Science / Department of Computer Science CS 151 Object-Oriented Design, Section 5, Fall 2015
Curse and Cntact Infrmatin San Jsé State University Cllege f Science / Department f Cmputer Science CS 151 Object-Oriented Design, Sectin 5, Fall 2015 Instructr: Angus Yeung, Ph.D. Office Lcatin: DH 282
More informationDeveloping Java Web Services. Duration: 5 days
QWERTYUIOP{ Develping Java Web Services Duratin: 5 days The Develping Java Web Services training class prepares Java prgrammers t develp interperable Java Web services and using SOAP, WSDL, and XML Schema.
More informationEView/400i Management Pack for Systems Center Operations Manager (SCOM)
EView/400i Management Pack fr Systems Center Operatins Manager (SCOM) Cncepts Guide Versin 7.0 July 2015 1 Legal Ntices Warranty EView Technlgy makes n warranty f any kind with regard t this manual, including,
More informationLab 1 - Calculator. K&R All of Chapter 1, 7.4, and Appendix B1.2
UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2012 Lab 1 - Calculatr Intrductin In this lab yu will be writing yur first
More informationUsers, groups, collections and submissions in DSpace. Contents
Users, grups, cllectins and submissins in DSpace Cntents Key cncepts... 2 User accunts and authenticatin... 2 Authrisatin and privileges... 2 Resurce plicies... 2 User rles and grups... 3 Submissin wrkflws...
More information- Replacement of a single statement with a sequence of statements(promotes regularity)
ALGOL - Java and C built using ALGOL 60 - Simple and cncise and elegance - Universal - Clse as pssible t mathematical ntatin - Language can describe the algrithms - Mechanically translatable t machine
More informationExtended Traceability Report for Enterprise Architect
Extended Traceability Reprt User Guide Extended Traceability Reprt fr Enterprise Architect Extended Traceability Reprt fr Enterprise Architect... 1 Disclaimer... 2 Dependencies... 2 Overview... 2 Limitatins
More informationAn Introduction to Crescendo s Maestro Application Delivery Platform
An Intrductin t Crescend s Maestr Applicatin Delivery Platfrm Intrductin This dcument is intended t serve as a shrt intrductin t Crescend s Maestr Platfrm and its cre features/benefits. The dcument will
More informationPages of the Template
Instructins fr Using the Oregn Grades K-3 Engineering Design Ntebk Template Draft, 12/8/2011 These instructins are fr the Oregn Grades K-3 Engineering Design Ntebk template that can be fund n the web at
More informationUpdate: Users are updated when their information changes (examples: Job Title or Department). o
Learn Basic User Integratin Batch File Prcessing The Learn Basic User Integratin is designed t manage the rganizatinal changes cmpanies are challenged with n a daily basis. Withut a basic type f integratin,
More informationspec/javaee8_community_survey_results.pdf
Title: Mdel- View- Cntrller (MVC 1.0) Specificatin. Summary/Descriptin: This JSR is t develp MVC 1.0, a mdel- view- cntrller specificatin fr Java EE. Duratin: 2 weeks Sectin 1: Identificatin Specificatin
More informationUFuRT: A Work-Centered Framework and Process for Design and Evaluation of Information Systems
In: Prceedings f HCI Internatinal 2007 UFuRT: A Wrk-Centered Framewrk and Prcess fr Design and Evaluatin f Infrmatin Systems Jiajie Zhang 1, Keith A. Butler 2 1 University f Texas at Hustn, 7000 Fannin,
More informationCS5530 Mobile/Wireless Systems Swift
Mbile/Wireless Systems Swift Yanyan Zhuang Department f Cmputer Science http://www.cs.uccs.edu/~yzhuang UC. Clrad Springs cat annunce.txt_ imacs remte VNC access VNP: http://www.uccs.edu/itservices/services/netwrk-andinternet/vpn.html
More informationLab 4. Name: Checked: Objectives:
Lab 4 Name: Checked: Objectives: Learn hw t test cde snippets interactively. Learn abut the Java API Practice using Randm, Math, and String methds and assrted ther methds frm the Java API Part A. Use jgrasp
More informationAndrid prgramming curse Asynchrnus Techniques Intrductin Sessin bjectives Intrductin Asynchrnus Techniques Executr Handler AsyncTask Service & IntentService AsyncQueryHandler Lader By Võ Văn Hải Faculty
More informationA Novel Description Language for Value-Added Services to enable Automated Functional Testing
A Nvel Descriptin Language fr Value-Added Services t enable Autmated Functinal Testing 21. ITG Fachtagung Mbilkmmunikatin Patrick Wacht Frankfurt University f Applied Sciences, Germany Research Grup fr
More information1 Version Spaces. CS 478 Homework 1 SOLUTION
CS 478 Hmewrk SOLUTION This is a pssible slutin t the hmewrk, althugh there may be ther crrect respnses t sme f the questins. The questins are repeated in this fnt, while answers are in a mnspaced fnt.
More informationUiPath Automation. Walkthrough. Walkthrough Calculate Client Security Hash
UiPath Autmatin Walkthrugh Walkthrugh Calculate Client Security Hash Walkthrugh Calculate Client Security Hash Start with the REFramewrk template. We start ff with a simple implementatin t demnstrate the
More informationData Structure Interview Questions
Data Structure Interview Questins A list f tp frequently asked Data Structure interview questins and answers are given belw. 1) What is Data Structure? Explain. Data structure is a way that specifies hw
More informationCOP2800 Homework #3 Assignment Spring 2013
YOUR NAME: DATE: LAST FOUR DIGITS OF YOUR UF-ID: Please Print Clearly (Blck Letters) YOUR PARTNER S NAME: DATE: LAST FOUR DIGITS OF PARTNER S UF-ID: Please Print Clearly Date Assigned: 15 February 2013
More informationXilinx Answer Xilinx PCI Express DMA Drivers and Software Guide
Xilinx Answer 65444 Xilinx PCI Express DMA Drivers and Sftware Guide Imprtant Nte: This dwnladable PDF f an Answer Recrd is prvided t enhance its usability and readability. It is imprtant t nte that Answer
More informationUsing the Swiftpage Connect List Manager
Quick Start Guide T: Using the Swiftpage Cnnect List Manager The Swiftpage Cnnect List Manager can be used t imprt yur cntacts, mdify cntact infrmatin, create grups ut f thse cntacts, filter yur cntacts
More informationPAGE NAMING STRATEGIES
PAGE NAMING STRATEGIES Naming Yur Pages in SiteCatalyst May 14, 2007 Versin 1.1 CHAPTER 1 1 Page Naming The pagename variable is used t identify each page that will be tracked n the web site. If the pagename
More informationFaculty Textbook Adoption Instructions
Faculty Textbk Adptin Instructins The Bkstre has partnered with MBS Direct t prvide textbks t ur students. This partnership ffers ur students and parents mre chices while saving them mney, including ptins
More informationJava Programming Course IO
Java Prgramming Curse IO By Võ Văn Hải Faculty f Infrmatin Technlgies Industrial University f H Chi Minh City Sessin bjectives What is an I/O stream? Types f Streams Stream class hierarchy Cntrl flw f
More informationTroubleshooting of network problems is find and solve with the help of hardware and software is called troubleshooting tools.
Q.1 What is Trubleshting Tls? List their types? Trubleshting f netwrk prblems is find and slve with the help f hardware and sftware is called trubleshting tls. Trubleshting Tls - Hardware Tls They are
More informationPreparing a REST API. Rules of REST APIs, API patterns, Typical CRUD operations
Preparing a REST API Rules f REST APIs, API patterns, Typical CRUD peratins Rules fr a REST API Recall: REST Representatinal State Transfer REST is stateless it has n idea f any current user state r histry
More informationMaximo Reporting: Maximo-Cognos Metadata
Maxim Reprting: Maxim-Cgns Metadata Overview...2 Maxim Metadata...2 Reprt Object Structures...2 Maxim Metadata Mdel...4 Metadata Publishing Prcess...5 General Architecture...5 Metadata Publishing Prcess
More informationOverview. Enhancement for Policy Configuration Module
Overview Digital File Plicy Management: Cnfiguratin Mdule Enhancement and Inter-applicatin Plicy Sharing Digital file plicies determine hw digital files are prcessed befre being depsited int RUcre repsitry.
More informationCSE 361S Intro to Systems Software Lab #2
Due: Thursday, September 22, 2011 CSE 361S Intr t Systems Sftware Lab #2 Intrductin This lab will intrduce yu t the GNU tls in the Linux prgramming envirnment we will be using fr CSE 361S this semester,
More informationSecond Assignment Tutorial lecture
Secnd Assignment Tutrial lecture INF5040 (Open Distributed Systems) Faraz German (farazg@ulrik.ui.n) Department f Infrmatics University f Osl Octber 17, 2016 Grup Cmmunicatin System Services prvided by
More informationSOLA and Lifecycle Manager Integration Guide
SOLA and Lifecycle Manager Integratin Guide SOLA and Lifecycle Manager Integratin Guide Versin: 7.0 July, 2015 Cpyright Cpyright 2015 Akana, Inc. All rights reserved. Trademarks All prduct and cmpany names
More informationStock Affiliate API workflow
Adbe Stck Stck Affiliate API wrkflw The purpse f this dcument is t illustrate the verall prcess and technical wrkflw fr Adbe Stck partners wh want t integrate the Adbe Stck Search API int their applicatins.
More informationAdmin Report Kit for Exchange Server
Admin Reprt Kit fr Exchange Server Reprting tl fr Micrsft Exchange Server Prduct Overview Admin Reprt Kit fr Exchange Server (ARKES) is an Exchange Server Management and Reprting slutin that addresses
More informationIntroduction to Programming ArcObjects using the Microsoft.Net Framework
Intrductin t Prgramming ArcObjects using the Micrsft.Net Framewrk Three days Overview ArcObjects cmpnents are the building blcks f the ArcGIS family f prducts, and the ArcObjects libraries prvide a set
More informationOO Design for Software Engineers
OO Design fr Sftware Engineers W3 : Sftware Design with Object Oriented Paradigm Feb. 5, 2006 SE203b, ECE UWO, Hamada Ghenniwa The Rad Map Intrductin t Sftware Design Sftware Design Appraches Intrductin
More informationHP Server Virtualization Solution Planning & Design
Cnsulting & Integratin Infrastructure Services HP Server Virtualizatin Slutin Planning & Design Service descriptin Hewlett-Packard Cnsulting & Integratin Infrastructure Cnsulting Packaged Services (HP
More informationUsing the Swiftpage Connect List Manager
Quick Start Guide T: Using the Swiftpage Cnnect List Manager The Swiftpage Cnnect List Manager can be used t imprt yur cntacts, mdify cntact infrmatin, create grups ut f thse cntacts, filter yur cntacts
More informationStealing passwords via browser refresh
Stealing passwrds via brwser refresh Authr: Karmendra Khli [karmendra.khli@paladin.net] Date: August 07, 2004 Versin: 1.1 The brwser s back and refresh features can be used t steal passwrds frm insecurely
More informationOATS Registration and User Entitlement Guide
OATS Registratin and User Entitlement Guide The OATS Registratin and Entitlement Guide prvides the fllwing infrmatin: OATS Registratin The prcess and dcumentatin required fr a firm r Service Prvider t
More informationAndrid prgramming curse UI Overview User Interface By Võ Văn Hải Faculty f Infrmatin Technlgies All user interface elements in an Andrid app are built using View and ViewGrup bjects. A View is an bject
More informationPopulate and Extract Data from Your Database
Ppulate and Extract Data frm Yur Database 1. Overview In this lab, yu will: 1. Check/revise yur data mdel and/r marketing material (hme page cntent) frm last week's lab. Yu will wrk with tw classmates
More informationUiPath Automation. Walkthrough. Walkthrough Calculate Client Security Hash
UiPath Autmatin Walkthrugh Walkthrugh Calculate Client Security Hash Walkthrugh Calculate Client Security Hash Start with the REFramewrk template. We start ff with a simple implementatin t demnstrate the
More informationBike MS My Account Guide
Bike MS My Accunt Guide Utilize the tls available thrugh My Accunt! A custmizable My Accunt is available t each registered participant t help with recruiting and fundraising. Tls within My Accunt include:
More informationSoftware Toolbox Extender.NET Component. Development Best Practices
Page 1 f 16 Sftware Tlbx Extender.NET Cmpnent Develpment Best Practices Table f Cntents Purpse... 3 Intended Audience and Assumptins Made... 4 Seeking Help... 5 Using the ErrrPrvider Cmpnent... 6 What
More informationEnrichment Design Challenge
Enrichment Design Challenge 2016-2017 The ZMS design challenge ffers students a chance t develp a slutin t a real prblem faced by z keepers and staff at the Minnesta Z. Frm designing an enrichment, t engineering
More informationCAMPBELL COUNTY GILLETTE, WYOMING
CAMPBELL COUNTY GILLETTE, WYOMING System Supprt Analyst I System Supprt Analyst II Senir System Supprt Analyst Class specificatins are intended t present a descriptive list f the range f duties perfrmed
More informationCITI Technical Report 08-1 Parallel NFS Block Layout Module for Linux
CITI Technical Reprt 08-1 Parallel NFS Blck Layut Mdule fr Linux William A. Adamsn, University f Michigan andrs@citi.umich.edu Frederic Isaman, University f Michigan iisaman@citi.umich.edu Jasn Glasgw,
More informationWEB LAB - Subset Extraction
WEB LAB - Subset Extractin Fall 2005 Authrs: Megha Siddavanahalli Swati Singhal Table f Cntents: Sl. N. Tpic Page N. 1 Abstract 2 2 Intrductin 2 3 Backgrund 2 4 Scpe and Cnstraints 3 5 Basic Subset Extractin
More informationLab 1 - Calculator. K&R All of Chapter 1, 7.4, and Appendix B1.2 Iterative Code Design handout Style Guidelines handout
UNIVERSITY OF CALIFORNIA, SANTA CRUZ BOARD OF STUDIES IN COMPUTER ENGINEERING CMPE13/L: INTRODUCTION TO PROGRAMMING IN C SPRING 2013 Lab 1 - Calculatr Intrductin Reading Cncepts In this lab yu will be
More informationEssentials for IBM Cognos BI (V10.2) Day(s): 5. Overview
Essentials fr IBM Cgns BI (V10.2) Day(s): 5 Curse Cde: B5270G Overview NOTE: This is an Instructr Led Online curse. Please d nt make any travel arrangements. IBM Cgns Educatin is nw pleased t ffer yu ur
More informationType: System Enhancements ID Number: SE 93. Subject: Changes to Employee Address Screens. Date: June 29, 2012
Type: System Enhancements ID Number: SE 93 Date: June 29, 2012 Subject: Changes t Emplyee Address Screens Suggested Audience: Human Resurce Offices Details: On July 14, 2012, Peple First will implement
More informationDate: October User guide. Integration through ONVIF driver. Partner Self-test. Prepared By: Devices & Integrations Team, Milestone Systems
Date: Octber 2018 User guide Integratin thrugh ONVIF driver. Prepared By: Devices & Integratins Team, Milestne Systems 2 Welcme t the User Guide fr Online Test Tl The aim f this dcument is t prvide guidance
More information