HI1007 Object Oriented Programming with Java 7.5 credits
Objektorienterad programmering med Java
Educational level
First cycleAcademic level (A-D)
ASubject area
Information Technology
Techonology
Grade scale
A, B, C, D, E, FX, F
At present this course is not scheduled to be offered.
Learning outcomes
The aims of this course are to provide the participants basic knowledge about object-oriented development and in-depth knowledge about syntax and programming techniques in Java.
To obtain the grade E, the student should be able to
- describe the different phases in object-oriented software development.
- develop simple models, that can be used for implementation of applications, using the concepts of object-orientation.
- describe the model using the Unified Modelling Language,
- implement classes that, when possible, can be reused in similar contexts.
To obtain the grade E, the student should also, using the object-oriented language Java, be able to
- use an IDE to implement, debug and execute Java applications.
- implement structured applications, using object-oriented principles like data abstraction and encapsulation, that are easy to maintain and further develop.
- use inheritance to extend and override the functionality of classes.
- implement polymorphic code.
- use exception-handling to handle run-time errors.
- use streams to read and write data from/to different types of sources/targets.
- implement concurrent applications using threads, describe problems related to concurrent programming and how to solve these problems.
- implement event driven applications.
- implement applications with simple graphical user interfaces.
- Describe, and in simple cases implement, the Model-View-Controller pattern.
To obtain higher grades, the student should also be able to
- use the methods in object-oriented analysis and design to develop models of more complex applications.
- design and implement flexible and reusable software solutions using object-oriented principles.
Course main content
- Basic concepts in object-oriented programming: abstract data types, encapsulation, reuse.
- Principles of object-oriented programming: classes/objects, relations, inheritance, polymorphism.
- Object-oriented software development: analysis, design and implementation.
- Unified Modelling Language: use cases, class diagrams and sequence diagrams.
- Syntax and implementation in Java
- Exception-handling.
- Streams.
- Concurrent programming.
- Graphical user interfaces and event driven programming.
Eligibility
HI1900, Computer Programming, Basic Course, or corresponding course
Literature
One of theese (student´s choice).
Object-oriented Software Development Using Java, 2nd edition, Xiaoping Jia, Addison Wesley, ISBN 0-321-21073-5
Introduction to Java Programming, Comprehensive version, 7th edition, Y. Daniel Liang, Pearson Education, ISBN 0-13-605966-X
Examination
- TEN1 - Examination, 3.0 credits, grade scale: A, B, C, D, E, FX, F
- ÖVN1 - Exercises, 4.5 credits, grade scale: A, B, C, D, E, FX, F
Requirements for final grade
Written exam, TEN1, 3 credits (ECTS) A-F. The exam contains both theoretical and practical portions.
Lab assignments, ÖVN1, 4.5 credits (ECTS) A-F.
The final grade is based on all parts of the examination.
Offered by
STH/Computer and Electrical Engineering
Contact
Anders Lindström, anders.lindström@sth.kth.se
Examiner
Anders Lindström, anders.lindström@sth.kth.se
Version
Course plan valid from:
Autumn 10.
Examination information valid from:
Autumn 07.
