tar xvzf fonctions__chasseErreurs.tar.gz
)La programmation orientée objet (POO) est un paradigme de programmation, c'est-à-dire un ensemble de concepts et de modèles utilisés pour programmer avec des objets. De nombreux langages de programmation sont orientés objets, par exemple : Ada, C++, C#, Eiffel, Java, JavaScript, Objective C, PHP, Python, Ruby, Smalltalk, VB.NET.
Une classe est une structure de données qui contient des données (attributs) et des comportements (méthodes), qui sont les actions possibles sur cet objet. Les données sont toujours des noms, tandis que les comportements sont toujours des verbes. Chaque classe est une brique logicielle. On peut créer un (ou plusieurs) objet qui est une instance unique d'une classe avec ses valeurs propres.
Par exemple la classe "Cake" décrit un gâteau, avec comme donnée son parfum (l'attribut "flavour") et comme méthode "cut_in_parts" (le couper en parts). On a 2 instances de cette classe : 2 objets, un gâteau dont le parfum est "banane" et un gâteau dont le parfum est "chocolat".
Chatbot est un projet Python objet basé sur l'intelligence artificielle qui interagit avec les humains dans leur langage naturel. Ce projet Python vous aide à créer chatbots qui parlent à l'utilisateur et récupèrent des informations. Cette IA offre de nombreuses fonctionnalités telles que l'apprentissage, la mémoire, la gestion des conversations basées sur des sujets, etc.
Un simple jeu de Snake (le serpent qui grandit quand il mange un fruit et ne doit pas se manger lui-même.)
Une grosse application 100% Java permettant l'exploitation de données par des réseaux de neurones artificiels, des arbres de décision et des méta-apprentisseurs, avec représentations visuelles.
Le projet réalisé par les élèves, sous la conduite du professeur, constitue un apprentissage fondamental tant pour l’appropriation des concepts informatiques que pour l’acquisition de compétences. Il a essentiellement pour but d’imaginer des solutions répondant à un problème.
Le thème du projet est choisi par les élèves. Il peut s’agir d’un approfondissement théorique des concepts étudiés en commun, d’une application à d’autres disciplines telle qu’une simulation d’expérience, d’exploitation de modules liés à l’intelligence artificielle et en particulier à l’apprentissage automatique, d’un travail sur des données socioéconomiques, du développement d’un logiciel de lexicographie, d’un projet autour d’un objet connecté ou d’un robot, de la conception d’une bibliothèque implémentant une structure de données complexe, d’un problème de traitement d’image ou de son, d’une application mobile, par exemple de réalité virtuelle ou augmentée, du développement d’un site Web associé à l’utilisation d’une base de données, de la réalisation d’un interpréteur d’un mini-langage, de la recherche d’itinéraire sur une carte (algorithme A*), d’un programme de jeu de stratégie, etc.
Jeu mono-joueur développé en Python objet et avec la bibliothèque graphique PyGame. Il faut déplacer le personnage sur une carte et éviter les obstacles.
Organisation : avec Notion
Un mini jeu de type "Où est Charlie ?", mais la spécificité c'est que le décor est généré aléatoirement avec une IA intégrée sur le site. Développé en Python objet avec la librairie graphique PyGame.
Organisation : avec Notion
Ce projet a pour but de divertir en créant un programme en Python objet qui permet de réaliser une carte de l’Europe. Ensuite, avec cette carte un drapeau va apparaître à l’écran et l’utilisateur aura un temps défini pour trouver l’endroit où se trouve le pays sur la carte. Il y aura également un compteur de points qui augmente au fur et à mesure que les résultats sont corrects. Avec base de données MySQL.
Organisation : avec Notion ?
Créer un jeu qui va mettre en scène des personnages célèbres de l’internet, plus spécifiquement de Twitter/X. Le jeu est du 1v1 tour par tour en simultané entre 1 boss avec un level différent au fur et a mesure. Le jeu a pour gameplay de recopier une des phrases sorties aléatoirement de la base de donnée le plus rapidement possible, et suivant la longueur des phrases et le temps utilisé pour les faires, le jeu va rapporter un nombre de points en conséquence et le but est de gagner le plus de round. Les phrases seront utilisées comme des attaques dans des jeux tels que pokémon par exemple.En Python objet avec base de données MySQL.
Organisation : avec Notion
Une interface graphique en Python objet pour modéliser des planètes, avec la librairie graphique matplotlib. Chaque planète posséderait des attributs et serait représentée en mouvement sur l'interface. Avec base de données MySQL.
Organisation : avec Google Drive
QUESTION : Que va afficher ce programme ?
(Code source : 2_types_recursif.py")
RÉPONSE :
Toi aussi comprends la récursivité avec Kevin : execute Kevin.py !!!
Lors de l'écriture d'une fonction récursive, 3 règles doivent toujours être vérifiées :
Voici les points du programme traités dans cette séquence :
Contenus | Capacités attendues | Commentaires |
---|---|---|
Structures de données, interface et implémentation. |
|
L’abstraction des structures de données est introduite après plusieurs implémentations d’une structure simple comme la file (avec un tableau ou avec deux piles) |
Listes, piles, files : structures linéaires. Dictionnaires, index et clé. |
|
On distingue les modes FIFO (first in first out) et LIFO (last in first out) des piles et des files. |
L'exercice consiste à implanter une liste chaînée à partir de son interface.
Voici l'interface de la classe Chainon : interface_chainon.py et l'interface de la classe Liste : interface_liste.py.
Voici le diaporama : diapo_ListeChainee.pdf
Voici des tests unitaires pour tester le bon fonctionnement la classe Chainon : test_chainon.py et de la classe Liste : test_liste.py.
Pour vous aider, lisez les explications (Attention les explications ne sont pas en POO.)
( Une liste chaînée, c'est le même principe qu'un train : Exercice : classe Train qui relie des objets de types Wagon )
Voici la solution implantée : chainon.py et liste.py.