To introduce data structures and advanced programming language features within the context of a high-level programming language (Java). To demonstrate principles, provide indicative examples, develop problem-solving abilities and provide students with experience and confidence in the use of advanced features to implement algorithms in a contemporary software setting.
A. Demonstrate a familiarity with data structures and advanced programming concepts within Java. B. Construct software artefacts utilising advanced programming concepts within Java C. Develop complex elements, such as user interfaces, multiprocessing, and fault tolerant components.
Students will be expected to attend two hours of formal lectures as well as to participate in supervised practicals in a computer lab in a typical week. Lectures will introduce students to the academic content and practical skills which are the subject of the module, while computer practicals will allow students to practice those skills. In addition, students will be expected to devote approximately six hours of unsupervised time to solving continuous assessment tasks and private study. Private study will provide time for reflection and consideration of lecture material and background reading. Continuous assessment will be used to test to what extent practical skills have been learnt.