COMP1681 / SE15 Introduction to Programming Lecture 1 Welcome Today’s Learning Objectives Meet those involved Understand the module objectives Learn how SE15 will be delivered and assessed Understand why programming is important SE15: Welcome 1–2 Lecture Outline Introductions Motivation Questionnaire Module information SE15: Welcome 1–3 Staff Brandon Bennett (Room 9.16) Andy Bulpitt (Room 7.19) Ruth Evans (Room 9.10m) Nick Efford (Room 9.11d) (Fast track) Undergraduate Demonstrators Postgraduate Markers SE15: Welcome 1–4 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: Welcome 1–5 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: Welcome 1–6 Your Future Career An understanding of programming is vital in a range of IT-related professions… IT Manager Programmer Professional IT User SE15: Welcome 1–7 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: Welcome 1–8 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: Welcome 1–9 What Can I Do With Java? SE15: Welcome 1–10 Questionnaire SE15: Welcome 1–11 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: Welcome 1–12 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: Welcome 1–13 Timetable Wednesday Thursday Thursday Friday Friday Friday 11:00-12:00 14:00-15:00 15:00-16:00 10:00-11:00 12:00-13:00 13:00-14:00 SE15: Welcome Lecture Lab Lab Lecture Lab Lab LT21 DEC10 DEC10 LT20 DEC10 DEC10 1–14 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: Welcome 1–15 Books Main recommendation Savitch W, Java: An Introduction to Problem Solving & Programming (4th edition), Prentice Hall, 2005 Available bundled with a reference book (£5 discount) Alternatives Horstmann C, Big Java (2nd edition), Wiley, 2005 Jenkins T & Hardman G, How to Program in Java, Palgrave, 2005 Covers some advanced topics For those who are finding it difficult Sierra K. & Bates B, Head first Java (2nd edition), O’Reilly, 2005 For those who are finding it very difficult SE15: Welcome 1–16 Sources of Help & Information Module web site: www.comp.leeds.ac.uk/se15 Lecture slides Weekly exercises Assignments Links to useful resources News local.modules.se15 local.modules.se15.talk Lab sessions (DEC-10) SE15: Welcome 1–17 Summary Programming is Important Why and how we plan to help you learn Java SE15: Welcome 1–18 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. SE15: Welcome 1–19