COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 7 1COMP9321, 15s2, Week.

Slides:



Advertisements
Similar presentations
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Advertisements

COMP 321 Week 1. Application Server Programming Introduction to server-based programming using an object-oriented approach You will learn and reflect.
1 Pertemuan 12 Design Pattern Matakuliah: T0053/Web Programming Tahun: 2006 Versi: 2.
Introduction to Java 2 Enterprise Edition About myself –Neutrinos, Cancer Research, IT Applications Today’s topic: J2EE –Context –Advantages –Components.
Design Patterns Yes, they are important Robert Cotton April 23, 2009.
Model-View-Controller ("MVC") This is a architectural design pattern for interactive applications. This design pattern organizes an interactive application.
Object-Oriented Enterprise Application Development J2EE Blueprints.
James Tam Introduction To Design Patterns You will learn about design techniques that have been successfully applied to different scenarios.
Spring 2010CS 2251 Design Patterns. Spring 2010CS 2252 What is a Design Pattern? "a general reusable solution to a commonly occurring problem in software.
Component Based Systems Analysis Introduction. Why Components? t Development alternatives: –In-house software –Standard packages –Components 60% of the.
Software Engineering I Object-Oriented Design Software Design Refinement Using Design Patterns Instructor: Dr. Hany H. Ammar Dept. of Computer Science.
Application Architectures Vijayan Sugumaran Department of DIS Oakland University.
Façade Design Pattern Source: Design Patterns – Elements of Reusable Object- Oriented Software; Gamma, et. al.
Overview of Design Patterns & The MVC Design Pattern Sapana Mehta.
Design Patterns Trends and Case Study John Hurst June 2005.
MVC pattern and implementation in java
MVC and MVP. References enter.html enter.html
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 1 1COMP9321, 15s2, Week.
Software Design Refinement Using Design Patterns Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Model View Controller (MVC) Rick Mercer with a wide variety of others 1.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
Todd Snyder Development Team Lead Infragistics Experience Design Group.
What's all going around ?!? Hamed Shayan
Software Architecture April-10Confidential Proprietary Click to edit Master text styles Second level Third level Fourth level Fifth level Software Architecture.
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Lecturer: Prof. Piero Fraternali, Teaching Assistant: Alessandro Bozzon, Advanced Web Technologies: Struts–
CIS764 Fall CIS 764 Database Systems Design J2EE Patterns Book Review Presented by Mark Weiss.
Sept Ron McFadyen1 UML & Design Patterns Course outlineoutline /3 Advanced Systems Design.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Java Web Development with NetBeans IDE -- Kai Qian Chapter 5 JavaServer Faces (JSF) Technology.
Core Indigo Patterns Ted Neward
Model View Controller (MVC) Bigger than a Pattern: It’s an Architecture Rick Mercer with help from many others 1.
Model View Controller (MVC) Bigger than a Pattern: It’s an Architecture Rick Mercer with help from many of others 1.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 8 1COMP9321, 15s2, Week.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 12 (Wrap-up) 1COMP9321,
Java EE Patterns Dan Bugariu.  What is Java EE ?  What is a Pattern ?
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 11 (Part I) 1COMP9321,
COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 10 1COMP9321, 15s2,
Chapter 3 JSP Overview. The Problem with Servlets processing the request and generating the response are both handled by a single servlet class Java programming.
Chapter 9 Web Application Design. Objectives Describe the MVC design pattern as used with Web applications Explain the role and responsibilities of each.
Engr 691 Special Topics in Engineering Science Software Architecture Spring Semester 2004 Lecture Notes.
Apache Struts Technology A MVC Framework for Java Web Applications.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
COMP9321 Web Application Engineering Semester 2, 2016 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 8 1COMP9321, 16s2, Week.
J2EE Platform Overview (Application Architecture)
COMP9321 Web Application Engineering Semester 2, 2016
COMP9321 Web Application Engineering Semester 1, 2017
Design Patterns Source: “Design Patterns”, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides And Created.
Software Design Refinement Using Design Patterns
SA Capstone Requirements and Design Week 6 SYST Winter 2017
COMP9321 Web Application Engineering Semester 1, 2017
COMP9321 Web Application Engineering Semester 2, 2017
Chapter 10 Design Patterns.
COMP9321 Web Application Engineering Semester 1, 2017
COMP9321 Web Application Engineering Semester 2, 2017
OO Methodology OO Architecture.
Instructor: Dr. Hany H. Ammar
COMP9321 Web Application Engineering Semester 2, 2017
Unit 6-Chapter 2 Struts.
COMP9321 Web Application Engineering Semester 1, 2017
Design and Maintenance of Web Applications in J2EE
CS102 – Bilkent University
COMP9321 Web Application Engineering Semester 2, 2016
Model-View-Controller (MVC) Pattern
Patterns.
The Model Layer What is Model?
COMP9321 Web Application Engineering Semester 2, 2016
COMP9321 Web Application Engineering Semester 1, 2017
Presentation transcript:

