COM160 Programming for Engineers
Summary |
The first part of this module introduces basic concepts
of computer programming, through an introduction to problem
solving and the development of simple algorithms using the
programming language Python. The module will stress the
importance of good programming style and good code design
and will introduce how an object-oriented approach can help
to achieve these aims.
The second part of this module introduces some of the
fundamental principles of object oriented programming and
software engineering using the Java Programming Language. It introduces models of real-world systems. Techniques for developing sound programming techniques are introduced and applied. |
Session |
Academic Year 2025/26 |
Credits |
20 |
Assessment |
- Blackboard quizzes and assessed labs
- Multiple choice exam (at the end of the Semester 1)
- Assignment (during Semester 2).
|
Lecturer(s) |
Dr Mark Hepple & Dr Siobhán North |
Resources |
|
Aims |
- to provide an introduction to the concepts of problem
solving and developing algorithms;
- to provide a grounding in the principles of
programming, using the Python and Java languages;
- to establish good programming style;
- to introduce the main features of object-oriented
programming;
- to develop the ability to write Java programs to solve problems as well as reuse existing classes;
- to introduce some features of the Java Application
Programmers Interface;
- to develop good programming practice particularly
with respect to reuse.
|
Learning Outcomes |
By the end of the module the student will be able to:
- express algorithms using sequencing,
conditional and iterative constructs.
- use basic data structures and produce
programs employing them;
- design, implement and test programs in
Python and Java;
- demonstrate an object oriented
approach to software development.
|
Content |
- introduction to algorithms and problem-solving;
- introduction to imperative programming in Python;
- control structures: conditionals, loops, functions;
- data structures: arrays/lists, dictionaries;
- introduction to object-oriented programming in Python
and Java;
- software development within an object-oriented
framework;
- the Java Collections Framework and its use.
|
Restrictions
|
Not open to students from the School of Computer
Science or students who are taking or have taken COM219. |
Teaching Method |
1 lecture per week and 2 hours of supervised practical
work per week, involving programming exercises in Python and
Java;
Students are also expected to work in their own time. |
Feedback |
Within three working days of Blackboard quizzes otherwise within the usual
time limit of 3 working weeks. |
|