- Introduction to programming;
- The Python programming language;
- Analysis of a computer science problem, design, specification and implementation of a solution;
- Linear data structures;
- Fundamental concepts of object-oriented programming.
At the end of this learning unit, the student is able to:
Given the learning outcomes of the "Bachelor in Engineering" program,
this course contributes to the development, acquisition and evaluation of the following learning outcomes:
- AA 1.1, 1.2
- AA 2.4, 2.5
- AA 3.1
- AA 4.2, 4.3, 4.4
Students who have successfully completed this course will be able to :
- Apply the concepts and reasoning in the discipline of computer science to a problem of delimited complexity.
- Describe the tools, techniques and computations needed to solve this disciplinary problem.
- Model a problem and design one or more technical solutions that respect the specifications.
- Implement and test a solution in the form of a prototype.
- Work in pairs or in group and commit collectively to a work plan, a timetable (and roles to play).
- Communicate in graphical and schematic form, be able to interpret diagrams, present the results of a work, structure information.
- Read, analyse and exploit technical documents (standards, plans, specifications, specifications, ...).
- Write written summary documents taking into account the requirements of the missions (projects and problems).
- Demonstrate a good understanding of the concepts and methodology of programming, including object-oriented programming.
- Make good use of the elements of an programming language like Python, including its object-oriented concepts.
The contribution of this Teaching Unit to the development and command of the skills and learning outcomes of the programme(s) can be accessed at the end of this sheet, in the section entitled “Programmes/courses offering this Teaching Unit”.
- Programs, source code and program execution
- Identifiers, variables, values, types, assignment
- Expressions, instructions
- Conditional structures and loops
- Functions, parameters, calls, results, execution, variable scoping
- Specifications and tests
- Data structures, lists, strings and their operations
- References and nested data structures
- Nestsed lists, tuples, matrices, dictionnaries
- Dichotomic search algorithms
- File handling, input/output
- Exception handling
- Object-oriented programming and garbage collection
- Classes, objects, constructors, methods
- References to an object, self-references and self-calls
- Class, instance and local variables, scope, visibility
- Class composition, inheritance and encapsulation
- Polymorphism, super calls and dynamic binding
- Object equality
- Linked data structures
- partical exercice sessions with tutors,
- programming exercices on the INGInious platform.