CS2PJ20NU-Programming in Java
Module Provider: Computer Science
Number of credits: 20 [10 ECTS credits]
Level:5
Semesters in which taught: Semester 1 / 2 module
Pre-requisites: CS1PC20NU Programming in C/C++
Non-modular pre-requisites:
Co-requisites:
Modules excluded:
Current from: 2023/4
Module Convenor: Prof Richard Mitchell
Email: r.j.mitchell@reading.ac.uk
NUIST Module Lead: Wenwen Liu
Email: w.liu@nuist.edu.cn
Type of module:
Summary module description:
This module introduces to students the fundamentals of programming using Java and its usage in developing real world applications. It will be delivered in two parts and will comprise of in-person lectures and practical sessions to provide students with hands-on experience of writing Java programs using integrated development environment tools. The first part will focus on the syntax, semantics and idioms of Java programming language and in the second part focus will be on introducing concepts of Android programming using Java.
Aims:
This module will make students able to write their own Java programs, understand, debug, analyse and improve prewritten java programs. It will equip students with the skills needed to make web and android applications using Java. Also, the students will get encouraged to develop a set of professional skills like efficient approach for problem solving, software design and development, creativity, technical report writing and working in team
Assessable learning outcomes:
On completion of this module, students will be able to
- Implement object-oriented designs with Java.
- Identify Java language components and how they work together in applications.
- Design, program and debug Java applications
- Extend Java classes with inheritance and dynamic binding
- Use the Java Collections API and generates API documentation for their own application
- Understand how the various components of an Android app work
- Develop deployable android apps
Additional outcomes:
Students will have a more logical approach towards solving a programming problem. They will be able to understand and learn semantics of any new programming languages easily. They will learn how to improve the efficiency of applications by exploiting the advanced features of Integrated Development Environments. They will understand the benefits of team work and learn to present their work in professional way.
Outline content:
- Introduction to Java Programming
- Object Oriented Programming in Java using classes
- Structure of the Java Language
- Developing GUIs (Widgets, Event driven Programming)
- Storing and Retrieving Data with File I/O
- Working with Databases (JDBC, MySQL)
- Java development tools (JDK, JAR, IDEs)
- Android app development
Brief description of teaching and learning methods:
The module is delivered in two semesters and will include both in-person classes of weekly one-hour and weekly two hours practical sessions. Lab sessions will be in the form of programming exercises and assessed coursework. Students will incrementally develop software applications by extending example code to reinforce most of the topics presented in the lectures. The summative assessment will include two pieces of written coursework.
Semester 1 | Semester 2 | |
Lectures | 10 | 10 |
Practicals classes and workshops | 20 | 20 |
Guided independent study: | ||
Wider reading (independent) | 10 | 10 |
Wider reading (directed) | 10 | 10 |
Exam revision/preparation | 10 | 10 |
Advance preparation for classes | 10 | 10 |
Preparation for presentations | 5 | 5 |
Completion of formative assessment tasks | 10 | 10 |
Dissertation writing | 5 | 5 |
Reflection | 10 | 10 |
Total hours by term | 100 | 100 |
Total hours for module | 200 |
Method | Percentage |
Set exercise | 100 |
Summative assessment- Examinations:
Summative assessment- Coursework and in-class tests:
The coursework comprises:
- One Java based web application (50%) in Semester 1
- One Android app (50%) in Semester 2
Formative assessment methods:
Weekly group-based exercises which students need to solve and submit the solution before the next practical session, providing opportunities for feedback.
Penalties for late submission:
The Support Centres will apply the following penalties for work submitted late:
- where the piece of work is submitted after the original deadline (or any formally agreed extension to the deadline): 10% of the total marks available for that piece of work will be deducted from the mark for each working day (or part thereof) following the deadline up to a total of five working days;
- where the piece of work is submitted more than five working days after the original deadline (or any formally agreed extension to the deadline): a mark of zero will be recorded.
You are strongly advised to ensure that coursework is submitted by the relevant deadline. You should note that it is advisable to submit work in an unfinished state rather than to fail to submit any work.
Assessment requirements for a pass:
A mark of 40% overall.
Reassessment arrangements:
One 3-hour examination paper in the NUIST resit period. Note that the resit module mark will be the higher of (a) the mark from this resit exam and (b) an average of this resit exam mark and previous coursework marks, weighted as per the first attempt (30% exam, 70% coursework).
Additional Costs (specified where applicable):
1) Required text books:
2) Specialist equipment or materials:
3) Specialist clothing, footwear or headgear:
4) Printing and binding:
5) Computers and devices with a particular specification:
6) Travel, accommodation and subsistence:
Last updated: 7 August 2023
THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.