Gestionnaire de notifications

Soyez le premier à donner votre avis sur cette source.

Vue 3 571 fois - Téléchargée 536 fois

Description

Je vous propose une petite classe utilitaire qui va vous permettre de gérer correctement des affichages, en console le plus souvent. Cette classe propose un panel de méthodes permettant d'afficher facilement un message d'erreur ou un message "standard" par exemple. Ces messages peuvent être précédés d'une date (celle où le message est affiché), et cette date peut être bien entendu formatée. De plus, il est possible d'utiliser d'autres flux de type PrintStream afin de faire ses notifications ailleurs que sur la sortie standard (System.out) ou la sortie d'erreur (System.err).

L'intérêt de cette classe est qu'elle évite des "System.out.println(...)" à la pelle dans le code, ce qui augmente sa qualité. De plus, elle évite d'avoir à refaire des méthodes d'affichage : il suffit d'y préciser un flux et un message et le tout est joué. Enfin, pour ceux qui ont un peu de mal avec la POO, la surcharge est massivement utilisée ici : il y a un même nom de méthode pour plusieurs signatures possibles.

Source / Exemple :


/*
Exemples d’utilisation faits sur le tas, j'initialise quelques variables pour donner une idée

  • /
/* De mémoire, faire un "import static" allège un peu les choses :
  • /
import static GestionnaireNotifications.*; // Au lieu de refaire un "System.out.println("Hello World");" afficherMessage("Hello World"); // J'ai une erreur à afficher afficherErreur("Une erreur est survenue..."); // Je veux écrire dans un fichier en passant par un PrintStream PrintStream ps= new PrintStream(monFichier); afficherMessage(ps, "J'écris dans mon fichier"); // J'ai envie de me faire un petit log, j'en profite pour y ajouter une date PrintStream ps= new PrintStream(monFichier); afficherDate(ps, "J'écris dans mon fichier"); // Je veux simplifier l'affichage de mes dates dans mon fichier PrintStream ps= new PrintStream(monFichier); Date date = new Date(); String type_format_date = "MM/dd/yyyy"; SimpleDateFormat format_de_date = new SimpleDateFormat(type_format_date); afficherDate(ps, "J'écris en mieux dans mon fichier", format_de_date);

Conclusion :


Je suis retombé sur cette petite classe Java il y a peu de temps. J'espère qu'elle va en aider plus d'un. Personnellement, je l'utilise pour mes développements personnels et "scolaires" : cela allège le code, lui donne d'avantage de sérieux et... le rend plus beau :) (bon ça ça n'engage que moi). La version que j'utilise est un poil différente, mais les comportements sont les mêmes.

Bien entendu, je suis ouvert à toutes remarques à partir du moment où elles sont un minimum constructives. Et pour les timides qui ne veulent pas commenter directement, je suis ouvert aux MP.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Utilisateur anonyme
Pour le printf et le RFC Syslog, je n'y avais pas du tout pensé et c'est vrai que ça serait sympa ! Quand j'aurais d'avantage de temps je modifierais tout ça pour prendre en compte tes idées =D
Twinuts
Messages postés
5345
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
11 février 2020
90
Mouep... et pourquoi ne pas:
ajouter un support type printf qui serait bien pratique :p
ajouter une classe/méthode/fonction permettant de mettre en forme les logs dans un composant graphique.
le rendre compatible avec les RFC syslog (hyper simple à faire)
etc...
Utilisateur anonyme
Je tiens juste à (re)préciser que ce sont des exemples d'utilisation plus haut. Ils donnent seulement une idée de ce que l'on peut en faire, donc j'ai volontairement enlever le main et autres fioritures. Il faudra bien entendu ajouter la classe à son programme pour pouvoir utiliser les différentes méthodes.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.