Back End

Le back-end, ou "côté serveur", est essentiellement tout ce qui se cache derrière la scène. Les systèmes ont toutes sortes de logiques qui se produisent en arrière-plan leur permettant de fonctionner. Pour un site Web ou une application Web, cela fait référence à tout ce que l'utilisateur ne peut pas voir dans le navigateur, comme les bases de données et les serveurs.

Différence entre back-end et front-end

Command Line Interface (CLI)

Une interface en ligne de commande est utilisée pour traiter les commandes d'un programme informatique sous la forme de lignes de texte. Ils sont opposés aux GUIs (Graphic User Interfaces). Nous l'utilisons tous les jours avec le terminal (i.e. la console Unix). Par exemple en utilisant une commande Git:

$ git clone https://github.com/Hurna/Hurna-Core.git

Code Review

La révision de code est une phase du processus de développement logiciel au cours de laquelle les auteurs de code et leurs pairs examinent celui-ci pour s'assurer que le code global est sain, ne contient pas de bogue et s'améliore avec le temps.

Les révisions de code sont utiles pour tous. La personne la plus expérimentée au monde a aussi de code review (révisions).

Continuous Delivery — Continuous Integration(CI/CD)

Pour les grandes applications, le passage à la production nécessite de nombreuses étapes. L'intégration continue et la livraison continue (CI / CD) est le processus automatisé de générations, d'intégration et de tests. Il permet de publier en permanence de nouvelles mises à jour. La gestion de ce processus est souvent le travail de personnes appelées DevOps.

Schéma du processus d'intégration continue

Front End

Pour une application, le front-end est la partie exposée à l'utilisateur. C'est la partie d'un site Web avec laquelle les utilisateurs interagissent. Tout ce que nous voyons lorsque nous naviguons sur Internet, des polices - couleurs aux menus déroulants, est un mélange d'HTML, CSS et JavaScript contrôlé par le navigateur de notre ordinateur/téléphone.

Différence entre front-end et back-end

Middleware

Un middleware est un logiciel qui comble les écarts entre différentes couches, outils et bases de données afin de fournir des services unifiés aux utilisateurs. Il est généralement caractérisé comme la colle qui relie différentes plates-formes et appareils.

Dans le développement Web, il se situe souvent entre la partie du code qui reçoit la demande et l'autre partie du code qui effectue les mises à jour de la base de données, génère la réponse, etc.

Refactoring

Le refactoring est une technique pour restructurer du code existant en modifiant sa structure interne sans changer son comportement externe.

L'objectif de base du refactoring de code est de rendre le code plus efficace et plus facile à gérer. C'est essentiel pour réduire les coûts techniques. L'idée est qu'il est préférable de nettoyer le code maintenant que d'avoir un château de cartes qui menace de s'éffondrer plus tard.

Spaghetti code refactoring

Tests Unitaires - Unit Testing (UT)

Les tests unitaires sont une partie essentielle du développement d'applications logicielles. Également appelé test de composants, il s'agit d'isoler une unité de code pour vérifier qu'il fonctionne comme il se doit.

Contrairement à de nombreux types de tests, les tests unitaires sont généralement effectués par le développeur du code lui-même. Si vous ne faites pas de tests unitaires maintenant, je vous recommande de commencer.
Tests Unitaires -Unit Testing - UT

Nous pouvons aussi écrire les tests avant notre code. C'est ce qu'on appelle le développement piloté par les tests (TDD) et cela apporte certains avantages:
- Nous n'écrivons pas de code spéculatif "Je pourrais en avoir besoin à l'avenir" - juste assez pour que les tests réussissent à couvrir notre API.
- En écrivant d'abord le test, nous sommes obligés de penser à comment nous voulons structurer le code, ce qui en améliore généralement sa conception à long terme.