Course Syllabus Course Syllabus � Credits: 5 cp (3 cu) Credits: 5 cp (3 cu) Designing Object Designing Object- -Oriented Oriented � � Prerequisites: Prerequisites: � Software Software � Ohjelmointi II [Programming II] Ohjelmointi II [Programming II] � object- -oriented programming oriented programming � � object � Teaching methods: lectures Teaching methods: lectures � Jouni Smed Jouni Smed � Tuesdays 10 Tuesdays 10– –12, Etäluokka 12, Etäluokka � 2006 2006 from March 7 to April 25 � � from March 7 to April 25 � Assessment: examination only Assessment: examination only � � Course web page: Course web page: � http://staff.cs.utu.fi/staff/jouni.smed/doos/ http://staff.cs.utu.fi/staff/jouni.smed/doos/ Examinations Textbook for the Course Examinations Textbook for the Course � Tentative examination dates Tentative examination dates � � Martin, Robert C.: Martin, Robert C.: Agile � Agile Software Development: Software Development: � May, 2006 May, 2006 � Principles, Patterns, and Principles, Patterns, and June, 2006 Practices , Prentice , Prentice- -Hall, Hall, � June, 2006 � Practices 2003, 2003, � September, 2006 September, 2006 � ISBN: 0- ISBN: 0 -13 13- -597444 597444- -5 5 � Check the exact times and places at Check the exact times and places at � � This course will rely This course will rely � heavily on the textbook, heavily on the textbook, http://www.it.utu.fi/opetus/tentit/ http://www.it.utu.fi/opetus/tentit/ which is why obtaining the which is why obtaining the � If you are not a student of University of If you are not a student of University of book is necessary! book is necessary! � � You can use the textbook You can use the textbook Turku, you must register to receive the Turku, you must register to receive the � in the examination in the examination credits credits � Remember to enrol in time! Remember to enrol in time! � Programming in the 1940s and Programming in the 1940s and Outline of the Course Outline of the Course 1950s 1950s � Programming = instructing the machine Programming = instructing the machine Lecture Book Topics � operations operations 1. 1. — — — — � machine language or assembler machine language or assembler � � machine machine- -oriented programming oriented programming � 2. 2. Section 1 Section 1 Planning, testing, refactoring Planning, testing, refactoring � Far from the way programmers (humans) think Far from the way programmers (humans) think � 3. 3. Section 2 Section 2 SRP, OCP, LSP, DIP, ISP SRP, OCP, LSP, DIP, ISP � The problem domain remained close to the The problem domain remained close to the � machine world machine world 4. Section 3 Design patterns 1 4. Section 3 Design patterns 1 � making calculations, sorting data etc. making calculations, sorting data etc. � 5. 5. Section 4 Section 4 Package design Package design � Main goals of design Main goals of design � � enable the programmer to write the software enable the programmer to write the software � 6. 6. Section 5 Section 5 Design patterns 2 Design patterns 2 � focus on the design of algorithms and data structures. focus on the design of algorithms and data structures. � � Implementing the design was difficult Implementing the design was difficult � 7. 7. Section 6 Section 6 Design patterns 3 Design patterns 3 1
Recommend
More recommend