Introduction to systematic design, development and testing of software systems, including event-driven and Web programming, information management, software design and development fundamentals, and the application of these skills to the construction of large robust programs. Includes weekly assignments and projects, which provide students with experience in the practice of design and programming.
Prerequisite
C or higher in CSE 216 or CSE 260; CSE major
Course Outcomes
An ability to use event-driven and reactive programming to the construction of Web software.
An understanding of information management systems and querying databases.
An ability to use current design and development principles to systematically build and test large programs.
Textbook
Kathy Sierra, Bert Bates, Elisabeth Robson, Eric Freeman, Head First Design Patterns, ISBN: 0596007124
Major Topics Covered in Course
Event-driven programming, including the use of front-end Web frameworks
Information management, including database CRUD operations and transactions
Software design principles, techniques and patterns