COMP9321 Web Application Engineering Semester 2, 2015 Dr. Amin Beheshti Service Oriented Computing Group, CSE, UNSW Australia Week 7 1COMP9321, 15s2, Week 7

Design Patterns 2 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context.

Design Patterns 3 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context. Each pattern expresses a relation between a certain context, a problem, and a solution.

Design Patterns 4 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context. Each pattern expresses a relation between a certain context, a problem, and a solution. A design pattern represents a solutions to problems that arise when developing a software.

Design Patterns 5 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context. Each pattern expresses a relation between a certain context, a problem, and a solution. A design pattern represents a solutions to problems that arise when developing a software. Design pattern are granular and applied at different levels such as: Frameworks Subsystems Sub-subsystems

Design Patterns 6 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context. Each pattern expresses a relation between a certain context, a problem, and a solution. A design pattern represents a solutions to problems that arise when developing a software. Design pattern are granular and applied at different levels such as: Frameworks Subsystems Sub-subsystems Categories include: Design Architectural Analysis Creational Structural Behavioral

Design Patterns 7 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context. Each pattern expresses a relation between a certain context, a problem, and a solution. A design pattern represents a solutions to problems that arise when developing a software. Design pattern are granular and applied at different levels such as: Frameworks Subsystems Sub-subsystems Categories include: Design Architectural Analysis Creational Structural Behavioral MVC: Model View Controller e.g.

Design Patterns 8 COMP9321, 15s2, Week 7 A pattern is a proven solution to a problem in a context. Each pattern expresses a relation between a certain context, a problem, and a solution. A design pattern represents a solutions to problems that arise when developing a software. Design pattern are granular and applied at different levels such as: Frameworks Subsystems Sub-subsystems Categories include: Design Architectural Analysis Creational Structural Behavioral Gamma et al (Gang of Four) produced a famous book which listed 23 “Design” patterns

J2EE Design Patterns 9 COMP9321, 15s2, Week 7

J2EE Design Patterns 10 COMP9321, 15s2, Week 7

Web Application Architecture 11 COMP9321, 15s2, Week 7

Web Application Architecture 12 COMP9321, 15s2, Week 7

Web Application Architecture 13 COMP9321, 15s2, Week 7

Web Application Architecture 14 COMP9321, 15s2, Week 7

Web Application Architecture 15 COMP9321, 15s2, Week 7

Web Application Layers 16 COMP9321, 15s2, Week 7

J2EE design guidelines: Web tier 17 COMP9321, 15s2, Week 7

J2EE design guidelines: Web tier 18 COMP9321, 15s2, Week 7

Servlet Design Guidelines 19 COMP9321, 15s2, Week 7

Servlet design guidelines: When to use Servlets 20 COMP9321, 15s2, Week 7

Servlet design guidelines: When to use Servlets 21 COMP9321, 15s2, Week 7

JSP Design Guidelines 22 COMP9321, 15s2, Week 7

JSP Design Guidelines 23 COMP9321, 15s2, Week 7

JSP Design Guidelines 24 COMP9321, 15s2, Week 7

JSP Design Guidelines 25 COMP9321, 15s2, Week 7

JSP Design Guidelines 26 COMP9321, 15s2, Week 7

JSP Design Guidelines 27 COMP9321, 15s2, Week 7

JSP Design Guidelines 28 COMP9321, 15s2, Week 7

JSP Design Guidelines 29 COMP9321, 15s2, Week 7

General Guideline for Servlet/JSP/JavaBeans 30 COMP9321, 15s2, Week 7

