Studyinfo subject MEK3100 2024 HØST
MEK3100 Programming 2 Course description
- Course name in Norwegian
- Programmering 2
- Study programme
-
Bachelorstudium i ingeniørfag - bygg / Bachelorstudium i ingeniørfag - elektronikk og informasjonsteknologi / Bachelorstudium i ingeniørfag - bioteknologi og kjemi / Bachelorstudium i ingeniørfag - maskin
- Weight
- 10.0 ECTS
- Year of study
- 2024/2025
- Curriculum
-
FALL
2024
- Schedule
- Programme description
Introduction
This course is a continuation of MEK1300 - Programming 1 and goes deeper into more advanced topics in Python such as Object-Oriented Programming (Abstraction, Encapsulation, Inheritance, and Polymorphism), Functional Programming (Lambda expressions, Map, Filter, Zip), List Comprehension, Generators, Decorators, and Metaprogramming.
Recommended preliminary courses
MEK1300 - Programming 1
Learning outcomes
After completing the course, students are expected to have achieved the following learning outcomes defined in terms of knowledge, skills, and general competence.
Knowledge
The students:
will have a good overview of the Python programming language and can use it to solve real-life problems of moderate size.
can understand the principles of object-oriented programming features (e.g., class, object, methods, inheritance, polymorphism, encapsulation, etc.) and can use these to write object-oriented codes.
can understand the difference between functional and object-oriented features of Python and know when it is appropriate to use each.
can develop robust and reliable programs with good object-oriented design, find alternative solutions for a given problem, and evaluate the pros and cons of the different solutions.
Skills
The students:
can write clear and efficient programs in Python.
can identify and correct errors in their own programs.
can understand and familiarize themselves with other people's programs in order to troubleshoot, and modify them.
General competence
The students:
can create effective programs in Python and solve relevant issues.
can do a code review, document errors, and suggest improvements.
can critically assess different programming approaches for a given problem.
Teaching and learning methods
Lectures and exercises.
Course requirements
The following work requirement is mandatory and must be approved to sit for the exam:
Submission of one programming assignment.
Assessment
An Individual written exam of three hours.
Exam results can be appealed.
In the event of a resit or rescheduled exam, an oral examination may be used instead. In case an oral exam is used, the examination result cannot be appealed.
Permitted exam materials and equipment
No aids are allowed.
Grading scale
Graded scale A-F.
Examiners
One internal examiner. External examiners is used regularly.
Course contact person
Hadi Zahmatkesh
Overlapping courses
The course has 2 ECTS overlaps with the course ELI1500 Digital Systems.