Subject description - AE0B36PR1

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

Web page:

https://moodle.fel.cvut.cz/courses/AE0B36PR1

Anotation:

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

Literature:

[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

Requirements:

Subject is included into these academic programs:

Program Branch Role Recommended semester


Page updated 28.3.2024 11:51:04, semester: L/2023-4, Z/2024-5, Z/2023-4, Send comments about the content to the Administrators of the Academic Programs Proposal and Realization: I. Halaška (K336), J. Novák (K336)