Atlanta, GA
Boston, MA
Calgary, AB
Charleston, WV
Chicago, IL
Columbia, MD
Columbus, OH
Des Moines, IA
Detroit, MI
Indianapolis, IN
Kansas City, MO
Los Angeles, CA
Milwaukee, WI
Minneapolis-St Paul, MN
Norfolk, VA
Ottawa, ON
Philadelphia, PA
Phoenix, AZ
Pittsburgh, PA
Raleigh-Durham, NC
Reston, VA
Richmond, VA
San Francisco, CA
Seattle, WA
St Louis, MO
Toronto, ON
Wash Metro Area, DC
Project Management, IT Service Management, .NET, SAS, Rexx, ASP, JavaScript, HTML, XML, ColdFusion, Visual Basic, COBOL, Assembler, Java, J2EE, Java Wireless, WebSphere, WebLogic, UNIX, LINUX, AIX, Solaris, z/OS, OS/390, CICS, IMS, VSAM, Easytrieve, AS/400, Oracle, BusinessObjects, SQL, DB2, Crystal Reports
Course Schedule: | |
Summary:
This course seeks to develop, for the experienced Java programmer, a strong, shared vocabulary of design patterns and best practices. The course begins with a discussion of how to recognize and apply design patterns - that is, how to incorporate pattern awareness into one's own analysis, design, and implementation practices. The main body of the course focuses on the Gang of Four design patterns, with a chapter each on creational, behavioral, and structural patterns. Classroom time is about evenly split between discussion, group design exercises, and coding labs to reinforce finer points of important patterns.This is not a patterns catalog: it is as much a study of how to "think in patterns" as it is an introduction to several of the most important patterns. Students will be challenged to bring their own previous development experience to the discussion, to see the patterns in everyday design and coding solutions. The course puts more emphasis on some patterns than others. We believe that students will be better served by going into a few patterns in depth, with lively discussions of several others, than by following a regular routine of discussion and examples over every GoF pattern.
Duration:
3 Days/Lecture & Lab
Topics:
Prerequisites:
Experience in Java programming is essential especially object-oriented use of the language. Language features and techniques that are integral to some lab exercises include interfaces and abstract classes, threading, generics and collections, and recursive methods. Previous experience with UML (Unified Modeling Language) will be helpful, but is not critical. The course uses UML class diagrams extensively but keeps notation fairly simple, and also includes a quick-reference appendix.
Last Update: May 22, 2012