desing principles: tensions and synergies

15
Design Principles Tensions & Synergies Ilias Bartolini July 2014

Upload: ilias-bartolini

Post on 08-Sep-2014

96 views

Category:

Technology


3 download

DESCRIPTION

Learnign OO principles exploring tensions and synergies. See for details: https://github.com/iliasbartolini/design_principles_dojo

TRANSCRIPT

Page 1: Desing principles: tensions and synergies

Design Principles Tensions & Synergies

Ilias Bartolini

J u l y 2 0 1 4

Page 2: Desing principles: tensions and synergies

2

HOW IT WORKS

● Divide into pairs ● Start setup development environment● Explain the tensions & synergies● Choose a design principle or rule● Game of life● Implement a new user story (30min)● Showcase changes

How did it affect other principles? Post-it!!Repeat

● Conclusions● Feedback

Page 3: Desing principles: tensions and synergies

3

http://bit.ly/oo_dojo 1.Fork me!2.

Page 4: Desing principles: tensions and synergies

4

AN EXAMPLE

Page 5: Desing principles: tensions and synergies

5

AN EXAMPLE

Encapsulation

Single Responsibility

Page 6: Desing principles: tensions and synergies

6

AN EXAMPLE

Page 7: Desing principles: tensions and synergies

7

AN EXAMPLE

Encapsulation

Single Responsibility

Page 8: Desing principles: tensions and synergies

8

Single Responsibility vs Encapsulation

Page 9: Desing principles: tensions and synergies

9

Conway's Game of Life 1. Any live cell with fewer than two live neighbours dies,

as if caused by under-population.2. Any live cell with two or three live neighbours lives on to the next

generation.3. Any live cell with more than three live neighbours dies,

as if by overcrowding.4. Any dead cell with exactly three live neighbours becomes a live cell,

as if by reproduction.

http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life

Page 10: Desing principles: tensions and synergies

10

As the supreme product ownerI want any cell with >= 4 alive

neighbours to become a zombieso that apocalypse can begin..

#5

Page 11: Desing principles: tensions and synergies

11

As the supreme product ownerI want any cell with >= 4 alive

neighbours to become a zombieso that apocalypse can begin..(ps. Zombies will be forever

zombie, cannot die or become alive

again)

#5

Page 12: Desing principles: tensions and synergies

12

Design decisions are trade-offs

Page 13: Desing principles: tensions and synergies

13

Questions?

Page 14: Desing principles: tensions and synergies

14

Feedback

Page 15: Desing principles: tensions and synergies

15

THANKSModify and reuse freely

Help of:Luca Minudel

Matteo Vaccari

Creative Commons credits:https://www.flickr.com/photos/torek/4444673930