1 object oriented programming computer systems engineering (d2) and programming (p)
TRANSCRIPT
![Page 1: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/1.jpg)
1
Object Oriented Programming
Computer Systems Engineering (D2)
and Programming (P)
![Page 2: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/2.jpg)
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
![Page 3: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/3.jpg)
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)
![Page 4: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/4.jpg)
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
![Page 5: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/5.jpg)
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
![Page 6: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/6.jpg)
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)
![Page 7: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/7.jpg)
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
![Page 8: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/8.jpg)
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
![Page 9: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/9.jpg)
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
![Page 10: 1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)](https://reader036.vdocuments.mx/reader036/viewer/2022070406/56649dde5503460f94ad7a73/html5/thumbnails/10.jpg)
10
Course Introduction
• What is Object Oriented Programming?