Informatics 1 is an introduction to object-oriented programming using the Java language. In this class we will be using BlueJ as development environment. You will learn about writing programs, designing simple algorithms, about control structures, data types and structures, objects and classes.
This class will be held in german, but all (or almost all) written material will be in English. You are free to choose either language for your written assignments.
The class consists of 2x2h of lectures and 2h of lab per week, with one lab held by Hermann Thiel and two labs held by me. Find the details in LSF - there’s a link to the LSF class in the menu under ‘External Links’.
Additional to the class meetings there will be two optional events to help you learn programming:
- Info1 tutorials held by Anja Kammer (Tuesdays 10:30-12:00, Room WH C 537)
- two additional courses, Creative Computing and Graphical User Interfaces, held by Linda Fernsel.
Your grade in Info1 will be a weighted mixture of the evaluated elements of the course. The partial grades will be assessed as follows and then graded according to the Grading Scale:
- Lab Reports: 50%
- Exam: 50%
- Lecture summaries: 8%
- Additional Course (Scratch or GUI): 8%
That is, both the additional module and the lecture summaries are optional - you don’t need them to get 100% for the grade - but together they might lift your grade up a whole grade.
In the Moodle collaboration room you can find a section called “Lecture summaries”. You are expected to write 5-10 complete sentences summarizing each lecture.
Lecture summaries are due at 22.00 the Monday for both lectures of the past week. They are either done or not done. I expect you to do 20 out of all (which will be slightly more) to get the full 5%. If I find plagiarisms of lecture summaries (especially from the Wikipedia), you will not get any credit for any lecture summary.
You find detailled information about them on the Lab Page
There will be a 2-hour online examination at the end of the term. The examination will cover Java programming and conceptual understanding in ways that may be difficult to assess during the laboratory sessions. The exam will be an on-line exam with two parts, a multiple-choice part and an essay / programming part. Please consult LSF for the definite date and time.
Tutorial and Additional Modules
Java-Tutorials and Book
Most of this lecture will be based on: D. Barnes; M. Kölling: Objects first with Java. A Practical Introduction using BlueJ; Pearson Education. 6th edition.
German translation: Barnes, David J., Kölling, Michael: Java lernen mit BlueJ. Pearson, 2017, 6. Auflage. Pearson
There are copies available in the library, and you can also obtain an older edition - examples and chapter order vary, but the general content is mostly the same apart from the newer chapters on lambdas.
There are many Java Tutorials out there on the web, my recommendation are the Tutorials by Sun/now Oracle; especially the Trail “Learning the Java Language”, as they are very concise and comprehensive.
Important Links and Further Information
Information on this class is dispersed on various locations depending on the nature of the information and wether it can be public or not. On the top of the page you find a navigation that gives you access to all those places - they are in detail:
This is the menu:
- These pages for publicly accessible information, especially the Schedule, Lab exercises, or further general information as the Grading Scale
- External Links:
- Moodle for all Information that cannot be made publicly available and for handing in your lecture summaries and lab reports.
- Github for publicly accessible code examples used in the lecture and the assignments (you don’t need to know how to use git to use github - note the “download as zip” buttons on the starting page of each repository!)
- last not least the LSF System, where you can find class times and rooms. Note that is possible to see the general schedule for your Semester (Term Schedule above) and also Schedules for all people teaching (Dozentenpläne) - this is often the fastest way to find out the room for your next class.