DESIGN PATTERNS -CREATIONAL PATTERNS WATTANAPON G SUTTAPAK Software Engineering, School of...

Post on 21-Jan-2016

215 views 0 download

Transcript of DESIGN PATTERNS -CREATIONAL PATTERNS WATTANAPON G SUTTAPAK Software Engineering, School of...

1

DESIGN PATTERNS-CREATIONAL

PATTERNS

WATTANAPONG SUTTAPAKSoftware Engineering, School of Information Communication Technology,University of PHAYAO

2

จุ�ดประสงค์การเร�ยนร� �

เข้�าใจุร�ปแบบข้องแบบร�ปการออกแบบทั้��ง 5 ประเภทั้

ประย�กต์ใช้�แบบร�ปการออกแบบ Factory ,Abstract Factory, Singleton, Builder, Prototype Pattern ได�

CREATIONAL PATTERNS

• objects creation and hiding the creation logic• no instantiating objects directly• flexible deciding for a given use case

5 patterns 1. Factory2. Abstract factory3. Builder4. Prototype5. Singleton

4

FACTORY PATTERN

• most used in java• create common interface• create object pattern that inherited(is a) from common interface• create instant object that inherited(has a) from create object pattern create new object via instant object(common)

5

FACTORY PATTERN

6

FACTORY PATTERN

7

FACTORY PATTERN

8

FACTORY PATTERN

9

FACTORY PATTERN Output

Inside Circle::draw() method.

Inside Rectangle::draw() method.

Inside Square::draw() method.

10

FACTORY PATTERN

11

FACTORY PATTERN

12

ABSTRACT FACTORY PATTERN Factory of factories

13

ABSTRACT FACTORY PATTERN Factory PatternShapeCircleRectangleSquare

Abstract Factory PatternColorRedBlueBlackAbstractFactoryColorFactoryShapeFactoryFactoryProducerbstractFactoryPatternDemo

14

ABSTRACT FACTORY PATTERN

15

ABSTRACT FACTORY PATTERN

16

ABSTRACT FACTORY PATTERN

17

ABSTRACT FACTORY PATTERN

18

ABSTRACT FACTORY PATTERN

19

ABSTRACT FACTORY PATTERN Output

20

SINGLETON PATTERN

• Simplest design patterns

• Create object only single object

21

SINGLETON PATTERN

Output Hello World

22

BUILDER PATTERN

Build complex object using simple objects

23

BUILDER PATTERN implements

24

BUILDER PATTERN implements

25

BUILDER PATTERN implements

26

BUILDER PATTERN implements

27

BUILDER PATTERN implements

28

BUILDER PATTERN Output

29

PROTOTYPE PATTERN

creating duplicate object while keeping performance

30

PROTOTYPE PATTERN implements

31

PROTOTYPE PATTERN implements

32

PROTOTYPE PATTERN implements

33

PROTOTYPE PATTERN

Output