Software Development (ILV)

Back
Course numberM2.02870.10.041
Course codeSODE
Curriculum2021
Semester of degree program Semester 1
Mode of delivery Presence- and Telecourse
Units per week3,5
ECTS credits5,0
Language of instruction English

This course provides an introduction to problem solving and programming using Python.
• The students should be able to design solutions to non-trivial problems and implement those solutions in Python using suitable control- and data-structures.
• The students know and can use tools like interpreters, debuggers, compilers, make.
• The students can use a version control system (git)

Basic knowledge in one procedural or object-oriented programming language

The module covers the following topics:
Programming in Python:
• Algorithms and Design: o Concept and properties of algorithms
o Role of algorithms in problem solving
o Problem solving strategies (iteration, divide and conquer)
• Syntax and semantics:
o Variables, expressions and assignments
o Conditionals and iteration
o Functions and parameters
• Fundamental Data Structures:
o Arrays
o Records
o Strings
o Strategies for choosing the appropriate data structure
• Object-Oriented Programming:
o Object-oriented design
o Classes and objects
o Fields and methods
• Fundamental Data Structures and Algorithms:
o Sequential search
o Simple string processing
o Dictionaries and hash tables
o Trees and graphs
Tools and best practices:
• Ide, interpreters, compilers, debuggers, ...
• Unix programming environment
• Version control (git)
• Code style guidelines

Lecture slides as provided in the course (required)
B. Miller, D. Ranum : Learning with Python: Interactive Edition

Integrated course - teaching & discussion; demonstration, exercises and practical examples in the lab, home work

assignment reports, written exam