Course Program
1. Introduction to Programming Concepts
- Introduction to computer programming
- The concept of an algorithm
- The Von Neumann model
- CPU and main memory organization
2. Data Representation and Formal Languages
- Encoding and data representation techniques;
- Formal languages;
- Properties of high-level programming languages.
3. Program Translation and Execution
- Compilers and interpreters
- Phases of program development:
- Program coding
Program compiling
Program testing
4. Data Types and Structures
- Data types and data structures
- The concept of information typing
- Basic data types:
- Simple data types
Structured data types
Abstract data types:
- Definition of value ranges
- Allowed operations
5. Control Structures and Programming Paradigms
- Control instructions
- Instruction types:
- Sequence structures
- Conditional structures
- Iteration structures
- The object-oriented programming model
- Concepts of class, interface, and implementation
- Object data structures and member functions
- Inheritance and polymorphism
6. Program Design and Structure
- Methods and techniques for designing programs
- Main parts of a program:
- Code description
- Variable definition
- Instructions
- The concept of functions:
- Local variables and formal parameters
- Data exchange between functions
- Effective vs. formal parameters
- Scope of variables
7. Modular Programming and Libraries
- Modular programming
- Description and use of standard libraries
8. Basic Algorithms and Array Management
- Basic algorithms and their use in program coding
- One-dimensional array operations:
- Search
- Deletion
- Insertion
- Sorting
- Merging
- Two-dimensional array operations:
- Search
- Deletion
- Insertion
- Matrix multiplication
9. Data Structures: Lists
10. Databases and SQL
- Databases: basic properties
- The relational data model
- The Entity-Relationship (ER) model
- Structured Query Language (SQL)
- SQL and programming languages
11. Practical Components
- Exercises and applications throughout the course