Les fondements Introduction au langage Les opérateurs Conversions de type Les instructions du C++ Les types composés Accès mémoire Allocation dynamique
Programmation structurée Les fonctions Fonctions mathématiques Gestion de projet, portée des variables Outils de compilation
Programmation Objet P.O.O. Construction et destruction des objets Composition - Agrégation Membres de classes Redéfinition opérateurs Comportement par défaut Templates - Fonctions et Classes Standard Template Library
Héritage et Polymorphisme Modélisation de l'héritage Héritage simple Polymorphisme Classes abstraites Les flux et les fichiers La gestion d'exception Conteneurs, Algorithmes, Foncteurs et Lambdas Les threads
Librairie Qt - Utilisation de QtCreator Installation complète de QtCreator QtCreator avec les Widgets Services Web de type REST WebSocket au travers de QT Cryptage avec OpenSSL par WebSocketQtQuick - QML avec le C++ QtQuick - Communication réseau QtQuick - Timer - Capteurs - Courbes - Graphes QtQuick - Géolocalisation - Navigation QtQuick - Multimédia OpenCV avec la librairie Qt TP avec OpenCV uniquement Service video : Raspberry - PC
Développements spécifiques Le modèle MVC Les bases de données Installation et utilisation de MySQL Structure d'un QR-Code Compilation croisée sur Raspberry GPIO pour Raspberry et pcDuino Afficheur AM-03127-LED Afficheur Pimoroni sur Raspberry Le robot AlphaBot Développement sur pcDuino Barrière NetPark Communication Robot par Bluetooth
Travaux pratiques : Widgets - QML Bienvenue - Widget Conversion monétaire - QML Calcul de mensualité - Console, Widgets, QML Enregistrer rendez-vous : Widgets + BDD Enregistrer rendez-vous : QML + BDD Génération de QrCode - Widgets Tracé de signaux : harmoniques - QML Placement des différentes vues : Stack - Drawer - QML Gestion de classes : Swipe - Drawer - QML
Travaux pratiques : Réseaux Widgets QML Service d'affichage (bandeau défilant) par socket - Widget Service d'affichage par socket - QML Service d'affichage par Websocket - QML Service monétaire : Websocket JSON Cryptage Service de gestion de notes : Websocket JSON QML Service de géolocalisation : Cartographie Service Chat : WebSocket JSON Widgets Service Chat : WebSocket JSON QML Service Chat : WebSocket JSON SSL Widgets
Langage Rust Introduction au langage Rust Posséder, léguer et emprunter Expressions et structures de contrôle Les fonctions dans Rust Les structures dans Rust Les énumération et les motifs de sélection Les caisses et les modules La gestion des erreurs Les génériques et les traits Les clôtures - les fonctions anonymes Les itérateurs
Langage Rust Avancé Les collections Les chaînes et les textes Les entrées sorties La concurrence et les exétrons Les macros Gestion de base de données - requêtes SQL Réseau : Sockets - JSON - Cryptage Services Web REST Interface Home Machine OpenCV dans Rust Interopérabilité : Rust Python C++ QML et Android
Projets en Rust Gestion de comptes à distance Gestion de ressources à distance Fusion libariries GTK et OpenCV Expérience de codage sur les divisions entières
Fondement du langage Python Introduction au langage Les opérateurs et les instructions Les types composés Les fonctions Programmation Objet GUI - Interface graphique tkinter tkinter - quelques exemples
Développements spécifiques en python Développement pour Raspberry (GPIO) Communication en réseau Afficheur Pimoroni 16x3 sur Raspberry Afficheur AM-03127-LED
Langage HTML Internet et le Web Introduction au HTML Les listes dans le HTML Les images sur le Web Les liens entre les pages HTML 5 - CSS 3
Langage UML Programmation Orienté Objet Présentation UML Diagramme de Cas d'utilisation TP - Cas d'utilisation Diagramme de classes Diagramme d'objets Diagramme de séquence Diagramme d'états-transitions Diagramme des composants Diagramme de déploiement Diagramme de paquetage Diagramme d'activités
Les fondements Généralités - Possibilités de Java Introduction au langage Premiers programmes Les bases de Java Les classes et les objets Les chaînes et les tableaux Héritage (modélisation) Héritage (codage Java) Object-final-abstraite Fonctionnalités intéressantes
IHM - AWT Les événements Gestion de mise en forme Graphisme 2D Traitement des images Impression Presse-Papiers Déplacer et lâcher (Drag and Drop)
IHM - Swing Introduction à Swing et AWT Fenêtre et cadre de fenêtre Saisie et édition Sélection et choix Présentation et conteneurs Les menus et les actions Les boîtes de dialogue Arbres et tableaux
IHM - JavaFX Introduction - Concepts de base Compléments de programmation Architecture - Concepts techniques Conteneurs - Disposition des composants Composants de base Architecture MVC FXML - SceneBuilder Menus - Choix/Sélection Panneaux spécialisés Boîtes de dialogue Graphisme 2D - Shapes, Canvas, Charts Développement avec JavaFX
Conception des interfaces Introduction - Concepts généraux Utilisabilité - Ergonomie logicielle Critères ergonomiques Conception orientée utilisateur Agencement de l'interface - disposition des éléments Composants de l'interface - Éléments d'interaction
Les petits plus Paquetages et Chemin de classes Javadoc - commentaires Fichier d'archive Java - JAR Fichier de configuration La reflexion Formater nombres et dates Travaux sur les textes Les annotations
Programmation avancée Les interfaces Classes interne et anonyme Enumération Généricité Tableaux et collections Les Exceptions Les flux et les fichiers La gestion des fichiers La consignation Les Threads Java et XML - JAXB
Programmation réseau Les Applets Connexions par Sockets Pages Web dynamiques Les Servlets Applet <---> Servlet JDBC et SQL Les objets distants - RMI Java Web Start Les bases de données
Java EE - Servlet - JSP - JSF Introduction Descripteur de déploiement Servlets - techn. avancées Les pages JSP Modèle-Vue-Contrôleur JSP - techniques avancées Exemples de synthèse JSF 2.0 - JavaServer Faces JSF 2.0 - Techniques avancées
Java EE - EJB Les Beans Session La persistance (les entités) Object-Relational Mapping Gestion des objets persistants Messages, JavaMail, Timers Service Web SOAP Service Web REST Les WebSockets TPs avec Java EE 6
Informatique embarquée Robot MindStorms NXT 2.0 Android - les bases Android - Approfondissement Android - Fin Android - Traveaux pratiques