image.png

image.png

🚀 Preuves R3.07 & Alternance

Titre : R3.07 - SQL dans un langage de programmation : Gestion et persistance des données

▶︎ Les apprentissages critiques

  1. AC24.01 | Optimiser les modèles de données de l’entreprise
  2. AC24.02 | Assurer la sécurité des données (intégrité et confidentialité)
  3. AC24.03 | Organiser la restitution de données à travers la programmation et la visualisation
  4. AC24.04 | Manipuler des données hétérogènes

▶︎ Analyse et réflexivité sur vos actions (à compléter max 1 page par question)

<aside> 💡 Quelles ont été vos démarches, prises de décisions, degré d'implication et d'autonomie dans la SAE et/ou dans le stage/alternance ?

</aside>

<aside> 💡 Quelles ressources avez vous choisies et combinées pour réaliser vos tâches et résoudre les problèmes rencontrés dans cette SAé ou dans le stage**/alternance** ?

</aside>

<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>

<aside> đź’ˇ

Quelles ressources vous manquent pour atteindre la compétence abordée par cette SAé ou ce stage**/alternance**  ? Si c'était à refaire que changeriez-vous ?

</aside>

R3.07 - SQL dans un langage de programmation : Gestion et persistance des données

📌 Démarches, prises de décisions, implication et autonomie

Dans cette matière, ma démarche a consisté à faire évoluer une application bancaire d'une gestion "bas niveau" vers une architecture industrialisée. Au début du projet, j'ai utilisé JDBC pour gérer manuellement les connexions et les requêtes. J'ai dû prendre des décisions importantes en matière de sécurité, comme l'utilisation de PreparedStatement pour prévenir les injections SQL et l'usage d'un fichier .env pour gérer les identifiants de connexion de manière autonome et sécurisée.

Par la suite, j'ai pris l'initiative de migrer vers JPA (Hibernate). Cette décision visait à mieux gérer la complexité en transformant le modèle relationnel en modèle objet. J'ai géré l'ensemble du cycle de vie des données, depuis la configuration de l'environnement sous Docker jusqu'à l'implémentation de la logique métier côté base de données avec des procédures stockées pour optimiser les virements bancaires (TP5).


📌 Ressources choisies et combinées

Pour mener à bien les différents TP, j'ai combiné plusieurs ressources académiques et techniques.

Tout d’abord, nous pouvons retrouver le supports de cours et TP (JDBC/JPA/DAO) indispensable pour comprendre les patrons de conception et le mapping objet-relationnel.

On retrouve ensuite la documentation de Docker & Docker-Compose pour comprendre l’utilité et le fonctionnement des Dockerfile et Docker Compose, permettant de gérer le déploiement de la base de données PostgreSQL de manière reproductible.