Swedish name: Prestandaprogrammering
This syllabus is valid: 2023-06-26 and until further notice
Course code: 5DV237
Credit points: 7.5
Education level: First cycle
Main Field of Study and progress level:
Computing Science: First cycle, has at least 60 credits in first-cycle course/s as entry requirements
Grading scale: Pass with distinction, Pass with merit, Pass, Pass with distinction, Pass, Fail
Responsible department: Department of Computing Science
Established by: Faculty Board of Science and Technology, 2023-03-17
Software consumes resources such as time, memory, energy, etc. when running. Software developers need to aware of the resource usage of the systems they develop and take steps to make their systems more efficient. This requires an understanding of the underlying hardware, and, more importantly, a desire and ability to apply that knowledge when designing, implementing, and analyzing software systems. The purpose of this course is to provide students with the knowledge, abilities, and attitudes they need to become proficient developers of efficient software systems that run faster, require less memory, and consume less energy. The fundamental concepts and ideas developed during the course are illustrated and practiced using the C++ programming language. While no prior experience with C++ is assumed, students are expected to have enough experience with imperative and object-oriented programming languages (e.g., C and Java) to be able to quickly and independently learn the basics of the language using the textbook and other resources.
Knowledge and understanding
After completing the course, the student should be able to:
Competence and skills
After completing the course, the student should be able to:
Judgement and approach
After completing the course, the student should be able to:
At least 60 ECTS Computing Science. At least 7.5 ECTS programming; 7.5 ECTS data structures and algorithms; 7.5 ECTS object-oriented programming; 7.5 ECTS systems programming; 15 ECTS mathematics including 7.5 ECTS discrete mathematics.
The instruction consists of lectures, seminars, and practical exercises. In addition to participating in scheduled activities, students are expected to engage in self-study of the course material.
The examination consists of a written exam in halls (FSR 1, 2, 3), written assignments (FSR 4, 5, 6), and seminars including code reviews and oral presentations (FSR 6, 7, 8). The grade scale is Fail (U), Pass (3), Pass with Merit (4), or Pass with Distinction (5).
Adapted examination
The examiner can decide to deviate from the specified forms of examination. Individual adaptation of the examination shall be considered based on the needs of the student. The examination is adapted within the constraints of the expected learning outcomes. A student that needs adapted examination shall no later than 10 days before the examination request adaptation from the Department of Computing Science. The examiner makes a decision of adapted examination and the student is notified.
If the syllabus has expired or the course has been discontinued, a student who at some point registered for the course is guaranteed at least three examinations (including the regular examination) according to this syllabus for a maximum period of two years from the syllabus expiring or the course being discontinued.
C++ High Performance - Second Edition
Bjorn Andrist , Ben Garney , Viktor Sehr
2020 :
Mandatory