BSc: Introduction To Programming II
Revision as of 09:41, 2 December 2021 by N.askarbekuly (talk | contribs)
Introduction to Programming II
- Course name: Introduction to Programming II
- Course number: XYZ
- Knowledge area: Programming Languages and Software Engineering
Administrative details
- Faculty: Computer Science and Engineering
- Year of instruction: 1st year of BS
- Semester of instruction: 2nd semester
- No. of Credits: 4 ECTS
- Total workload on average: 144 hours overall
- Class lecture hours: 2 per week
- Class tutorial hours: 2 per week
- Lab hours: 2 per week
- Individual lab hours: 0
- Frequency: weekly throughout the semester
- Grading mode: letters: A, B, C, D
Prerequisites
- Philosophy 1: Logic and Discrete Mathematics
- Introduction to Programming I
Course outline
Introduction to Programming II is the continuation of an introductory course to programming. It teaches in a more in-depth look at programming and at the development of software. The course is project oriented and it focusses on problem-solving and how to program well. Students will learn how to master the fundamental control structures, data structures, reasoning patterns and programming language mechanisms characterizing modern programming, as well as the fundamental rules of producing high-quality software. The course also introduces functional programming.
Expected learning outcomes
After taking the course, students will
- master the fundamental rules of producing high-quality software.
- acquire in-depth programming background
- use higher-order functions to improve readability and efficiency of programs
- effectively decompose simple programming problems
- debug and test programs.
Expected acquired core competences
- Object oriented programming
- Programming concepts and skills
Textbook
- Bertrand Meyer: Touch of Class, Learning to Program Well with Objects and Contracts, Springer 2009, ISBN: 978-3-540-92144-8
Reference material
Lecturing and lab slides and material will be provided
Required computer resources
Students should have laptops with basic software for reading and editing document.
Evaluation
- Course Project (50%)
- Final Exam (40%)
- Class and lab participation (10%)