COMPGC01 - Introductory Programming
This database contains 2016-17 versions of the syllabuses. For current versions please see here.
|Year||MSc Computer Science|
|Taught By||Ghita Kouadri Mostefaoui (100%)|
This course introduces imperative and object-oriented programming using pure Java. The module uses Java to give a grounding in key object-oriented concepts such as class design, inheritance, dynamic binding and interfaces. Material focuses on practicing object oriented programming to be better prepared for future courses including COMPGC02 Apps Design and COMPGC05 Algorithmics. This is an intensely practical module and full student engagement outside of lectures and in lab classes is critical to successful completion of the module.
After completing the module attendees will:
Topics covered in lectures or via online material:
Introduction to Imperative Programming
What is imperative programming? Introduction to Java. Variables. Conditions and loops. Types and type checking. Operators and expressions.
Classes and Objects
Java class libraries. Creating and using objects. Object references.
Declaring methods and using method parameters. Scope and lifetime.
Packages and interfaces
Stream API and Lambda expressions
Graphical user interfaces
Using an IDE and SDKs
Method of Instruction:
Lecture presentations, online materials, lab-classes and tutorial sessions. Self-directed learning, problem based learning.
The course has the following assessment components:
- In-class tests x 2 (60%)
- Coursework - programming exercises (40%)
The Java coursework project for COMPGC01 is an individual project putting in practice the skills learned during the lectures/labs. Several weekly exercises are required to be completed and checked in labs.
To pass this course, students must:
- Obtain an overall pass mark of 50% for all sections combined.
A UCL Library reading list can be found on Moodle.
The recommended Java programming text is: Beginning Java 8 fundamentals : language syntax, arrays, data types, objects, and regular expressions / Kishori Sharan. Apress 2014, ISBN 9781430266525; ISBN 143026652X *Accessible online from the UCL library
Note: The module is based on the latest version of Java (Version 8).