Difference between revisions of "BSc: Introduction To Programming II"

From IU
Jump to navigation Jump to search
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Introduction to Programming II =
+
= Introduction to Programming II=
   
 
* <span>'''Course name:'''</span> Introduction to Programming II
 
* <span>'''Course name:'''</span> Introduction to Programming II
Line 5: Line 5:
 
* <span>'''Knowledge area:'''</span> Programming Languages and Software Engineering
 
* <span>'''Knowledge area:'''</span> Programming Languages and Software Engineering
   
 
== Course characteristics ==
== Administrative details ==
 
   
 
* <span>'''Faculty:'''</span> Computer Science and Engineering
 
* <span>'''Faculty:'''</span> Computer Science and Engineering
Line 19: Line 19:
 
* <span>'''Grading mode:'''</span> letters: A, B, C, D
 
* <span>'''Grading mode:'''</span> letters: A, B, C, D
   
  +
=== Key concepts of the class ===
== Prerequisites ==
 
   
 
* Introduction to Programming II concepts:
* Philosophy 1: Logic and Discrete Mathematics
 
* Introduction to Programming I
 
   
  +
=== What is the purpose of this course? ===
== 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.
 
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 ==
 
   
  +
==== What should a student remember at the end of the course? ====
After taking the course, students will
 
   
  +
By the end of the course, the students should be able to recognize and define
* 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 ==
 
  +
*
  +
*
  +
*
  +
*
   
  +
==== What should a student be able to understand at the end of the course? ====
* Object oriented programming
 
* Programming concepts and skills
 
   
  +
By the end of the course, the students should be able to describe and explain (with examples)
== Textbook ==
 
   
  +
*
* Bertrand Meyer: Touch of Class, Learning to Program Well with Objects and Contracts, Springer 2009, ISBN: 978-3-540-92144-8
 
  +
*
  +
*
  +
*
  +
*
  +
*
   
  +
==== What should a student be able to apply at the end of the course? ====
== Reference material ==
 
   
  +
By the end of the course, the students should be able to apply
Lecturing and lab slides and material will be provided
 
   
  +
*
== Required computer resources ==
 
  +
*
  +
*
  +
*
  +
*
   
  +
=== Course evaluation ===
Students should have laptops with basic software for reading and editing document.
 
 
== Evaluation ==
 
   
 
* Course Project (50%)
 
* Course Project (50%)
 
* Final Exam (40%)
 
* Final Exam (40%)
 
* Class and lab participation (10%)
 
* Class and lab participation (10%)
  +
  +
==== Typical questions for seminar classes (labs) within this section ====
  +
# Same as above
  +
==== Test questions for final assessment in this section ====
  +
  +
# Same as above

Latest revision as of 10:48, 20 April 2022

Introduction to Programming II

  • Course name: Introduction to Programming II
  • Course number: XYZ
  • Knowledge area: Programming Languages and Software Engineering

Course characteristics

  • 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

Key concepts of the class

  • Introduction to Programming II concepts:

What is the purpose of this course?

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.


What should a student remember at the end of the course?

By the end of the course, the students should be able to recognize and define

What should a student be able to understand at the end of the course?

By the end of the course, the students should be able to describe and explain (with examples)

What should a student be able to apply at the end of the course?

By the end of the course, the students should be able to apply

Course evaluation

  • Course Project (50%)
  • Final Exam (40%)
  • Class and lab participation (10%)

Typical questions for seminar classes (labs) within this section

  1. Same as above

Test questions for final assessment in this section

  1. Same as above