Advanced Programming - Winter 10
Jump to navigation
Jump to search
- Term
- Winter 10
- Lecturer
- Dr. rer. nat. Tobias Neckel
- Time and Place
- 00.13.009A, Wednesday, 10:15 - 12:00
- Audience
- Computational Science and Engineering, first semester (module IN1503)
- Tutorials
- Martin Roderus, M.Sc. See below for more information
- Exam
- 27.4.2011 (2nd exam), 11:30-13:10, room HS3 (FMI); review 6.5.2011, 08:30-09:00, room 02.07.023.
- Semesterwochenstunden / ECTS Credits
- 4 SWS (2V+2Ü) / 5 Credits
- TUMonline
- {{{tumonline}}}
News
- The 2nd exam review will take place (as announced at the exam and in TUMonline) on May 6, 08:30-09:00, in room 02.07.023.
- The 2nd exam is now scheduled (see above). Make sure to register until April 3 in TUMonline!
- The exam review will take place (as announced at the exam and in TUMonline) on March 18, 10:00-11:00, in room 02.07.023.
- The date for the 2nd exam has not yet been fixed due to centrally organised scheduling of exam dates. Please do not forget to register for the 2nd exam as soon as this is possible in TUMonline!
- Please do not forget to register for the exam!
- Due to scheduling aspects with the tutorials, chapter 6 and 7 are going to be discussed after chapter 9 in the lecture.
Description
This course belongs to the module IN1503. It addresses primarily students in the first semester of the CSE master's program.
Contents
- Basic elements of the Java programming language: expressions and variables, statements, functions and parameters, recursion, data structures, control structures
- Applications in scientific computing: iterative methods, matrix computation, systems of linear equations, PDE on Cartesian grids
- Object oriented programming: objects and classes, collections, inheritance, polymorphism
Tutorial
Part of the module is a weekly, compulsory tutorial with Java programming exercises.
Nr. | Exercise | Time |
---|---|---|
1 | Ticket Machine | November 8, 2010 |
2 | Complex Numbers | Session 1: November 15, 2010 |
Session 2: November 22, 2010 | ||
3 | Object Oriented Modelling of Functions | Session 1: November 29, 2010 |
Session 2: December 6, 2010 | ||
4 | Sorting | Session 1: December 13, 2010 |
Session 2: January 10, 2011 | ||
5 | Matrix Operations | Session 1: January 17, 2011 |
Session 2: January 24, 2011 |
Lecture Slides
Note: Due to scheduling aspects with the tutorials, chapter 6 and 7 are going to be discussed after chapter 9 in the lecture.
- Chapter 0: Introduction + Organisation Concept
- Chapter 1: Objects First with Java
- Chapter 2: Understanding Class Definitions
- Chapter 3: Object Interaction
- Chapter 4: Grouping Objects
- Chapter 5: More Sophisticated Behavior
- Chapter 6: Well-Behaved Objects
- Chapter 7: Designing Classes
- Chapter 8: Improving Structure with Inheritance
- Chapter 9: More about Inheritance
- Chapter 10: Further Abstraction Techniques
- Chapter 11: Handling Errors
- Chapter 12: Designing Applications
Recommended Reading
In English:
- Douglas Bell and Mike Parr: Java for Students, Prentice Hall/Pearson Education, 2002 (3rd edition)
- David J. Barnes and Michael Kölling: Objects First with Java - A Practical Introduction using BlueJ, Prentice Hall/Pearson Education
- Walter Savitch: Absolute Java, Addison-Wesley, 2006 (2nd edition)
- Python Software Foundation Software Carpentry
In German:
- David J. Barnes and Michael Kölling: Objektorientierte Programmierung mit Java, Prentice Hall/Pearson Education, 2003
- Reinhard Schiedermeier: Programmieren mit Java, Pearson Education, 2005
- Robert Sedgewick: Algorithmen in Java, Teil 1-4, Addison-Wesley, 2003 (3., überarbeitete Auflage)