Course syllabus adopted 2022-02-17 by Head of Programme (or corresponding).
Overview
- Swedish nameProgrammeringsteknik i Python
- CodeDAT555
- Credits7.5 Credits
- OwnerTKIEK
- Education cycleFirst-cycle
- Main field of studyComputer Science and Engineering, Software Engineering
- DepartmentCOMPUTER SCIENCE AND ENGINEERING
- GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Course round 1
- Teaching language Swedish
- Application code 51141
- Open for exchange studentsNo
- Only students with the course round in the programme overview.
Credit distribution
Module | Sp1 | Sp2 | Sp3 | Sp4 | Summer | Not Sp | Examination dates |
---|---|---|---|---|---|---|---|
0122 Laboratory 3 c Grading: UG | 3 c | ||||||
0222 Examination 4.5 c Grading: TH | 4.5 c |
|
In programmes
Examiner
- Niklas Broberg
- Senior Lecturer, Computing Science, Computer Science and Engineering
Eligibility
General entry requirements for bachelor's level (first cycle)Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Specific entry requirements
The same as for the programme that owns the course.Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Aim
Computer programming is a basic skill needed in both studies and professional life. This course gives the basic skills so that the participants can accomplish programming tasks.Learning outcomes (after completion of the course the student should be able to)
Knowledge and understanding:- Explain basic concepts in imperative and object-oriented programming, using adequate terminology
- Give an overview of the relation between hardware, operating system and application
Competence and skill:
- Use basic mechanisms and concepts in program development, such as types, variables, references, objects, statements and expressions etc.
- Implement simple imperative and object-oriented programs with both text-based and graphical user interfaces
- Construct and structure algorithms to solve simple programming problems
- Structure large programs in manageable and reuseable units using koncepts like modules, classes and functions, as well as functional decomposition
- Form readable, descriptive and well-documented program code
- Use a modern development environment, with tools like code editors and version control.
- Apply basic tools and methods supporting an inclusive cooperation in group work
Judgement and approach:
- Argue for implementation choices, with reference to best practices for program development
- Reflect on ethical consequences of following best practices for program development
Content
The course uses the Python language. The following will be addressed:- In- and output
- Literals, types, variables, declarations, initialization, operators, expressions and statements, scope
- Control statements: if, while, for, break, continue, return, try, raise
- One- and two-dimensional lists
- Methods, parameters, arguments, return types, method calls, local variables, overloaded and overridden methods.
- Primitive types vs reference types, value and reference semantics. Equality.
- Classes, objects, interfaces, constructors and access.
- Graphical and event driven programs
- Exceptions and exception handling
- Overview of file handling
- Texthandling, strings
- Simple datastructures (list, dictionary, set, stack)
- Instance and class variables/methods.
Organisation
Teaching is given in the form of computer exercises and labs and lectures. During exercises/labs you will be able to get help.Literature
Information on current literature will be published on the course homepage.Examination including compulsory elements
A written exam and a number of compulsory programming assignments.The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.