HI1001 Object Oriented Programming 7.5 credits
Programmering, fortsättningskurs
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 with knowledge about object-oriented syntax and programming techniques, and also basic knowledge about object-oriented design.
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 some object-oriented language, be able to
- use an IDE to implement, debug and execute object-oriented 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 simple concurrent applications using threads, describe problems related to concurrent programming and how to solve these problems.
- implement event driven 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 and implement more complex applications.
Course main content
- Basic concepts in object-oriented programming: abstract data types, encapsulation, reuse.
- IDE.
- Principles of object-oriented programming: classes/objects, relations, inheritance, polymorphism.
- Object-oriented software development: analysis, design and implementation.
- Class diagrams and relations in e.g. Unified Modelling Language.
- Exception-handling.
- Streams.
- Concurrent programming.
- Graphical user interfaces and event driven programming.
Eligibility
ML1300/HI1900/6S2950, 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: P, F
Requirements for final grade
Passed written exam. The exam contains both theoretical and practical portions.
Passed lab assignments. 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.
