Date post: | 11-Jan-2016 |
Category: |
Documents |
Upload: | wilfred-payne |
View: | 212 times |
Download: | 0 times |
1
Object Oriented Programming
Computer Systems Engineering (D2)
and Programming (P)
2
Course Responsible and Contact Information
• Jerker Bengtsson– Office
• room F207 in the F-Building
– E-mail• [email protected]
– Course webpage• www2.hh.se/staff/jebe/oop2007/index.html
3
Course Objectives
• To provide knowledge in object oriented programming techniques
• To demonstrate how to improve software development with aspects on efficiency, maintainability, reusability.
• To improve programming skills through practical exercises and labs (using Java)
4
Course Planning
• Lectures– 14 lectures in total
• Exercises– 7 instructor assisted (1x2hrs/week) – all related to the lecture material
• Course examination– laboratorial exercises (mini programming project)– a written exam at the end
5
Course Litterature
• Book information– ”Object Oriented Software
Development in Java: Principles, patterns and framworks”, Xiaoping Jia, ISBN 0-321-21073-5
• Additional reading material posted on the course webpage
6
Laboratorial Exercises
• A mandatory programming project• The objective is
– to apply and practice OOP techniques– to practice working in ”small” teams– to practice solving a ”larger” programming problem
• Project will be graded (F,3,4 or 5)– weights 1/3 of the final grade
• To pass (grade 3), you must – Hand in your complete project according to spec.– Do a small presentation (groupwise)
7
Progression
• Progression from earlier courses– A first course in programming
• Primitive types, variables, program control structures, basic I/O, functions, classes etc.
– Algorithms & Data structures• recursion, efficient algorithms for searching & sorting etc,
abstract data types and structures like trees, lists etc.
– Low-level programming (Computer org.)• Register programming, memory management, implementing
hardware drivers, C- /assembly programming
8
Software Development
Requirements analysis
Design
Implementationand unit testing
Integration andsystem testing
Maintenance
In this course we relate mostly to these phases
In the Software engineering course
9
Software Development
• To be able to handle complex systems, we need good software models
• How?– decompose programs into many small ”modules”– use efficient techniques to put together large programs
• Why?– Modular programs are easier to
• understand, and design • implement, test and debug• develop by teams of engineers• maintain• reuse code
10
Course Introduction
• What is Object Oriented Programming?