Course label : | Object-Oriented Programming & BdD & Information Systems |
---|---|
Teaching departement : | MIN / Applied Mathematics and General Computing |
Teaching manager : | Madam ISABELLE LE GLAZ |
Education language : | French |
Potential ects : | 0 |
Results grid : | |
Code and label (hp) : | LA2_A_IF_MIN_POO - Programmation orientée objet |
Education team
Teachers : Madam ISABELLE LE GLAZ
External contributors (business, research, secondary education): various temporary teachers
Summary
This course consists of 60 hours of TD Object Oriented Programming. This course aims to bring new knowledge about object-oriented development. The objective is to be able to develop high-performance applications, in terms of data persistence and algorithms, to respond to complex industrial problems. Regarding data persistence, we will see how to implement object-relational mapping to achieve data persistence with a database. This will also be an opportunity to focus on the use of some design patterns. Finally, we will see different algorithmic tools that effectively solve complex industrial problems (in the sense that the solution is not easy to find), and on large instances (in the sense that there is a lot of data). This course is based on an object language (Java or uatre) and on PL/SQL (under Oracle or Mysql) The summary content of the course is as follows: - Server-side database coding (SQL and PL/SQL, Trigger, procedures and functions) - relational object mapping; - design patterns (singleton, DAO, factory) ; - constructive methods to solve a problem; - local search methods ; - metaheuristic methods ; - exact approaches based on linear programming.
Educational goals
At the end of the course, the student will be able to: - develop a program according to the object-oriented programming paradigm; - know good development practices in object-oriented programming; - choose and use the right data structures (list, set, associative table); - Propose a data model in an object language from a relational model from a database; - Propose a database from an object model; - perform queries on a database through relational object mapping; - know what a design pattern is, and use some of them; - know effective algorithmic methods to solve an optimization problem; - develop a high-performance information system in object-oriented language: performance is linked to the ability to effectively solve a complex problem. - Develop a web application based on an object language, with access/creation to a database. Contribution of the course to the competency framework; at the end of the course, the student will have progressed in: - design a system; - to realize, develop a system; - set up test protocols; - make and execute test sets; - produce technical project documentation. Working knowledge: - vocabulary of object-oriented programming; - good development practices in object-oriented programming; - implementation of data structures (list, set, associative table) ; - object-relational mapping ; - effective methods to solve an optimization problem; - design patterns. - SQL language, Server-side development (PL/SQL) Skills developed: - good development practices in object-oriented programming; - perform unit tests; - make clean code; - comment on your code; - design a program in an object-oriented programming language; - develop an efficient algorithm. - Evaluate the relevance of competing solutions according to situations
Sustainable development goals
Knowledge control procedures
Continuous Assessment / Fixed Exam
Comments: Continuous control: 3 controls throughout the module + 1 final defense on mini-project
Online resources
All subjects on Moodle platform
Pedagogy
Directed works + pratical works small project
Sequencing / learning methods
Number of hours - Lectures : | 0 |
---|---|
Number of hours - Tutorial : | 0 |
Number of hours - Practical work : | 24 |
Number of hours - Seminar : | 0 |
Number of hours - Half-group seminar : | 0 |
Number of student hours in TEA (Autonomous learning) : | 0 |
Number of student hours in TNE (Non-supervised activities) : | 0 |
Number of hours in CB (Fixed exams) : | 0 |
Number of student hours in PER (Personal work) : | 0 |
Number of hours - Projects : | 0 |
Prerequisites
- Algorithmic notions. - Knowing the basic data structures (table, chained list, set). - Knowing how to develop a program in object-oriented programming. - Understanding a UML class diagram. - Knowing the architecture of a DBMS server and its clients - Knowing how to make SQL queries on a database. - Knowing how to develop in object language