SE15: Welcome1–51–5 Why is Programming Important? It is central to all computing degree programmes It is required for success in all (except the most tedious and low-paid) IT-related careers Developing your programming skills will enhance your general ability to tackle and solve problems
SE15: Welcome1–61–6 Programming: The Heart of Computing All spheres of computing are related to programming The computer systems we use everyday depend upon the interactions of hundreds of programs During your degree, you will study Theoretical principles upon which programming is based: algorithms and data structures Applications based on particular kinds of programs: databases, graphics engines networking, etc Surrounding context: how programs are developed and how people interact with them
SE15: Welcome1–71–7 Your Future Career An understanding of programming is vital in a range of IT-related professions… IT Manager ProgrammerProfessional IT User
SE15: Welcome1–81–8 Transferable Skills Associated With Programming Problem analysis Systematic planning and execution of a solution Minimising the likelihood of mistakes Detecting and dealing with unforeseen problems Evaluating the quality of a solution
SE15: Welcome1–91–9 Why Learn Java? Object orientation Rich class library to support teaching Networking & web-based systems Graphics and image processing Databases Security… Portability Source code Compiled programs
SE15: Welcome1–10 What Can I Do With Java?
SE15: Welcome1–11 Questionnaire
SE15: Welcome1–12 Module Objectives Analyse a problem, understand its procedural aspects and render the solution as pseudocode; Apply object-oriented thinking to the analysis of a simple problem and the design of potential solutions; Write small programs from scratch with a good coding style, documented properly by means of sensible identifier names and source code comments; Understand, test, debug and modify existing programs written in a high-level object-oriented programming language; Implement and test classes, and write programs that use instances of these classes to solve problems; Demonstrate awareness of other programming paradigms.
SE15: Welcome1–13 The Plan SE15 runs over Semester 1 and Semester 2 Lectures 2 lectures a week: everyone is expected to attend Introduce new concepts Provide examples Discuss solutions to exercises and assignments Labs 4 sessions a week: everyone is expected to attend at least one session Opportunity to seek help from friends, helpers and staff Marking of exercises and assignments
SE15: Welcome1–15 Exercises, Assignments & Assessment Lab exercises One exercise will be set each week Related to lecture material for that week Must be submitted electronically by Monday 9am Formative assignments Two assignments this semester, Week 4 & Week 9 May be completed in pairs Marked in lab sessions, Week 6 & Week 11 Summative assessment End of Semester 2 One paper consisting of both lab-based exercises + written components
SE15: Welcome1–16 Books Main recommendation Savitch W, Java: An Introduction to Problem Solving & Programming (4 th edition), Prentice Hall, 2005 Available bundled with a reference book (£5 discount) Alternatives Horstmann C, Big Java (2 nd edition), Wiley, 2005 Covers some advanced topics Jenkins T & Hardman G, How to Program in Java, Palgrave, 2005 For those who are finding it difficult Sierra K. & Bates B, Head first Java (2 nd edition), OReilly, 2005 For those who are finding it very difficult
SE15: Welcome1–17 Sources of Help & Information Module web site: Lecture slides Weekly exercises Assignments Links to useful resources News local.modules.se15 local.modules.se15.talk Lab sessions (DEC-10)
SE15: Welcome1–18 Summary Programming is Important Why and how we plan to help you learn Java
SE15: Welcome1–19 Follow-up Work Take a look at the SE15 website Resolve any remaining timetable clashes for lectures of Lab Sessions Start work on Exercise 1, submit it by Monday 9am.