Course code 02 52 6405 00
Number of ECTS points 4
Course title in the language of instruction
Fundamentals of object oriented programming
Course title in Polish Fundamentals of Object Oriented Programming (Podstawy programowania obiektowego)
Course title in English
Fundamentals of object oriented programming
Language of instruction English
Form of classes
Lecture Tutorials Laboratory Project Seminar Other Total of teaching hours during semester
Contact hours 30 20 0 50
E-learning No No No No No No
Assessment criteria (weightage) 0.75 0.25 0.00
Unit running the course Instytut Elektroniki
Course coordinator dr inż. Michał Bujacz
Course instructors dr inż. Michał Bujacz
The student should have basic knowledge about the construction and operation of the computer and its components, operating system and typical application software.
Course learning outcomes
  1. After completing the course the student will be able to build algorithms of solutions, apply typical logical structures and communication between modules
  2. After completing the course the student will be able to work in the Java environment and use appropriate data structures
  3. After completing the course the student will be able to interpret differences in the structural and object-oriented approach
Programme learning outcomes
  1. null
  2. null
  3. null
  4. null
Programme content The course presents basic knowledge about programming with emphasis on object programming and the JAVA language. It systemizes the approach to solution design, teaches coding in a high-level language. Shows the transition from structural to object-oriented programming. Shows the technique of creating applications and graphical applets in Java.
Assessment methods
All the effects will be practically assesset during the laboratory classes and in the form of programming projects.

Grading policies Assessment based on passing practical tests on laboratories (50%) and project (50%).
Course content 1. How to install Java. Command window, first programs. Software Design Notation. Algorithmic thinking. Sample algorithms and their description. 2. Java language environment, IDE. NetBeans package. The basic components of Java programs. Processing numeric data and testing solutions. Input/Output. 3. Selection structures, nested structures. Algorithms and sample codes. 4. Loops. Designing Java programs. Algorithms and sample codes. 5. Modular solution. Methods with parameters, Communication among the modules. Math class methods. Coding. 6. Complex Data structures. Strings, Characters, Arrays. Coding. 7. Problem solving examples. Transferring data through parameters. 8. Introduction to Object-based programming. Concept of a class and objects, attributes and methods, access, data hiding, communication. Examples. 9. Working with classes and objects. Inheritance and abstraction. Examples. Creation of sample codes. 10. File communication. Concept of a stream of data. Character-based files. File I/O. Examples. Text versus binary files. 11.-12. Problem solving examples. Programs composed of a few classes. Polymorphism. Transferring data among the classes. 13. Interactive I/O. Multimedia in Java. Swing-based GUI. Creation of sample codes with graphical interface.
Basic reference materials
  1. Materiały online przygotowane przez prowadzących
  2. Cadenhead R.: Java w 24 godziny.
  3. Downey A. Myślenie w JAVA!
Other reference materials
  1. Charatan Q. Java w dwa semestry
Average student workload outside classroom
Updated on 2019-09-05 13:53:52
Archival course yes/no no