## Design Patterns, Design Reviews 

### Patterns and Effective OO Programming  [30mins]

- language idioms (how people often write code; often contradicts good
  coding practice just like the way people speak is in conflicts of
  accepted written style guidelines) 

- "Effective Java" is trying to move developers from the former to the
  latter 

  - the designer of Java's API 
  - what he found was good coding over decades 
  - and it is _not_ what you are told by high school teachers or mentors

- patterns are language-agnostic recommendations of successful arrangements
  of code elements (classes, methods, fields in the case of OO patterns) 

  - what they are ~~ essentially a language for fast discussions between developers
  - how they came about ~~ software archaeology of successfully evolving projects 
  - how they relate to the design recipe ~~ the outcome is the same 
    - empirical vs theoretical design ideas 

- how to use the book, examples 
  - Singleton for creational ~~ relates to Symbols in Lisp (Scheme, Racket, Clojure)
  - Interpreter for behavioral ~~ it's exactly what you need for the spreadsheet
  - Proxy for structural ~~ if you want to observe how an object (lambda)
    behaves, it's the way to go
  
- more as the semester progresses 

### Design Walk 1 [30mins]

- assignment 4, plan document for Santorini.com 

| Matthias   	         | Jason  		  | Role		   |
| ---------------------- | ---------------------- | ---------------------- |
| Suzanne Becker, 	 | Will Slotterback, 	  | *presenters*	   |
| Zach Walsh 		 | Joseph Wang 		  | 			   |
| 			 | 			  | *panelists*		   |
| Luke Bakker  	      	 | Theeraphat Wangpattanakul | head	   	   |	
| Brendan Rejevich 	 | Christopher Risley     | assistant	   	   |
| Jon Corbett      	 | Melvin Chen            | secretary	   	   |

### Design Walk 2 [30mins]

- assignment 5, design for the game board interface 

| Matthias   	         | Jason  		  | Role		   |
| ---------------------- | ---------------------- | ---------------------- |
| Evan Johnson,  	 | Melvin Chen, 	  | *presenters*	   |
| Shravali Reddy 	 | Anika Jagow  	  | 			   |
| 			 | 			  | *panelists*		   |
| Noah Lichtenstein    	 | Reza Akhtar    	  | head	   	   |	
| Matthew Daly      	 | Morolayo Lambo  	  | assistant	   	   |
| Kevin Allen       	 | Amanda Escaba   	  | secretary	   	   |

