6 ECTS credits
150 h study time
Offer 1 with catalog number 1000419ANW for working students in the 1st semester
at
a (A) Bachelor - preliminary level.
- Semester
- 1st semester
- Enrollment based on exam contract
- Impossible
- Grading method
- Grading (scale from 0 to 20)
- Can retake in second session
- Yes
- Enrollment Requirements
- NOTE: registration for this course is only possible for working students. Day students can register for courses whose code ends with an R. At Inschrijven / studentenadministratie@vub.be you must be registered at the VUB as a working student for the current academic year.
- Taught in
- Dutch
- Faculty
- Faculty of Sciences and Bioengineering Sciences
- Department
- Computer Science
- Educational team
- Viviane Jonckers
(course titular)
Wolfgang De Meuter
Eline PHILIPS
Mattias DE WAEL
- Activities and contact hours
- 39 contact hours Lecture
19 contact hours Seminar, Exercises or Practicals
50 contact hours Independent or External Form of Study
- Course Content
- (1) Procedural Abstraction
Elements of programming: expressions, evaluation, names and environments, first order procedures, conditions and predicates, the substitution model for evaluation, the environment model for evaluation, established procedures, procedures as black box abstractions
Procedures and processes: linear recursion and iteration, tree recursion, order of process growth
Higher order procedures: procedures as general methods, procedures as parameters, anonymous procedures, local variables, procedures as return values
(2) Data abstraction
Use of data abstraction, abstraction levels, abstraction barriers, implementation of abstract data types
Hierarchic data: lists, trees and family trees
Symbolic data, quotation
Multiple representations for one ADT, data-oriented programming, object-oriented programming
Systems with generic operators, combining different types of data
(3) Modularity, objects and condition
Assignment and local condition, local condition, cost and use of assignment
Modeling using updatable data: updating lists and trees, stacks of rows and tables
Building ADTs individually for an application: identification of objects, their attributes and operations.
Stream programming: The concept, streams as lists, nested streams, infinite streams
Constraint programming: the concept
- Course material
- Digital course material (Required) : Oefeningenbundel en taken, Leerplatform
Handbook (Recommended) : Structure and Interpretation of Computer Programs, Hoofdstukken 1 + 2 +3, Abelson en Sussman, 2de, MIT Press, 9780262510875, 1996
Digital course material (Recommended) : Aanvullend online materiaal, http://ssel.vub.ac.be/ssel/teaching:courses:stru1
- Additional info
For the digital course material consult the course page on the learning platform.
- Learning Outcomes
-
General competences
knowledge and understanding:
+ the student can explain the basic elements, the combination techniques and the abstraction techniques that are available in mainstream programming languages
+ the student can explain the different techniques that are available to master the complexity of a program
+ the student can explain the various programming styles presented in the course
application of knowledge and understanding:
+ the student can, when given a concrete programming assignment, write a Scheme program that obeys a number of quality properties and he/she can run and test the program
+ the student can map the language constructs that are explained in the course to constructs in related programming languages; he/she can abstract from the particular syntax of Scheme
making judgements:
+ the student can assess the applicability of a given technique for a given problem
+ the student can make a choice between different programming styles for a given assignment
communication:
+ the student masters the necessary terminology to explain the different elements and concepts covered in the course in a discussion or an oral presentation
learning skills:
+ the student can make a mapping between the concrete elements of a new programming language he or she is studying and the elements and concepts presented in the course; this will enable the student to master new programming languages faster
- Grading
-
The final grade is composed based on the following categories:
Written Exam determines 100% of the final mark.
Within the Written Exam category, the following assignments need to be completed:
- Written exam
with a relative weight of 1
which comprises 100% of the final mark.
- Additional info regarding evaluation
During the semester, homework assignments are to be submitted.
In week 6 or 7 a test is organised. This test is mandatory.
At the end of the semester (January) a mandatory written exam about the exercises and the theory is organised. This exam is on all the subject matter covered in the entire semester.
When the student obtained a higher grade on the test in week 6, this grade will be taken into account for 20% of the final grade. When the student obtained a lower grade on the test in week 6 this will not influence the final grade.
- Allowed unsatisfactory mark
- The supplementary Teaching and Examination Regulations of your faculty stipulate whether an allowed unsatisfactory mark for this programme unit is permitted.
Academic context
This offer is part of the following study plans:
Master of Teaching in Science and Technology: biologie (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: geografie (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: fysica (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: wiskunde (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Science and Technology: ingenieurswetenschappen (120 ECTS, Etterbeek) (only offered in Dutch)
Master of Teaching in Economics: standaard traject (90 ECTS, Etterbeek) (only offered in Dutch)
Bridging Programme Master of Science in Applied Sciences and Engineering: Computer Science: Standaard traject (only offered in Dutch)
Bridging Programme Master of Science in Applied Computer Science: Standaard traject (only offered in Dutch)
Preparatory Programme Master of Science in Applied Sciences and Engineering: Computer Science: Track C (Ind Ing, 61 ECTS) (only offered in Dutch)
Preparatory Programme Master of Science in Applied Sciences and Engineering: Computer Science: Track A (76 ECTS) (only offered in Dutch)
Preparatory Programme Master of Science in Applied Computer Science: Enkel voor studenten industriële wetenschappen (only offered in Dutch)
Preparatory Programme Master of Science in Applied Computer Science: Track A (58 ECTS) (only offered in Dutch)