Subject description - A0B36PR1

Summary of Study | Summary of Branches | All Subject Groups | All Subjects | List of Roles | Explanatory Notes               Instructions
A0B36PR1 Programming 1
Roles:P, V Extent of teaching:2P+2C
Department:13136 Language of teaching:CS
Guarantors:  Completion:Z,ZK
Lecturers:  Credits:6
Tutors:  Semester:Z


The aim of the course is to teach the students: basic interactions with user interface and to program development system, introduction to JAVA, basic control flow structures and data structures, functions, arrays, object-oriented programming concepts, streams and files. The students are able to construct and debug a simple program in Java.

Study targets:

Semestral project focused on a complex task - type of a simple database with a possibility of text input/output, items modification and deleting; a table shape. Three phases of supervision: assignment of semester task and consultation, consultation on degree of completion, closing demonstration and defense

Course outlines:

1. Basic terms of information technology and computer technology, operating systems, software, compiler, interpreter, programming languages, syntax, semantics
2. Java conception, basic properties, course and trends, introduction in the language, program processing, byte code
3. Program structure in Java, program construction, program debugging, Java development kit, 4. Basic properties of imperative programming, algorithm development, variables, operators, simple data objects, assignment
5. Expressions, I/O- reading and writing, control flow structures, conditions, loops, iteration
6. Functions, procedures, parameters, parameter passing, static variables, local variables, block, memory management for functions and variables, heap, stack
7. Array, reference variable, array as a parameter, function of array type
8. Decomposition of problem into sub-problems, principle of recursion and iteration
9. Implementation of tables and sets by means of array, multidimensional array, collections, containers in Java
10. Principles of object-oriented programming, classes, class as a programming unit, class as an origin of data type, static and instance variable
11. Structure of the object, dynamic character of objects, constructors, constructor properties, instance of a class, overloading, authorized access
12. Classes, inheritance, hierarchy of classes, composition, abstract classes, polymorphism,
13. Files and streams, file as a sequence of bytes, introduction to exceptions, writing/reading of primitive types, primitive types and objects (strings), objects, serialization
14. Reserve

Exercises outline:

1. Introduction to computing system of the university
2. Introduction to program development system
3. Structure of the program in Java
4. Debugging of trivial tasks in program development system, running out of it
5. Program sequences, input, output, control flow structures
6. Cycles
7. Arrays, assignment of a semester task
8. Non-simple problem solving, decomposition problem to sub-problems
9. Functions and procedures
10. Classes and objects I 11.Classes and objects II
12. Files and streams
13. Test
14. Credit


[1] Zakhour, S: The Java Tutorial: A Short Course on the Basics, 4th Edition, Amazon, 2006
[2] Hawlitzek, F: Java 2, Addison-Wesley, 2000
[3] Eckel, B: Thinking in Java 2, Prentice Hall, 2000



Subject is included into these academic programs:

Program Branch Role Recommended semester
BPKYR1 Robotics P 1
BPKYR_BO Common courses P 1
BPKYR3 Systems and Control P 1
BPKYR2 Sensors and Instrumentation P 1
BPOI1 Computer Systems P 1
BPOI_BO Common courses P 1
BPOI3 Software Systems P 1
BPOI2 Computer and Information Science P 1
BPKME1 Communication Technology V 1
BPKME5 Komunikace a elektronika V 1
BPKME_BO Common courses V 1
BPKME4 Network and Information Technology V 1
BPKME3 Applied Electronics V 1
BPKME2 Multimedia Technology V 1
BPEEM1 Applied Electrical Engineering V 1
BPEEM_BO Common courses V 1
BPEEM2 Electrical Engineering and Management V 1
BMI(ECTS) Manager Informatics V 1
BWM(ECTS) Web and Multimedia V 1
BIS(ECTS) Intelligent Systems V 1
BSI(ECTS) Software Engineering V 1

Page updated 14.6.2021 19:52:31, semester: L/2021-2, L/2020-1, Z,L/2022-3, Z/2021-2, Send comments about the content to the Administrators of the Academic Programs Proposal and Realization: I. Halaška (K336), J. Novák (K336)