|
Java For Artists(c) The Art, Philosophy, and Science of Object-Oriented Programming Authors: Miller R., Kasparian R. Published year: 2007 Pages: 392-397/452 |
Legacy Datafile Adapter Revisited: Write an application with the help of the patterns presented in this chapter that access data via the legacy datafile adapter class and supporting classes presented in chapter 18, examples 18.23 through 18.28. Give the application the capability to list books in the database, add new books, increment and decrement quantity on hand, and search for books by title and author.
Chapter 21 Projects Revisited: Revisit any of the suggested projects listed at the end of chapter 21 and utilize the patterns discussed in this chapter in their implementation.
|
1. |
Why is a software design pattern considered to be a form of knowledge reuse? |
|
2. |
What is the purpose of the Singleton pattern? |
|
3. |
What is the purpose of the Factory pattern? |
|
4. |
What is one potential benefit to using the Dynamic Factory pattern? |
|
5. |
How can application behavior can be dynamically modified using the Dynamic Factory pattern? |
|
6. |
What is the purpose of the Model-View-Controller (MVC) pattern? |
|
7. |
What’s the purpose of the Model component of the MVC pattern? |
|
8. |
What’s the purpose of the View component of the MVC pattern? |
|
9. |
What’s the purpose of the Controller pattern of the MVC pattern? |
|
10. |
Why is it desirable to deny knowledge of the View from the Model and vice versa? |
|
11. |
What’s the purpose of the Command pattern? |
Christopher Alexander. A Timeless Way of Building . Oxford University Press, New York. ISBN: 0-19-502402-8
Christopher Alexander, et. al. A Pattern Language: Towns, Buildings, Construction . Oxford University Press, New York. ISBN: 0-19-501919-9
Erich Gamma, et. al. Design Patterns: Elements of Reusable Object-Oriented Software . Addison-Wesley Professional Computing Series. Addison-Wesley, Reading, MA. ISBN: 0-201-63361-2
Java 5 Platform API Documentation: [ http://java.sun.com/j2se/1.5.0/docs/api/index.html ]
David Flanagan. Java In A Nutshell , Fifth Edition. O’Reilly Media, Inc. Sebastopol, CA. ISBN: 0-596-00773-6.
The Hillside Group Website [ http://hillside.net ]
David Stotts, Associate Professor, University of North Carolina Chapel Hill, North Carolina. Patterns information page: [ http://www.cs.unc.edu/~stotts/COMP204/patterns/ ]
|
Check-Off |
Strategy Area |
Explanation |
|---|---|---|
|
Application Requirements |
Determine and clarify exactly what purpose and features the finished project must have. Clarify your understanding of the requirements with your instructor if the project specification is not clear. This results in a clear problem definition and a list of required project features. |
|
|
Problem Domain |
Study the problem until you have a clear understanding of how to solve it. Optionally, express your understanding of the solution by writing a pseudocode algorithm that describes, step-by-step, how you will solve the problem. You may need to do this several times on large, complex projects. This results in a high-level solution statement that can be translated into an application design. |
|
|
Language Features |
Make a list of all the language features you must understand and use to draft a competent design and later implement your design. As you study each language feature check it off your list. Doing so will give you a sense of progress. This results in a notional understanding of the language features re quired to effect a good design and solve the problem. |
|
|
High-Level Design & Implementation Strategy |
Sketch out a rough application design. A design is simply a statement, expressed through words, pictures, or both, of how you plan to implement the problem solution derived in the Problem Domain strategy area. This results in a plan of attack! |
|
Java For Artists(c) The Art, Philosophy, and Science of Object-Oriented Programming Authors: Miller R., Kasparian R. Published year: 2007 Pages: 392-397/452 |