<aside> đź’ˇ
Quelles ont été vos démarches, prises de décisions, degré d'implication et d'autonomie ?
</aside>
Les TPs de R3.07 et R4.03 m’ont fait travailler la gestion des données sous plusieurs angles. D’une part, j’ai développé une application Java connectée à une base relationnelle modélisant des activités d’entreprise (clients, commandes, produits). D’autre part, j’ai contribué à Mongolingo, une application web basée sur MongoDB, conçue pour apprendre le NoSQL à travers des défis progressifs. Au fil des activités, j’ai dû interpréter les besoins, construire ou ajuster des structures de données cohérentes, puis choisir les outils les plus adaptés pour manipuler et interroger les informations. J’ai aussi participé à des choix d’architecture, en utilisant des patterns et technologies comme DAO, DTO et JPA/Hibernate afin de séparer correctement les responsabilités et de simplifier l’accès aux données. Ces travaux ont été réalisés avec une autonomie importante : je me suis appuyé sur le cadre pédagogique tout en cherchant des compléments lorsque certains points nécessitaient plus de compréhension.
<aside> đź’ˇ
Quelles ressources avez vous choisies et combinées pour réaliser vos tâches et résoudre les problèmes rencontrés dans ces TPs ?
</aside>
Je me suis principalement appuyé sur les supports de cours/TP des ressources concernées. Les documentations officielles (Java, SQL, Hibernate, MongoDB) ont également été essentielles pour approfondir des fonctionnalités ou clarifier des comportements. J’ai croisé des connaissances issues de plusieurs domaines : programmation orientée objet, modélisation relationnelle, utilisation d’un ORM avec Hibernate, et manipulation d’une base orientée documents avec MongoDB. Cette mise en perspective m’a aidé à comprendre les différences entre les modèles relationnels et NoSQL, ainsi que les situations où chacun est le plus pertinent.
<aside> đź’ˇ
En vous appuyant sur vos traces, justifiez la maitrise des apprentissages visés, ainsi que la prise en compte des composantes essentielles pour le développement de vos compétences.
</aside>
En R3.07, j’ai renforcé ma compréhension des modèles de données utilisés en entreprise. Concevoir et manipuler une base relationnelle autour des clients, produits et commandes m’a obligé à réfléchir à l’organisation des informations pour garantir cohérence et exploitabilité. L’usage d’Hibernate, associé à une architecture DAO/DTO, m’a également permis de mieux saisir les mécanismes d’accès aux données et leur intégration dans une application. Avec MongoDB et Mongolingo, j’ai découvert une approche différente. J’ai appris à structurer des collections selon les besoins de l’application, à manipuler des documents et à exploiter les possibilités offertes par un modèle non relationnel. Mettre en place des fonctionnalités comme la gestion des comptes, la sauvegarde de progression ou les classements m’a permis de concrétiser ces notions dans un contexte réel. Ces travaux ont aussi mis en évidence des enjeux de qualité et de sécurité : importance de l’intégrité des informations, contrôle des accès, et structuration des échanges entre couches applicatives. Enfin, le fait d’avoir travaillé sur des données relationnelles et non relationnelles m’a entraîné à traiter des données hétérogènes et à évaluer les avantages/limites de chaque solution en fonction du besoin.
<aside> đź’ˇ
Quelles ressources vous manquent pour atteindre la compétence abordée par ces TPs ? Si c'était à refaire que changeriez vous ?
</aside>
Ces TPs m’ont apporté une base solide, mais certains aspects pourraient aller plus loin, par exemple : bases distribuées, optimisation de performances à très grande échelle, et mécanismes avancés de sécurisation. Si c’était à refaire, je consacrerais plus de temps à la conception des modèles en amont afin d’anticiper des évolutions futures. J’aimerais aussi comparer plus systématiquement les performances et les compromis entre approches relationnelles et NoSQL selon différents scénarios d’usage.