10) Refactoring classe UserManager
Dans la classe UserManager proposée dans le projet un premier problème se pose : la classe permet de gérer deux aspects du projet. En effet, on peut y effectuer la gestion des utilisateurs (ajout/suppression) et la gestion des mots de passe.
Il faut donc la réfactorer, pour séparer les deux logiques. Pour cela on va créer deux classes distinctes. La première classe Usermanager est donc une Map qui associe les utilisateurs à leur nom de compte et possède une mapMdp qui permet de gérer les mots de passe.
Cette classe possède les fonctions de base (getter, setter, ajout et retrait). C'est cette classe que l'on instancie pour pouvoir travailler.
La seconde classe GestionMdp permet, comme son nom l'indique de gérer la partie mot de passe. Elle possède les fonctions de base auxquelles on peut ajouter toutes les fonctions pour la sécurité : l'encryptage des mots de passe et leur décryptage est réalisé par cette classe. On l'instancie pour l'utiliser dans les interfaces.