Official course description:
Full info last published 4/07-19

Introductory Programming

Course info
Language:
English
ECTS points:
15
Course code:
KSINPRO1KU
Offered to guest students:
no
Offered to exchange students:
Offered as a single subject:
no
Programme
Level:
MSc. Master
Programme:
MSc in Software Design
Staff
Course manager
Associate Professor
Teacher
Postdoc
Teacher
Part-time Lecturer
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Teaching Assistant
Teaching Assistant (TA)
Course semester
Semester
Efterår 2019
Start
26 August 2019
End
31 January 2020
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract

This course teaches the basics of Java programming, enabling you to work practically in a modern high-level language

Description

Computers operate under the hood by following programs: sequences of instructions of what to do, along the lines of “add 7 to this variable”, “write on the screen”, “proceed this way if x is 7, this other way otherwise”. Programs exist at all levels of abstractions, from the very low-level and verbose assembly language understood by hardware, over the concise and powerful high-level languages used by modern programmers, to domain-specific languages used in special-purpose situations.

This course teaches the basics of Java programming, enabling you to work practically in a modern high-level language.

Object Oriented analysis, design, and implementation Programming in Java:
classes, objects, methods, fields, variables, simple types, expressions, statements, declarations, conditionals, lazy evaluation, repetition, recursion, class libraries, regular expressions collections, arrays, simple graphical user interface, static vs dynamic typing, virtual dispatching, generic types, class design, abstract classes, interfaces, encapsulation, test and documentation, file input/output, exceptions.

Formal prerequisites
You should be able to use your computer to send e-mails, browse the web, install new software. You don't need any programming experience to take this course. The course is only open to ITU MSc Software Development - Software Design students.
Intended learning outcomes

After the course, the student should be able to:

  • Apply basic programming constructs in Java.
  • Explain basic programming constructs in Java.
  • Analyze a problem description, with the intent of implementing a solution.
  • Design a system based on an analysis.
  • Implement a system based on a design.
  • Test a system and evaluate to what degree the tests cover the system.
Learning activities

The first two thirds of the semester will mainly consist of lectures and exercises. In the final third of the semester, all students must do a programming project. Therefore, teaching will gradually gain more character from project work and guidance. In the first part of the semester, live coding exercises are also included, which are sessions where practical coding is illustrated based on student needs and what the teachers consider necessary.

Mandatory activities
7 out of 10 weekly assignments must be approved, as well as 2 out of 2 on-line programming assignments (on-site, closed book) must be approved to be eligible for the exam. 

The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.

Course literature

David J. Barnes & Michael Kölling
Objects First with Java - A Practical Introduction using BlueJ
Sixth Edition, Pearson, 2016
ISBN (Global Edition): 978-1-292-15904-1

Ordinary exam
Exam type:
D: Submission of written work with following oral, external (7-trinsskala)
Exam variation:
D2G: Submission of written work for groups with following oral exam supplemented by the work submitted. The group has a shared responsibility for the content of the report.
Exam description:

Mixed 1

Duration 30: minutes per student

Group size: 3-4 students

Hand-in: Programming project consisting of code and report. Detailed information will be available in learnIT.




reexam
Exam type:
Z. To be decided, - (-)
Exam variation: