~~SLIDESHOW~~
Aims
To examine the use of the Java platform for the development of client-server and enterprise computing applications.
Learning Outcomes
After completing this module you will be able to:
describe the correct use of objects, classes, interfaces, exceptions, and collections.
describe the major infrastructure features of an enterprise application, the java APIs that give access to these and the typical architectures used in enterprise application development.
identify and describe common software design patterns used in the implementation of enterprise architectures
design and implement an enterprise computing application with a web interface using the Grails framework.
Module Content: Lectures
The keys to object-oriented programming on the Java platform: objects and methods, collection classes, closures, composition & inheritance, polymorphism, interfaces, threaded execution, exception handling, components and properties, unit testing.
Enterprise infrastructure: TCP/IP and sockets; RMI; Web and HTTP; SQL and RDBMS. An introduction to the Java APIs to support these: sockets; RMI; Servlets and JSP; JDBC.
Software design patterns and system architecture. The three-tier enterprise architecture: presentation tier and web presentation, business tier and enterprise integration tier. The web container and enterprise java bean container.
Module Content: Case Studies
The development of an Adventure game:
Using collection classes.
Using methods, simple IO and closures.
Using objects.
Using classes and unit testing.
Background for the project.
Module Content: Labs
First-hand experience of
Basic building blocks: objects, numbers and expressions; strings and regular expressions.
Collection classes: lists, maps and ranges.
Methods and flow of control.
Closures and files.
Classes, inheritance and polymorphism.
Unit testing.
Assessment – % completed lab work.
Module Content: Seminar
Lifting the lid on Grails.
The architecture of Grails
Domain classes, controllers and views
Application services and plugins
Web Services
Assessment – group mark
Module Content: Mini Project
The software development process: test-driven development, agile methods, continuous integration.
Case-study using the Grails framework.
Assessment – group work.
Assessment 100% CA
Part 1: 20%: Assesses Learning Outcome 1.
Part 2: 40% Assesses Learning Outcome 2 and 3.
Part 3: 40%: Assesses Learning Outcome 4.
All work will be completed within the two weeks of the module and submitted by 5.00 pm Friday, 8th May.
Reading
Recommended Reading:
K. Barclay and J. Savage,
Groovy Programming, Morgan Kauffman, 2007. On Amazon.co.uk at
http://bit.ly/qrUJY.
G. Rocher and J. Brown,
The Definitive Guide to Grails, 2nd. Ed., Apress, 2009. On Amazon.co.uk at
http://bit.ly/OkJsl.
See also reading list.
Software
More Software