Software Development (B-KUL-HBN64B)
Aims
This course aims at learning the skills needed for efficiently programming a computer with Python. This requires students to understand and master the available data types, data structures, programming techniques, and standard algorithms.
Upon completion of this course, the student can:
- Write efficient code capable of solving a moderate programming problem
- Detect and correct different types of errors in a program
- Critically analyze existing computer code with respect to data types, data structures, programming techniques, and standard algorithms
- Use particular data types, data structures, programming techniques, and standard algorithms when executing a programming task
- Determine the complexity of an algorithm
- Apply sorting, binary tree, and hashing techniques when creating a program
- Understand the operations reseach application treated (i.e., shortest path, minimum spanning tree, traveling salesman, and knapsack algorithms) and adapt these to specific needs
Previous knowledge
It is advisable having successfully completed the bachelor course Foundations of Business Information Management.
Identical courses
This course is identical to the following courses:
D0H53A : Softwareontwerp en programmeren 1
D0X34A : Software ontwerp en programmeren 1
Is included in these courses of study
Activities
3 ects. Software Development (B-KUL-HBN63b)
Content
- Introduction
- Installation and first programs
- Variables
- Operations
- Keyboard and output window
- Conditional programming techniques
- Basic algorithms
- Functions
- Modules
- Strings
- Lists
- Sets
- Dictionaries
- Error handling
- Input and output with files
- Recursion
- Classes
- Complexity of algorithms
- Sorting
- Binary trees
- Hashing
- Applications in operations research
Course material
Course text: Van de Woestyne Ignace and Vanthienen Jan, Software development and programming with Python 3 (Acco)
Format: more information
Flipped classroom
Students are encouraged to bring their laptop to class so that they can jointly practice coding in Python according to the teacher's instructions. As preparation for each class, students are expected to thoroughly study in advance the material provided on Toledo on a weekly basis (e.g., video sessions).
Evaluation
Evaluation: Software Development (B-KUL-H73237)
Explanation
The exam is conducted on a computer and the course text can be used as a reference. The answers are submitted digitally.
Information about retaking exams
The evaluation is done in the same way as with the first exam opportunity