CSC8404 : Advanced Programming in Java
- Offered for Year: 2024/25
- Module Leader(s): Dr Fedor Shmarov
- Lecturer: Dr Ellis Solaiman
- Owning School: Computing
- Teaching Location: Newcastle City Campus
Semesters
Your programme is made up of credits, the total differs on programme to programme.
Semester 1 Credit Value: | 10 |
ECTS Credits: | 5.0 |
European Credit Transfer System |
Aims
The module aims to develop advanced skills in object-oriented design and in the practical use of Java.
It covers various aspects of sound object-oriented design and practice in Java, using practical exercises to illustrate design principles. It gives an introduction to frequently used libraries and contemporary software development tools to aid the programmer in the building and testing applications.
Outline Of Syllabus
1. The Java Object Model
2. Programming for low coupling and implementation independence including interface-based hierarchies, object factories and composition.
3. Safer programming - information hiding, defensive copying and immutability
4. Introduction to distributed programming with Java RMI
5. Java Software Development Tools including an IDE and the JUnit test framework.
Teaching Methods
Teaching Activities
Category | Activity | Number | Length | Student Hours | Comment |
---|---|---|---|---|---|
Scheduled Learning And Teaching Activities | Lecture | 3 | 1:00 | 3:00 | Guest Talk (PiP) |
Structured Guided Learning | Lecture materials | 12 | 1:00 | 12:00 | Recorded videos of learning materials introducing concepts and introducing practical work. |
Scheduled Learning And Teaching Activities | Practical | 11 | 2:00 | 22:00 | Practicals (9 x 2 hour practical sessions in the lab (PiP)). |
Guided Independent Study | Skills practice | 2 | 2:00 | 4:00 | 2 x quizzes with feedback on student understanding of essential concepts. Formative exercise |
Guided Independent Study | Project work | 15 | 2:00 | 30:00 | coursework |
Guided Independent Study | Independent study | 13 | 2:00 | 26:00 | Background reading |
Scheduled Learning And Teaching Activities | Scheduled on-line contact time | 3 | 1:00 | 3:00 | Online synchronous discussions. |
Total | 100:00 |
Teaching Rationale And Relationship
Video recordings and lectures will be used to introduce the learning material and for demonstrating the key concepts by example. Synchronous online lecture sessions will be used to discuss learning materials and for Q&A. Students are expected to follow-up lectures within a few days by re-reading and annotating lecture notes to aid deep learning.
This is a very practical subject, and it is important that the learning materials are supported by hands-on opportunities provided by lab practical classes. Students are expected to spend time on coursework outside timetabled practical classes.
Students aiming for 1st class marks are expected to widen their knowledge beyond the content of lecture notes through background reading.
Assessment Methods
The format of resits will be determined by the Board of Examiners
Other Assessment
Description | Semester | When Set | Percentage | Comment |
---|---|---|---|---|
Practical/lab report | 1 | M | 100 | 1 programming exercise |
Formative Assessments
Formative Assessment is an assessment which develops your skills in being assessed, allows for you to receive feedback, and prepares you for being assessed. However, it does not count to your final mark.
Description | Semester | When Set | Comment |
---|---|---|---|
Computer assessment | 1 | M | 2 x quizzes with feedback on student understanding of essential concepts. |
Assessment Rationale And Relationship
The coursework weighting (100%) reflects the importance of practical aspects of this module.
Reading Lists
Timetable
- Timetable Website: www.ncl.ac.uk/timetable/
- CSC8404's Timetable