Automatic programming

Semester
4.
ECTS credits
3 ECTS
Head professor

Goal

To introduce students to object-oriented and generic programming through workshop lectures, exercises, and problem solving

Additional info

Basic concepts of object-oriented programming
The concept of object-oriented programming. Memory management. Class (class). Objects as instantiations of a class. Class attributes. Data members of a class. Functional members of the class (methods). Encapsulation of objects. Abstraction (abstract classes and interfaces). Inheritance. Dynamic Polymorphism, reflection, static code generation. Modern interpreters and compilers for object-oriented programming.
Object-oriented programming and generic programming techniques in application
Generator construction. Modules. Attributes. Structure (modules, commands, expressions, defining and processing objects). Data (numeric type, character type, list, dictionary, n-tuple, file). Operators. Variables (names). Numeric expressions. Character strings (immutable sequences): operations, quotes, escape sequences, raw character strings, indexing and slicing. Conversions. Modifying character strings. Character string methods. Formatting character strings. Lists: operations on lists, concatenation, indexing and slicing. Matrices. Modifying a list. List methods. Sorting a list. Deleting a list. Creating a list. Dictionaries. Operations on dictionaries. Dictionary methods. Modifying a dictionary. Dictionary as a flexible list. n-Tuple: operations on n-tuple, immutability of n-tuples. Sets: operations on sets. Files: operations with files. Storing objects in a file. Comparisons. Instructions (weighing, iterations). Functions (built-in functions, defining a function as an object, calling functions, generating functions).. Globality. Passing arguments to a function. Assigning names to function arguments. An arbitrary list of arguments. Anonymous functions. Modules and namespaces. User objects: classes and inheritance. Creating a class. Creating an instance. MetaMethods of user objects. Inheritance with user objects. Object programming in the function of machine learning.
Template metaprogramming
Metaprogramming of values. Metaprogramming of types. Suggested expressions for implementing vectors. Suggested expressions for implementing matrices. Prepositional expressions of methods and classes.
Application projects of generative development of business applications.
Creation of a generative proposed expression that covers one business application process (Example: transfer of business partner records, regardless of fields, from various data repositories (CSV, XML, JSON) to a relational database)

Lectures: 15
Seminars: 0
Exercises: 15

1. Analyze the problem for which it is necessary to develop a programming solution using object-oriented programming and generic programming techniques
2. Judge which concepts and disciplines of object-oriented programming should be used in solving the problem
3. Develop a simple to moderately complex programming solution using object-oriented programming and generic programming techniques

magnifiercrossmenuplus circlecircle-minus LinkedIn facebook Pinterest youtube RSS Twitter Instagram facebook-blank rss-blank linkedin-blank Pinterest youtube Twitter Instagram Skip to content