Subject: Fundamentals of Programming and Programming Languages
(17 -
IFE110) Basic Information
Course specification
Course is active from 30.09.2005.. Course which have preconditioned courses Fundamentals of Programming and Programming Languages
Introductory education of students in the field of algorithms, data structures, computer programming, and programming languages. Learning the principles and techniques of algorithmic way of thinking and implementing algorithms in programming languages using adequate data structures. Students will acquire fundamental knowledge about algorithms, programming, programming languages, and data structures. Students are to acquire skills of understanding algorithms and data structures, and to be able to independently implement algorithms in a selected programming language. Introduction to algorithms, programming, and programming languages. Problem-solving using computers. Definition, representations, properties, and complexity of algorithms. Searching and sorting. Models of computation. Turing machine. Church-Turing thesis. Formal representation of the programming language syntax: BNF, EBNF, and syntax diagrams. Basic elements of programming languages. Fundamental and extended data types. Operators and expressions. Control flow. Subprograms. Recursion and recursive functions. Files. Abstract data types and data structures. Linear data structures – array, linked list, stack, queue, hash map. Nonlinear data structures – tree, graph. Overview of programming paradigms – procedural, object-oriented, and functional programming. Structured programming. Testing and documenting computer programs. Teaching is performed through lectures, computer exercises in the computer classroom, and consultations. Throughout the whole teaching process, students are constantly encouraged to communicate intensively, think critically, perform independent study work, and, in general, actively participate in the learning process. The prerequisite to enter final exam is to complete all the pre-exam assignments by earning at least 30 points.
|