IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Rédacteur

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    Juillet 2005
    Messages
    14 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2005
    Messages : 14 974
    Points : 73 024
    Points
    73 024
    Par défaut Tutoriel pour apprendre à contrôler les préconditions des méthodes d'une API Java, par François-Xavier Robin
    Bonjour,

    François-Xavier Robin nous propose un tutoriel pour apprendre à contrôler les arguments des méthodes quand on élabore une interface de programmation API avec le langage Java.

    Pour consulter le tutoriel : https://fxrobin.developpez.com/tutor...-methodes-api/

    N'hésitez pas à laisser des commentaires à la suite.

    Mickael BARON pour l'équipe Java de Developpez.com

    Retrouver les meilleurs cours et tutoriels pour apprendre la programmation en Java
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  2. #2
    Membre chevronné
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Points : 1 855
    Points
    1 855
    Par défaut
    au delà des aspects purement techniques il me semble qu'il faut beaucoup insister auprès des développeurs sur l'impact des préconditions.
    Un défaut peut-être "mortel" (no way: je veux pas continuer, le code va planter) ou constituer une incitation à confirmation (à re-traiter par le code appelant).
    J'ai en effet des tonnes d'exemples de refus d'exécution parce que les limites du test sont certes inquiétantes mais pas mortelles: ça arrive souvent quand on a des formulaires avec des listes: état à l'intérieur d'un pays (typique des formulaires américains), code postal ne prenant que des chiffres (impossible dans certains pays), limite d'age (oui ça m'est arrivé: j'étais employé dans une boîte ou les développeurs ne pouvaient imaginer qu'un salarié puisse être né avant 1950!), pays (que faire si vous êtes "apatride né dans la bande de Gaza sous administration égyptienne"?), espace dans le prénom ou autre caractère "bizarre" (ça m'est aussi arrivé avec un loueur de voiture. Bref si vous vous appelez 'Gaston Adhémar de Tête en Pointe' vous êtes foutu !), etc.
    J'ai des principes: je peux toujours trouver une bonne raison pour les contredire .... mais j'ai des principes!
    (mon excellent bouquin sur Java : https://eska-publishing.com/fr/livre...822407076.html)

  3. #3
    Membre chevronné
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 413
    Points : 1 993
    Points
    1 993
    Par défaut
    Le troll du vendredi

    ou né le 0.0.1964 si votre date réelle de naissance n'est pas connue et que l'administration suisse vous a attribué cette date de naissance sur vos documents administratifs (carte d'identité, passeport et autre...)

    SVP ne pas tirer sur le
    Bien le bonjour chez vous
    Jowo

  4. #4
    Rédacteur

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    Juillet 2005
    Messages
    14 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2005
    Messages : 14 974
    Points : 73 024
    Points
    73 024
    Par défaut
    Bonjour,

    Je vais demander à François-Xavier, l'auteur de l'article, de venir répondre à vos remarques.

    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  5. #5
    Membre chevronné
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Points : 2 112
    Points
    2 112
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Je vais demander à Jean-François, l'auteur de l'article, de venir répondre à vos remarques.Mickael
    Mickael, tu ne devais pas être fort au Mastermind : tu en as un seul et de mal placé !


    Pour répondre à professeur shadoko et jowo,

    je suis assez d'accord avec vous, car il m'arrive encore d'être gêné quand il s'agit de remplir mon prénom dans certains formulaires quand un "développeur" a estimé que 10 caractères suffiraient.
    C'est d'ailleurs là le problème à mon avis : ce n'est pas au développeur d'estimer cela, c'est une "précondition" métier, spécifiée par le métier !

    Enfin, c'est quand même un tout petit peu hors sujet : mon article traite des préconditions d'API.
    C'est à dire "backend" même si on pourrait l'étendre à certains "frontends".

    Il s'agit en priorité de contrôler les arguments qui "arrivent" dans une méthode, pour éviter des valeurs nulles alors qu'elles sont nécessaires ou encore des listes vides (ou nulles) alors qu'elles sont sensées ne pas l'être.

    Il faut absolument alors tester que les arguments soient "acceptables" avant de commencer tout traitement qui nécessiteraient au mieux un rollback, au pire une complexité cyclomatique (multi-imbrications de if / else) élevée pour gérer les cas d'erreurs.

    Ne pas tester les arguments, revient potentiellement au code (et au bug) qui a eu pour conséquence le crash d'Ariane 5

    A titre personnel, je ne teste pas partout tous les arguments, mais essentiellement sur ce que "j'offre" à l'extérieur. (D'ailleurs, c'est stipulé dans l'article).
    Il ne s'agit pas de contraindre trop fortement ce qui "arrive", mais de contrôler quand même un semblant d'information correcte.

    Quant à la date du 00/00/1964 en Suisse (que je ne connaissais pas) ... comment dire ... encore un système où le "métier" n'a pas su dire (ou être entendu) sur le fait qu'une date pouvait aussi être "indéterminée".

    Merci de vos réactions !

    François-Xavier.
    Moins on code, moins il y a de bug ... et vice-versa ainsi qu'inversement ...

  6. #6
    Rédacteur

    Avatar de Mickael Baron
    Homme Profil pro
    Ingénieur de Recherche en Informatique
    Inscrit en
    Juillet 2005
    Messages
    14 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche en Informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2005
    Messages : 14 974
    Points : 73 024
    Points
    73 024
    Par défaut
    Mickael, tu ne devais pas être fort au Mastermind : tu en as un seul et de mal placé !
    Sincèrement désolé, il était tard et je suis perdu avec toutes les personnes avec des noms composés. Encore désolé.

    Merci beaucoup pour ta réponse

    Mickael
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Ingénieur de Recherche en informatique au LIAS / ISAE-ENSMA
    Page de Developpez.com : mbaron.developpez.com
    Twitter : www.twitter.com/mickaelbaron
    Blog : mickael-baron.fr
    LinkedIn : www.linkedin.com/in/mickaelbaron
    DBLP : dblp.uni-trier.de/pers/hd/b/Baron:Micka=euml=l

  7. #7
    Membre chevronné
    Avatar de fxrobin
    Homme Profil pro
    Architecte SI, Java Fan, API Manager
    Inscrit en
    Novembre 2007
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte SI, Java Fan, API Manager
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2007
    Messages : 875
    Points : 2 112
    Points
    2 112
    Par défaut
    Citation Envoyé par Mickael Baron Voir le message
    Sincèrement désolé, il était tard et je suis perdu avec toutes les personnes avec des noms composés. Encore désolé.
    Non mais, je te rassure, j'ai plus rigolé qu'autre chose ! Ne t'inquiète pas !
    Moins on code, moins il y a de bug ... et vice-versa ainsi qu'inversement ...

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/05/2016, 12h09
  2. Tutoriel pour apprendre à consolider les logs docker dans un ELK2
    Par Community Management dans le forum Docker
    Réponses: 0
    Dernier message: 23/04/2016, 16h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo