Ensembles d'exercices à réaliser dans le but de s'exercer à la réalisation d'application multiplateforme.
Tout du long de l'ensemble de la réalisation de ses consignes vous devrez commenter le code afin que quelqu’un qui ne connaisse pas le projet puisse comprendre.
Histoire de prendre en main les différents projets.
Changer la couleur du layout de loading dans le XML
Afficher dans la console le nombre de personnes connectés
a) L'utilisateur doit pouvoir demander une nouvelle couleur quand elle ne lui convient pas.Cette nouvelle couleur sera à nouveau choisie au hasard par le serveur.
Création du setter dans DrawingView pour changer de couleur
Route pour recevoir et renvoyer une autre couleur
Ne pas hésiter à ajouter d'autres couleurs au tableau de couleur
b) Le serveur doit attribuer aléatoirement une couleur qui sera la même que celle du background de l'application cliente à un utilisateur. Cet utilisateur sera alors appelé : "L'effaceur". Bien entendu l'utilisateur devra être au courant de qui il est ainsi que d'avoir la possibilité de changer de rôle grâce à l'exercice précédent.
Plus gros pinceau
Couleur du fond pour le pinceau (illusion d'une gomme)
Afficher si l'utilisateur est l’eraser ou pas
Ajouter une couleur de background correspondant
Un utilisateur doit pouvoir savoir si il est Eraser ou non
c) L'utilisateur doit pouvoir choisir un salon de dessin suivant un #Hashtag
. Lors du lancement de l'application cliente. L'application lui demande quel salon veut-il rejoindre. Par défaut le salon sera #general
. (Il n'existe qu'un seul effaceur par salon)
Zone de texte de choix de salon
Possibilité de changement de salon
Afficher le salon en cours sur l'application
Chatroom Socket
Si le salon n'existe pas, le créer et faire rejoindre l'utilisateur
Attention à ce qu'un utilisateur ne rejoigne pas 2 fois le même salon
d) On veux pouvoir surveiller l'activité du serveur via un interface web dédié non sécurisé. Cela comprends au minimum (tout ajouts sera le bienvenu) :
Nombre de chat room en cours
Nombre d'utilisateur connecté
//Aide : Vous pouvez utiliser soit Express, soit socket.io coté client avec Javascript
e) Il serait intéressant de rajouter quelques fonctionnalités facécieuse à ce back-end :
Clear tous les dessins
Clear tous les dessins d'un salon en particulier
Envoyer un dessin (copier coller des coordonnées)
a) L'utilisateur aimerait bien identifier qui dessine en temps réel pour cela :
Ajouter une fenetre au démarrage pour pouvoir ajouter un pseudo
Le pseudo doit apparaitre en temps réel avec le trait de dessin d'un utilisateur sur l'écran des autres utilisateurs
b) On veux garder une trace de toutes activitées lié au serveur. Pour cela votre chef de projet décide d'utiliser un SGBD non relationnel : MongoDB
. Ce SGBD devra :
Enregistrer toutes les couleurs
Enregistrer les dessins
Enregistrer les utilisateurs
Le serveur peut changer la couleur de fond
Coder l'application sur iOS