Professional Documents
Culture Documents
Facade Design
Pattern
16.10.2007
Balint Eniko
internal / confidential
USS- EF
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Facade Class Diagram
Example
internal / confidential
USS- EF
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Facade Class Diagram
Example
internal / confidential
USS- EF
Definition
internal / confidential
USS- EF
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Facade Class Diagram
Example
internal / confidential
USS- EF
Motivation
internal / confidential
USS- EF
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Facade Class Diagram
Example
internal / confidential
USS- EF
Applicability
internal / confidential
USS- EF
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Facade Class Diagram
Example
internal / confidential
USS- EF
internal / confidential
USS- EF
10
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Facade Class Diagram
Example
internal / confidential
USS- EF
11
internal / confidential
USS- EF
12
Agenda
Definition
Motivation
Applicability
Benefits and Drawbacks
Faade Class Diagram
Example
internal / confidential
USS- EF
13
Example
internal / confidential
USS- EF
14
Example - UserfriendlyDate
class UserfriendlyDate {
Calendar cal = Calendar.getInstance(); SimpleDateFormat sdf = new
SimpleDateFormat("yyyy-MM-dd");
public UserfriendlyDate (String isodate_ymd) throws ParseException {
Date date = sdf.parse(isodate_ymd);
cal.setTime(date);
}
public void addDays (int days) {
cal.add (Calendar. DAY_OF_MONTH, days);
}
public String toString() {
return sdf.format(cal.getTime());
}
}
internal / confidential
USS- EF
15
Example - Client
class FacadePatternClient {
public static void main(String[] args) throws ParseException {
UserfriendlyDate d = new UserfriendlyDate("1980-08-20");
System.out.println ("Date: " + d.toString());
d.addDays(20);
System.out.println ("20 days after: " +
d.toString());
}
}
Example output:
Date: 1980-08-20
20 days after: 1980-09-09
internal / confidential
USS- EF
16