TDT4109
Information Technology, Introduction
Autumn
Trondheim
Norwegian
About this course
Content
The course is an introduction to procedure-oriented programming in Python.
Topics:
- Variables and data types.
- Input and output.
- Control structures: Sequence, conditional program flow and repetitions.
- Algorithms. Structuring and modularization of programs; functions and modules.
- Use of libraries and frameworks.
- Data structures: Lists, tables, text strings, sets, tuples and dictionaries.
- Persistent storage of data, file input and output, and exceptions.
- Recursion, sorting and searching.
- Formulation of algorithms as pseudo code or in flow diagrams.
- Basic use of Numpy and Matplotlib.
- Python as a programming environment.
- Basic strategies for testing and debugging.
- Version control using git.
Learning outcomes
Knowledge:
- Hold basic knowledge about the basic elements of procedure-oriented programming.
- Hold basic knowledge about the process from a problem to a working program.
- Familiarity with object oriented programming.
- Familiarity with version control systems.
- Can explain some common ways that AI can be used in programming.
Skills:
- Be able to use the basic elements in practical, procedure-oriented programming.
- Be able to use object-oriented libraries and their method-calls.
- Be able to use relevant programming tools, like Thonny or other syntax-driven editors with semantic error-tagging and step-wise execution with inspection of variables.
- For small-scale problems, be able to use the process from analysis, via algorithm design formulated as pseudo code or in flow-charts, before programming in Python, and testing whether the solution works.
- Be able to carry out small programming projects with a few hundred lines of code.
- Be able to explain your own code to others and AI, and give constructive feedback to others' code.
- An ability to reflect on the approprateness of the use of AI as a tool to write code and for learning.
Teaching methods
Group activities, exercise lectures and mandatory exercises.