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

Langage Java Discussion :

Tutoriel pour apprendre à développer des objets Java et pas simplement des classes de données


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  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
    Par défaut Tutoriel pour apprendre à développer des objets Java et pas simplement des classes de données
    Colin Damon, d'Ippon Technologies, vous propose un tutoriel Java qui présente les bonnes pratiques pour développer des Objets Java et pas seulement des classes de données

    Le lien de l'article : https://ippon.developpez.com/tutorie...lassesdonnees/

    Profitez de cette discussion pour faire part de vos remarques, commentaires ou d'éventuelles informations ou techniques complémentaires.

    L'équipe Java

    Retrouvez les meilleurs cours et tutoriels pour apprendre 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é
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mai 2020
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mai 2020
    Messages : 347
    Par défaut
    Dommage que le lien avec le Domain Driven ne soit pas fait. Sans entrer dans les détails, l'auteur aurait pu faire le rapprochement et même emprunter des termes.

  3. #3
    Membre émérite Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 593
    Par défaut
    Bonjour,

    La plus grande partie de l'article discute de la cohérence des objets. La première section me fait penser aux types de données qu'il est possible de créer en Ada (exemple : numérique entier de 1 à 100, pas un entier qu'il faudra ensuite contrôler). Ensuite, vérifier les données en entrée évoque pour moi le langage Eiffel et la conception par contrat (notamment les préconditions). Enfin les types immuables sont de plus en plus utilisés dans d'autres langages comme Scala ou Kotlin.

    Le reste de l'article est plus orienté API (rest en particulier).

    Le sujet de l'article est plus "types de données" que conception d'objets métier, ce qui serait plus utile à beaucoup. Comme dit par @gervais.b, le DDD serait une très bonne approche dans ce cas. Je trouve néanmoins l'article intéressant pour ce rappel du besoin de contrôles des données au niveau des objets eux-mêmes pour garantir leur cohérence avec leurs valeurs métier.

    https://www.eiffel.org/doc/solutions...and_Assertions

  4. #4
    Membre très actif

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    486
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 486
    Billets dans le blog
    5
    Par défaut
    Juste pour rappeler que pour vérifier la cohérence d'un objet/classe représentant un concept, il existe un excellent framework, très simple, qui s'appelle Hibernate validator.
    C'est même devenu une norme (JSR 303).

  5. #5
    Membre chevronné
    Homme Profil pro
    Ingénieur en génie logiciel
    Inscrit en
    Juin 2012
    Messages
    948
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur en génie logiciel
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 948
    Par défaut
    Citation Envoyé par PhilippeGibault Voir le message
    Juste pour rappeler que pour vérifier la cohérence d'un objet/classe représentant un concept, il existe un excellent framework, très simple, qui s'appelle Hibernate validator.
    C'est même devenu une norme (JSR 303).
    en cherchant un peu sur la toile, tu pourras remarquer que certain conteste cette approche.

    En fait, au niveau du ddd je n'ai jamais vu autant de contestation et d'incertitude et de l'avis même d'Evans l'approche s'applique à peu de projet, même si elle est très intéressante.

  6. #6
    Membre Expert
    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 : 76
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Par défaut
    bien mais avec un petit bémol toutefois.
    Il faut une grande éducation des programmeurs pour leur faire toucher du doigt la pertinence des contrôles de validité.
    A l'époque du COBOL on enseignait aux programmeurs de tout vérifier ... avec parfois des excès surprenants
    (cas extrème : au Pays_bas un gars vérifiait que les noms de famille respectaient bien les règles de l'alphabet néerlandais... sauf que beaucoup de noms là bas sont soit d'origine française ou allemande! Bonjour les dégats). J'avais aussi un copain malgache dont le nom comportait plus d'une trentaine de lettres et ne rentrait pas dans les formulaires!

    On trouve encore ce genre d'excès actuellement: les sites américains qui vous demandent un état à l'intérieur de votre pays, les listes de nationalités (ben oui: quid si tu es "apatride né dans la bande de Gaza sous administration égyptienne"?) mais le plus drôle m'est arrivé personnellement: un programmeur vérifiait les dates de naissance et ne pouvait admettre que j'étais né avant 1950! j'ai eu récemment un autre exemple saignant avec l'application TousAntiCovid qui m'a empêché de me déclarer comme positif!.
    Donc oui aux vérifications systématiques ... mais le mieux est l'ennemi du bien! penser à des procédures de secours si ça vous semble hors limite.

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/03/2025, 09h32
  2. Réponses: 0
    Dernier message: 02/05/2019, 23h47
  3. Réponses: 0
    Dernier message: 15/01/2019, 19h08
  4. Tutoriel Swift - Apprendre à développer des applications iOS 8 : Partie 1
    Par Community Management dans le forum Développement iOS
    Réponses: 13
    Dernier message: 27/11/2018, 09h28

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