General Guideline for Servlet/JSP/JavaBeans 31 COMP9321, 15s2, Week 7

General Guideline for Servlet/JSP/JavaBeans 32 COMP9321, 15s2, Week 7

Structuring Web applications Architectural Patterns (MVC) 33 COMP9321, 15s2, Week 7

Structuring Web applications 34 COMP9321, 15s2, Week 7

Structuring Web applications 35 COMP9321, 15s2, Week 7

Structuring Web applications 36 COMP9321, 15s2, Week 7

Model 1 Example 37 COMP9321, 15s2, Week 7

Model 1 Example 38 COMP9321, 15s2, Week 7

Model 1 Example 39 COMP9321, 15s2, Week 7

Model 1 Example 40 COMP9321, 15s2, Week 7

Model 1 Example 41 COMP9321, 15s2, Week 7

Model 1 Example 42 COMP9321, 15s2, Week 7

Model 1 Architecture 43 COMP9321, 15s2, Week 7

MVC Model View Controller 44 COMP9321, 15s2, Week 7

Model 2 Architecture = MVC pattern 45 COMP9321, 15s2, Week 7

Model 2 Architecture = MVC pattern 46 COMP9321, 15s2, Week 7

MVC Components and Roles 47 COMP9321, 15s2, Week 7 MVC can be broken down into three elements: Model - The model represents data and the rules that govern access to and updates of this data. View - The view renders the contents of a model. It specifies exactly how the model data should be presented. Controller - The controller translates the user's interactions with the view into actions that the model will perform.

MVC Components and Roles 48 COMP9321, 15s2, Week 7

Model 2 Architecture = MVC pattern 49 COMP9321, 15s2, Week 7

Model 2 Architecture = MVC pattern 50 COMP9321, 15s2, Week 7

Model 2 Architecture = MVC pattern 51 COMP9321, 15s2, Week 7

Model 2 Architecture = MVC pattern 52 COMP9321, 15s2, Week 7

Case for a centralised controller 53 COMP9321, 15s2, Week 7

Case for a centralised controller 54 COMP9321, 15s2, Week 7

Case for multiple controllers 55 COMP9321, 15s2, Week 7

FrontController Pattern 56 COMP9321, 15s2, Week 7

FrontController Pattern 57 COMP9321, 15s2, Week 7 The Front Controller pattern is a software design pattern. The pattern relates to the design of web applications. It provides a centralized entry point for handling requests. Front controllers are often used in web applications to implement workflows. The front controller may be implemented as a Java object.

FrontController Pattern 58 COMP9321, 15s2, Week 7 The Front Controller pattern is a software design pattern. The pattern relates to the design of web applications. It provides a centralized entry point for handling requests. Front controllers are often used in web applications to implement workflows. The front controller may be implemented as a Java object.

FrontController implementation: Command Design Pattern 59 COMP9321, 15s2, Week 7

Command Design Pattern 60 COMP9321, 15s2, Week 7

Command Design Pattern 61 COMP9321, 15s2, Week 7

Command Design Pattern 62 COMP9321, 15s2, Week 7

Command Design Pattern 63 COMP9321, 15s2, Week 7

Command Design Pattern 64 COMP9321, 15s2, Week 7

Command Design Pattern 65 COMP9321, 15s2, Week 7

Command Design Pattern 66 COMP9321, 15s2, Week 7

Command Design Pattern 67 COMP9321, 15s2, Week 7

Command Design Pattern 68 COMP9321, 15s2, Week 7

Command Design Pattern 69 COMP9321, 15s2, Week 7

Command Design Pattern 70 COMP9321, 15s2, Week 7

Identifying the Command Pattern in the phonebook lab 71 COMP9321, 15s2, Week 7

Implementing the Command Pattern 72 COMP9321, 15s2, Week 7

Typical "Assignment 2" Architecture 73 COMP9321, 15s2, Week 7

Next Week 74 COMP9321, 15s2, Week 7

References 75COMP9321, 15s2, Week 7 Core J2EE patterns, Deepak Alur, John Crupi and Dan Marlks, Prentice Hall Patterns of Enterprise Application Architecture, Martin Fowler, Addison-Wesley

76COMP9321, 15s2, Week 7