Skip to content

This course teaches the fundamental ideas behind the object-oriented approach to programming; through the widely-used Java programming language. Concentrating on aspects of Java that best demonstrate object-oriented principles and good practice, you’ll gain a solid basis for further study of the Java language, and of object-oriented software development. You’ll need to be confident using a Windows-based PC, and have experience of writing small computer programs, such as that gained through prior study of Block 2 of M150 (now discontinued). You should also be able to write short explanations of technical ideas in your own words, and be able to communicate with others electronically.

Register for the course

Start End Fee Register
- - -

No current presentation - see Future availability

This course is expected to start for the last time in February 2012.

Top

What you will study

In the object-oriented view of software, programs are considered to be collections of objects that interact by sending messages to one another and reacting to the answers to those messages. These ideas are at the forefront of modern software development.

The course takes an ‘objects first’, approach to teaching: you start seeing and interacting with graphical objects right from the very start. This is achieved by working within innovative and engaging micro worlds that allow you to learn some basic object-oriented principles, before having to get to grips with Java syntax or source code.

To facilitate the teaching of Java, the course makes use of BlueJ, an integrated development environment (IDE) specifically developed for teaching and learning object-oriented programming. BlueJ is used worldwide and is designed to be easy to use and places special emphasis on visualisation and interaction techniques to provide a highly interactive environment that encourages experimentation and exploration.

As you study the course, you will be using email, computer conferencing and the World Wide Web for communication with the University, your tutor and other students. You may also have the opportunity of attending face-to-face tutorials with your tutor and other students in your tutor group.

You will learn

  • the fundamental concepts associated with object-oriented programming (object, class, protocol, hierarchy, inheritance, encapsulation, polymorphism, collaboration, etc.)
  • to apply and extend your knowledge of programming concepts within an object-oriented programming context.

In Block 1 you will interact with a micro world of graphical objects to explore basic object-oriented ideas. However, soon you will be getting to grips with Java code and syntax and will begin writing your own simple object-oriented code using the BlueJ IDE. Basic object-oriented concepts such as attribute, state, protocol, class and subclass are introduced, initially through interaction with the micro world, and then in the context of writing Java code. By the end of the block, you will be expected to write short methods (the smallest units of code in Java) to specification.

Block 2 continues the teaching about fundamental object-oriented ideas, by investigating inheritance hierarchies, overriding methods, abstract classes, interfaces, polymorphism, re-use of code, static methods and variables. Along the way, you’ll learn about creating your own classes, about the facilities of Java for selection and iteration, and more about some of the core, provided Java classes. Different kinds of errors are discussed, along with debugging in the BlueJ environment. After discussion of the need to design code, you will be expected to be able to implement to specification a class along with its methods.

Block 3 introduces a subset of the Java collection classes, and related issues such as iteration. You are guided to apply your knowledge from Blocks 1 and 2, along with the new classes being introduced, to increasingly complex programming exercises. The skill of appropriately utilising a provided library of classes (searching for a useful class and method, for example) is explicitly developed in this context, and re-use by composition is discussed.

Block 4 begins by investigating how data is written to and from files in Java and how objects can be made persistent by writing them to file. The block then goes on to discuss software testing in an object-oriented context and the use of the testing tool JUnit. Finally the block puts what you have learnt in this course into the context of software development – a set of activities, stages and techniques which help individuals and teams to write software that meets its users' requirements.

Top

Entry

The course is suitable for students who have previously taken a Level 1 course involving computer programming such as M150 (now discontinued), or who have equivalent programming knowledge. It assumes:

  • knowledge of, and facility with, basic programming concepts such as assignment to variables, sequence, selection and  iteration
  • a general familiarity with the basic components and working of a computer
  • study skills appropriate to Level 2 study.

If you have any doubt about the suitability of the course, please contact our Student Registration & Enquiry Service.

Top

If you have a disability or additional requirement

Course texts are available in electronic format, and descriptions are available for the diagrams that are used throughout the text. Our Services for disabled students website has the latest information about availability.

If you are a new student, or new to courses using a computer or the internet, you will need to inform us of your particular needs as soon as possible, as some of our support services may take several weeks to arrange. Details of how to do this and our range of support services are described in our publication Meeting Your Needs.

You can also find information about accessible study materials, financial support and the Disabled Students' Allowance, equipment and other services, on our Services for disabled students website. It also includes our contact details for advice and support both before you register and while you are studying.

Top

Study materials

What's included

Course texts, other printed materials, course software, website, computer conferencing.

Computing requirements

This course includes online computer activities – you can access these using a web browser that can play Flash and Shockwave.

You will need internet access and a computer. If you have purchased a new computer since 2005 it should meet your course computing requirements. Check our Technical Requirements section if your computer is older than this or is otherwise unusual.

Top

Teaching and assessment

Support from your tutor

You will have a tutor who will help you with the study material and mark and comment on your written work, and whom you can ask for advice and guidance. We may also be able to offer group tutorials or day-schools that you are encouraged, but not obliged, to attend. Where your tutorials are held will depend on the distribution of students taking the course. Contact our Student Registration & Enquiry Service if you want to know more about study with The Open University before you register.

Assessment

The assessment details for this course can be found in the facts box above.

You will be expected to submit your tutor-marked assignments (TMAs) online through the eTMA system unless there are some difficulties which prevent you from doing so. In these circumstances, you must negotiate with your tutor to get their agreement to submit your assignment on paper.

Top

Professional recognition

This course may help you to gain recognition from a professional body. You can download our Recognition leaflets 3.3 Professional Engineering Institutions and 3.7 Computing or ask our Student Registration & Enquiry Service for a copy.

Top

Top

Future availability

The details given here are for the course that starts in October 2011 and February 2012 when it will be available for the last time. A new course, in the same area, is planned for October 2012.

Top

Fees 2012

See fees and funding options for study from September 2012.

Course facts

An undergraduate course.

About this course:
Course code M255
Credits 30
OU Level 2
SCQF level 8
FHEQ level 5
Course work includes:
4 Tutor-marked assignments (TMAs)
Examination
No residential school

Study explained

Financial support
- find out if you qualify for support with your fees with our eligibility checker.
Study explained
- all you need to know about distance learning with the OU.

Student Reviews

A great introduction to programming with Java. The concepts are well explained and easy to get to grips with. It ...
Read more

A great course! I came with considerable previous programming knowledge but still, if I were knew to the subject, I ...
Read more

Course satisfaction survey

See the satisfaction survey results for this course.


Your questions

We may have already answered it in our frequently asked questions.

Or contact an adviser in our Student Registration & Enquiry Service Email or call +44(0) 845 300 60 90+44(0) 845 366 60 35

Employers' questions

Contact Corporate Enquiries
Visit our website for employers or Email us



Get a prospectus

Download or
order