Patterns Continued: Creational Patterns
July 26, 2017
Patterns Continued: Creational Patterns July 26, 2017 House - - PowerPoint PPT Presentation
Patterns Continued: Creational Patterns July 26, 2017 House Keeping Final Exam August 4th, 12-2pm @ Burnham Hall 208 Similar structure to midterm Covers all class material (e.g. midterm topics are fair game) Final Projects 3rd
Patterns Continued: Creational Patterns
July 26, 2017
House Keeping
Final Exam
fair game)
Final Projects
Friday, July 28 @ noon
Monday, July 31 @ noon
Final Project Submissions
write access to your repo
`project/final.md`
project/final.md
Final Presentation Schedule
Monday, July 31 Wednesday, August 2 Patrick and Adam Hubert Gregory Casey Frank and Jake Julio and Ahel Victor and Joseph Alejandro Ahmed Li
Bonus Office Hours
Code Patterns
Patterns Review
tests, dependency management, etc
Code Patterns
system
Design Patterns
Reusable Object-Oriented Software
practices in object oriented languages
Design Patterns
Design Patterns
Singleton Pattern
Problem Scenario
configuration of the application
singleton/AppConfig.java –>
Problem Scenario
Singleton Solution
single instance
singleton/AppConfig.java –>
Singleton Conclusion
connections
Builder Pattern
Problem Scenario
instantiate
Example: URI
scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment] https://www.cs.uic.edu/~psnyder/cs342-summer2017/ mailto:psnyde2@uic.edu ftp://psnyde2:margeforme@ftp.uic.edu/~psnyde2/example.file
builder/CS342URL.java –>
Problem Definition
constructors
Builder Solution
builder/CS342URL.java –>
Builder Overview
sync
Java
Lazy Initialization pattern
Problem Scenario
time to generate
a program
Problem Example
database
needed
expensive
lazy/DatabaseData.java –>
Lazy Initialization Solution
create
singleton/AppConfig.java –>
Lazy Initialization Solution
costs
what operations are fast and slow