Department of Computer Science



next up previous
Next: Course contents Up: Course study guide Previous: Course study guide

Introduction to the course


Subsections

Description

This course has two distinct halves. The first is a quick introduction to programming in C++; although it is short the intention is that, at the end, you will be able to write C++ programs. The second half is different, it is about programming languages, not how to program in them. It considers the different features languages might have and their relative advantages.

These two components are together for pragmatic and historical reasons, firstly it is useful to see a language that is more widely used than Eiffel, and secondly a study of languages deepens your understanding of computing. Nonetheless they are not completely unconnected, the experience of using C++ does provide material for comparisons with Eiffel in the second part of the course.

Motivation

Why does this course matter? The C++ is useful, although it is a truly awful and dangerous language it is very widely used for nearly all system programming and lots of applications (and it's quite fun).

The second half of the course, the study of the features of programming languages and their differences is of less immediate, practical use, but is probably more useful in the longer term. Languages are important: everything that happens in a computer results from the execution of a program, all programs have been written in a programming language. Programming languages are at the heart of all computing. The nature of the language can radically affect the success of program development. Perhaps by examining language features you will see that all languages have deficiencies, and that there will never be a perfect programming language. Don't ask which is the best language, there isn't one!

Objectives

The stated objectives for this course are that on successful completion of the course the student will:

It is possible to be a bit more specific and make the outcomes more concrete:

Assessment

The in-course assessment worth 30% of the overall course assessment will be issued in the fourth week. It will a programming exercise in C++. The rest of the assessment is an examination at the end of the course.

Organisation of material

Unlike some courses for the distance learning scheme this course is based on existing material, it has not been completely developed in the framework of units. Each unit still has: contents, preview, objectives, but instead of the main material occurring ``inline'' there are guided references into the other documents.

As a further consequence of being built from already existing documents there is sometimes more material in the documents than is needed by the course. There are sections that are not needed by any unit, when this happens the course guide will warn that there is extra material that you do not need to study. The material has been left in because it was there and it provides optional further study if you are interested in pursuing it.

Lastly the topics of study do not always map neatly into units so sometimes a unit will be composed of two smaller topics.


Getting access to a C++ compiler

The first part of the course is practical, it is essential to write programs. However it doesn't matter which C++ compiler you use, you can use any that you can get access to.

The compilers often have very different development environments and different libraries but for the past few years they all support the full standard language so any one will do.

buy one
There are various ones available, the most widely used is Microsoft Visual C++,
on a comic
During the past year various popular computer magazines have had different versions of Borland's C++ compiler on their free CDs,
really free
There is one really Open Source free C++ compiler for the PC running Windows, it is the DJGPP compiler , see the DJGPP homepage, http://www.delorie.com/djgpp/. The only drawback with this good compiler is that it is complicated to install.
install Linux
Linux is a very good free operating system for Intel PCs, it provides lots of languages including C++. Linux is a fully standard conforming Unix. It can co-exist on your disc along-side Microsoft operating systems so you can boot whichever you need. This is the best solution (because you get Linux!) but probably the most complicated, you need to install it.
use another machine
the networked Unix workstations in Computer Science all have C++ compilers. You should have login accounts so that you can telnet to them. The drawbacks are (i) having to learn how to use them, and (ii) you will need to dial in.

To contents



next up previous
Next: Course contents Up: Course study guide Previous: Course study guide


Page generated: 2002-11-04 by Bob Dickerson

© University of Hertfordshire Higher Education Corporation (1998)

Disclaimer