IP4608E - Object oriented programming
Objectives
General objective:
At the end of the course of Object Oriented Design, the student will be able to:
- conduct a object oriented analysis
- use the UML formalism to describe the main views of its system (using class and sequence diagrams)
- understand a Java specification based on a set of UML diagrams in order to implement it in Java
- produce class and sequence diagrams based on a textual specification , that he/she will then be able to exploit in order to produce code
...
At the end of the course of Object Oriented Programming, the student will be able to:
- use all the concepts of object programming in Java,
- use an integrated development environment (IDE),
- use the main Java APIs,
- use the event management mechanisms,
- use a software bus (Ivy) to implement dispatching in a Java application.
Detailed objectives:
Object Oriented Design:
Know how to conduct an object-oriented design
- static models
- dynamic models
Know how to justify and document the design
- know how to make simple rational design choices
- know how to discuss and document these choices
Understand the difference between analysis and object design
- analysis: understanding of domain concepts
Object Oriented Programming:
- Compare procedural/functional approaches (1) -define a function for each operation whose body provides a case for each data variant- and object-oriented approaches (2) -define a class for each data variant and provide a method for each operation. Explain them by defining a matrix of operations and variants.
- Use subclassing to design a hierarchy of simple classes to share code in intermediate level classes.
- Use various encapsulation mechanisms such as interfaces, closures and support for abstract data types, in Java.
- Define and use iterators and other operations on aggregates using common idioms in Java, including taking anonymous classes or functions as arguments.
- Use contract programming, and define preconditions and postconditions for each method.
Hours
- Lecture : 9h
- Supervised Practical Work : 9h
- Labs work : 10h
Form of assessment
Total assessment hours: 2
In brief
ECTS credits : cf Teaching Unit
Number of hours 30
Contact(s)
Places
- Toulouse