download

Matakuliah
Tahun
: Web Programming
: 2009
Design Pattern & MVC
Pertemuan 12
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa
akan mampu :
• Menjelaskan Konsep Design Pattern
• Menjelaskan sejarah Object Oriented Design Pattern
• Menjelaskan Konsep MVC
3
Outline Materi
• Design Pattern
• MVC
• Design Pattern Application
4
History of
Object Oriented Design Pattern
• During 1991-1994, Erich Gamma and his friends write the book Design Patterns:
Elements of Reusable Object-Oriented Software.
• This book describes 23 design patterns.
• The book groups design patterns into three categories- creational design patterns,
structural design patterns and behavioral design patterns.
5
Design Pattern
• Design patterns allow developers to design specific parts of systems, such as
abstracting object instantiations or aggregating classes into larger structures.
• Design patterns also promote loose coupling among objects.
• We introduce the popular Model View Controller and Layers architectural
patterns.
6
MVC
• Model-View-Controller (MVC) architectural pattern, which separates application
data (contained in the model) from graphical presentation components (the view)
and input-processing logic (the controller).
• The controller implements logic for processing user inputs. The model contains
application data, and the view presents the data stored in the model.
7
MVC
8
Layers
9
Layers
• The Information tiers maintains data for the application, typically storing it in a
database.
• The middle tier acts as an intermediary between the information tier and the client
tier.
• The client tier is the application’s user interface, such as a standard web browser.
User interact directly with the application through the user interface.
10
Sample using Struts
1.
2.
3.
Create a JSP form that supporting Struts Framework
Execute the form
Click Struts’s link.
11
Simple Struts
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
<html:html locale="true">
<head>
<title><bean:message key="welcome.title"/></title>
<html:base/>
</head>
<body bgcolor="white">
<logic:notPresent name="org.apache.struts.action.MESSAGE" scope="application">
<font color="red">
ERROR: Application resources not loaded -- check servlet container
logs for error messages.
</font>
</logic:notPresent>
<h3><bean:message key="welcome.heading"/></h3>
<p><bean:message key="welcome.message"/></p>
</body>
</html:html>
12
Sample Struts
13
Design Pattern in Java
14
Other Java Technologies
•
•
•
•
SAX & DOM
JMS
Java Cryptography Extension
JSF
15