Centrale Lille Course Catalogue

Object Oriented Programming & BdD & Information Systems

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) : LA1_A_IF_MIN_POO1 - Programmation orientée objet

Education team

Teachers : Madam ISABELLE LE GLAZ
External contributors (business, research, secondary education): various temporary teachers

Summary

This course aims to consolidate the knowledge around the object-oriented programming (OOP) paradigm acquired in the second year. This course is based on an object language (Java or other). The main objective of this course is to develop a client/server application with a graphical interface on the client side, and a connection to a database on the server side. In addition, this course also allows students to work on OOP concepts (encapsulation, inheritance, polymorphism, modularity), as well as data structures and algorithms. We also focus in this course on developing quality code: correct indentation, compliance with Java conventions in class names, attributes, methods and variables, relevant comments, unit tests as development progresses. The summary content of the course is as follows: ? Data structures and sorting; ? Database queries; ? Creation of a graphical interface using dedicated APIs; ? Algorithmic; ? Concurrent programming, light processes (threads); ? Network programming (socket).

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); - define a data model in an object language from a relational model from a database; - perform queries on a database from an application developed in an object language; - develop a graphical interface containing lists, buttons, tables, trees with an object language; - use the principle of exception management of the language used; - implement an algorithm in an object-oriented program; - use Java objects that allow you to create a program containing light processes and network programming. Contribution of the course to the competency framework; at the end of the course, the student will have progressed in: - designing a system; - developping a system; - setting up test protocols; - making and executing test sets; - producing 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) ; - exception processing ; - queries on a database; - advanced use of elements to create a graphical interface; - algorithmic; - concurrent programming; - object flow. - Skills developed: - good development practices in object-oriented programming; - performing unit tests; - making clean code; - commenting code; - designing a program in an object-oriented programming language; - Developping a graphical interface that allows interaction with the database.

Sustainable development goals

Knowledge control procedures

Continuous Assessment / Fixed Exam
Comments: problem-based project defence and supervised duty

Online resources

Every documents on Moodle

Pedagogy

The module begins with three 4-hour sessions in half group, in the form of an problem-basedrequiring the implementation of the key elements of the knowledge worked on. Then, a directed session allows each group to present their achievements. This presentation is the subject of a continuous monitoring note. The following sessions consist of classroom/CT sessions to scan points that have not been discovered in the problem-based project, or not deep enough, in the form of a directed work.

Sequencing / learning methods

Number of hours - Lectures : 0
Number of hours - Tutorial : 0
Number of hours - Practical work : 36
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 how to make SQL queries on a database. - Knowing what a thread and a socket are.

Maximum number of registrants

Remarks