Lexique de programmation
Ce lexique est conçu pour fournir des définitions claires et concises des termes et concepts que vous rencontrerez dans votre parcours de développeur.
Bases de données
Les systèmes et méthodes pour stocker, organiser, et interroger des données, y compris les bases de données relationnelles et NoSQL, et les requêtes SQL.
- Redis
- MySQL
- Bases de données relationnelles
- Bases de données NoSQL
- Différence entre OLAP et OLTP
- OLAP (Online Analytical Processing)
- OLTP (Online Transaction Processing)
- PostgreSQL
- MongoDB
- Indexation des bases de données
- SQL (Structured Query Language)
- ACID (Atomicité, Cohérence, Isolation, Durabilité)
- Sharding (partitionnement des bases de données)
- Réplication de bases de données
- Modélisation des données
- Connexion ODBC et JDBC
Concepts avancés
Les notions plus complexes comme la récursivité, les algorithmes avancés, la gestion de la mémoire, l'optimisation, et la programmation parallèle et distribuée.
- Bulle de filtre
- Gestion de la mémoire
- Optimisation
- Récursivité
- Algorithmes avancés
- Programmation parallèle
- Programmation distribuée
- Structures de données avancées
- Garbage collector (ramasse-miettes)
- Complexité algorithmique
- Pointeurs et arithmétique des pointeurs
- Allocations statiques et dynamiques
- Modèles de mémoire (Memory Models)
- Passage de messages
- Algorithmes de tri sophistiqués (Quicksort, Timsort)
- Algorithmes de recherche (Recherche binaire, A*)
- Graph Theory (Graphes et leurs algorithmes)
- Modèles de calcul parallèle (PRAM)
Concepts de base
Les fondements de la programmation, incluant les variables, types de données, opérateurs, boucles, conditions, et fonctions.
- Logique de Programmation
- Algorithm
- Bug
- Data Structure
- Error Handling
- Function
- Git
- HTML (Hypertext Markup Language)
- IDE (Integrated Development Environment)
- JSON (JavaScript Object Notation)
- Loop
- Library
- Object-Oriented Programming (OOP)
- Performance Optimization
- Quality Assurance (QA)
- Refactoring
- Stack
- Syntax
- Testing
- Variable
- Version Control
- Web Development
- XML (eXtensible Markup Language)
- YAML (YAML Ain't Markup Language)
- Stack Technique
- A/B testing
Développement logiciel
Les pratiques et outils utilisés pour développer des logiciels, incluant la gestion de versions, les méthodologies de développement, les tests, le débogage, et la collaboration.
Intelligence artificielle et Machine Learning
Les concepts et techniques permettant aux machines d'apprendre et de prendre des décisions, incluant l'apprentissage supervisé, non supervisé, les réseaux de neurones, et le traitement du langage naturel.
- LangChain
- LLM
- Modèles de langage
- Ajustement (fine-tuning)
- Apprentissage actif
- Apprentissage auto-supervisé
- Apprentissage automatique
- BERT (Bidirectional Encoder Representations from Transformers)
- Apprentissage continu
- Deep Learning
- Machine learning
- TensorFlow
- Réseaux de neurones artificiels
- Apprentissage non supervisé
- Apprentissage fédéré
- Apprentissage par renforcement
- Apprentissage par renforcement et rétroaction humaine
- Apprentissage par transfert
- Apprentissage profond (deep learning)
- Apprentissage supervisé
- HyDE - Hypothetical Document Embeddings
- Augmentation de données (IA)
Réseaux et communications
Les protocoles et technologies permettant la communication entre systèmes informatiques, comme HTTP, TCP/IP, les API, et les services web.
Structures de données
Les différentes manières d'organiser et de stocker des données, telles que les tableaux, listes, piles, files, dictionnaires, arbres, et graphes.
Sécurité informatique
Les techniques et pratiques pour protéger les applications et les données, incluant le chiffrement, l'authentification, l'autorisation, et la prévention des vulnérabilités.
- Zero Day
- Attaque par empoisonnement (data poisoning attack)
- Malware
- Cheval de Troie - Virus
- Data poisoning attack - Attaque par empoisonnement
- Backdoor (porte dérobée)
- Bring your own device (BYOD)
- SLA (Service-Level Agreement)
- SLO (Service-level objective)
- SLI (Service level indicator)
- SLA, SLO et SLI, quelles différences ?
- Gestion des identités et des accès (IAM)
- OWASP
- Ingénierie sociale
- Security Knowledge Framework
- ZAP (Zed Attack Proxy)
- Rétro-ingénierie