252-0232-00 Software Design • Teacher – Dr. Dominik Gruntz – University of Applied Sciences Northwestern Switzerland (FHNW) – [email protected] [email protected] • Lecture – Friday, 15-17, IFW A32.1 • Assignments – Friday, 17-18, IFW A32.1 26 February 2016 (C) Hochschule für Technik Fachhochschule Nordwestschweiz 1 Software Design: Goals • Goals – – – – – Knowledge of Object-Oriented Concepts Programming Experience with an OO language (Java) Programming Experience with Event-Driven User Interfaces (AWT/Swing) Design Experience: Design Patterns Experience with a larger program • Audience – Students of the Computational Science and Engineering Program – NDS Students • Prerequisite – Structured Programming (Java/C/C++/C#/Fortran) 25 February 2016 (C) Hochschule für Technik Fachhochschule Nordwestschweiz 2 Software Design: Program 26.02. Structured Programming in Java 04.03. Object-Oriented Programming Inheritance, Polymorphism, Abstract Classes, Interfaces, Initialization, Overloading 11.03. Event Driven Programming 18.03. Design Patterns: Observer 08.04. Observer 15.04. Strategy, State 22.04. Composite 29.04. Prototype 06.05. Decorator 13.05. Command 20.05. Factory / Singleton 27.05. Dependency Injection 03.06. Summary 25 February 2016 U01 U02 U01 U03 U04 U05 U06 U07 U08 U09 U10 U11 (C) Hochschule für Technik Fachhochschule Nordwestschweiz U02 U03 U04 U05 U06 U07 U08 U09 U10 U11 3 Software Design: Assignments • Assignments – Development of a Graphics Editor – No course attendance certificate (Testat) anymore – The exam questions are in the context of the graphics editor => the assignments are a requirement to pass the examination => we consider the assignments as part of the course – Hand in your solutions by the due date, then you will get a feedback from the assistants • Assistant – Stefan Müller, [email protected] – Darko Makreshanski, [email protected] • Web – http://www.gruntz.ch/courses/eth_sd 26 February 2016 (C) Hochschule für Technik Fachhochschule Nordwestschweiz 4 References • Head First Design Patterns Eric Freeman, Elisabeth Robson, Bert Bates and Kathy Sierra, O’Reilly, 2nd release 2014, ISBN: 978-0596007126, Online via SFX • Design Patterns: Elements of Reusable Object-Oriented Software Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides, Addison Wesley, 1995, ISBN: 978-0201633610 • Design Patterns: Entwurfsmuster als Elemente wiederverwendbarer objektorientierter Software Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides, mitp, 2014, ISBN: 978-3826697005 26 February 2016 (C) Hochschule für Technik Fachhochschule Nordwestschweiz 5 References • Computer Science Library – Maintains a textbook collection for this course Erich Gamma: Design patterns: elements of reusable object-oriented software Eric Freeman & Kathy Sierra: Head first design patterns (2004) Guido Krüger & Thomas Stark: Handbuch der Java-Programmierung (2009) Christian Ullenboom: Java ist auch eine Insel (2001) Cay S. Horstmann: Core Java: Volume 1: Fundamentals (2012) Cay S. Horstmann: Java SE 8 for the Really Impatient (2014) Tony Bevis, Java Design Pattern Essentials (2012) http://textbooks.inf.ethz.ch/lectures/computer-science-for-non-computer-scientists/96/ 25 February 2016 (C) Hochschule für Technik Fachhochschule Nordwestschweiz 6
© Copyright 2024 ExpyDoc