🖥️ TC2DEV - Développement d'Applications
👨🏫 Enseignant : M. THOUVEREZ
📖 Vue d'ensemble du programme
Le module TC2DEV (Travaux Collaboratifs et Développement) constitue un pilier fondamental de l'option SLAM du BTS SIO. Cette unité d'enseignement vise à former les étudiants aux méthodologies et aux technologies modernes du développement logiciel.
À travers ce cours, vous apprendrez à concevoir, développer et maintenir des applications informatiques répondant aux besoins des organisations. L'accent est mis sur les bonnes pratiques de développement, la collaboration en équipe et l'utilisation d'outils professionnels.
🎯 Objectifs pédagogiques
- Maîtriser les langages de programmation orientés objet (Java, C#, Python)
- Concevoir des bases de données relationnelles et implémenter des modèles MVC
- Développer des applications web full-stack (Frontend + Backend)
- Utiliser des frameworks modernes (Spring Boot, Laravel, Django, React)
- Appliquer les méthodologies Agile et DevOps dans les projets
- Assurer la qualité du code via tests unitaires et intégration continue
- Collaborer efficacement avec Git et les plateformes comme GitHub/GitLab
📚 Contenu du programme
-
Programmation orientée objet avancée
- Concepts fondamentaux : encapsulation, héritage, polymorphisme
- Design patterns : Singleton, Factory, Observer, MVC
- Gestion des exceptions et debugging
-
Développement web moderne
- HTML5, CSS3, JavaScript ES6+
- Frameworks frontend : React, Vue.js ou Angular
- API RESTful et architectures microservices
-
Bases de données et persistance
- Modélisation relationnelle (Merise, UML)
- SQL avancé et optimisation de requêtes
- ORM (Hibernate, Entity Framework, SQLAlchemy)
-
Qualité et tests logiciels
- Tests unitaires (JUnit, pytest, Jest)
- Tests d'intégration et tests end-to-end
- Analyse de code statique et revues de code
-
DevOps et déploiement
- Conteneurisation avec Docker
- Intégration continue / Déploiement continu (CI/CD)
- Gestion des versions avec Git
⚠️ Points d'attention
Important : Cette matière nécessite une pratique régulière et intensive. Les projets pratiques constituent 60% de l'évaluation finale. Il est impératif de travailler en continu sur vos compétences de programmation.
Les étudiants doivent être capables de développer une application complète de manière autonome pour l'examen final. Le coefficient élevé (4) de cette matière souligne son importance dans l'obtention du diplôme.
📁 Ressources et supports de cours
Retrouvez ci-dessous l'ensemble des ressources pédagogiques pour réussir dans ce module.