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 :

bonne pratique de programmation


Sujet :

Langage Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 54
    Points : 39
    Points
    39
    Par défaut bonne pratique de programmation
    Bonjour a tous,

    j'espere poster dans le bon forum

    j'aimerai apprendre a mieux programmer, sa fait deux ans que je programme en java (java swing et j2ee spring) et j'ai l'impression de faire du sur place.

    j'aimerai acheter un bouquin en java mais je ne sais pas lequel choisir

    j'hésite a acheter les design patterns mais je ne sais pas si ce bouquin va répondre a mes attentes
    qui sont

    - apprendre a mieux structurer les programmes (application n-tiers)
    - apprendre a mieux me servir des classe disponibles (quand utilisé tel collection ect...)
    - les bonnes pratiques de programmation (nomages des class, méthode, ...)
    - éviter les pièges de programmation qui ne font que complexifier le programme
    - le tout sur diférent partie du java (swing,jdbc, jsp ect...)

    j'ai déjà comme bouquin
    - programmer en java 3eme édition
    - spring par la pratique
    - swing la synthèse
    - l'orienté objet

    j'ai déjà été voir du côté des bouquins (sur developpez.com bien entendu) et je ne sais pas lequel choisir

    je ne cherche pas un bouquin pour devenir une star en java,
    je cherche juste un bon bouquin qui n'est pas destiné au débutant et qui explique des concepts avancé

    merci d'avance

  2. #2
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    Un conseil:

    - pour les bonnes pratiques java, "Java Efficace" de Joshua Bloch.
    - pour les patterns, "Design Pattern tête la première" de Eric & Elisabeth Freeman, éd. OReilly

    Bien connaitre les pattern, mais surtout être à l'aise et savoir QUAND les utiliser (où bien même simplement savoir les reconnaitres dans les api tierces) est super important de nos jours.

    Les subtilités de java sont également très importantes, utiliser une mauvaise collection peut être désastreux...
    Utiliser un hashset sans overrider equals et hashcode va provoquer des comportements étranges.
    Rendre des objets sérializable alors qu'ils ne le devraient pas, c'est la même chose.
    Oublier de protéger ses invariants peut conduire à des bugs extrêmement durs à corriger.
    etc...

    Ces choses là sont très bien expliquées dans Java Efficace (ça reste mon bouquin java préféré).


  3. #3
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Dans quel contexte est-ce que tu travailles ? En équipe ou tout seul ? Est-ce que tu sais ce que deviennent tes programmes, est-ce que tu dois les faire évoluer ou est-ce que, une fois qu'ils sont faits, tu n'as plus à les reprendre ? Sais-tu si les utilisateurs de tes programmes sont satisfaits ? Les connais-tu ?

    Moi on me pose une question, j'en renvoie quinze

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 54
    Points : 39
    Points
    39
    Par défaut
    bonjour,

    merci a tous les deux pour vos réponses.

    gifffftane :

    tu fait bien de pose des questions

    le contexte : je suis consultant (c'est ma première place) et chez moi après le boulot
    pour le moment tout seul, peut être en équipe d'ici 1mois
    futur de me application : une évolue rarement, l'autre sera amené a évoluer souvent
    oui, je connais les utilisateurs et leur programme répond a leur atente

    moi, je suis toujours déçu de ce que je fais. a chaque fois je me dit que je peu faire mieux

    Pill_S :

    c'est vraiment sa que j'aimerai mieux maîtriser. je vais donc me procurer
    ce bouquin "Java Efficace" de Joshua Bloch

  5. #5
    Membre émérite
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Points : 2 582
    Points
    2 582
    Par défaut
    Ah si tu es en contact avec les utilisateurs c'est le principal.

    Cependant, s'ils sont contents, pourquoi es-tu mécontent ?... J'imagine que c'est parce que, toi, tu vois la mécanique interne... tu te dis : Houla c'est pas joli quand on soulève le capot !

    Les design patterns sont effectivement une façon de progresser en ce sens. Mais je te suggère de repérer principalement ce qui, dans ta façon de travailler, te permet d'arriver à ce que les utilisateurs soient contents. Ce n'est pas donné à tout le monde. Et méfie toi du monde des design pattern qui détourne complètement de ce problème, en disant par exemple : Nous avons fait un beau MVC, le client est très content ! Dire ça est ridicule, c'est mon opinion.

    Donc,
    1) Client et utilisateur
    2) Design pattern

    ... et pas l'inverse.

    Pour repérer et suivre la satisfaction utilisateur, des choses aussi banales que parler et écrire français, s'exprimer poliment en réunion (déjà pour ça j'ai du mal), expliquer ce que l'on fait, écouter, comprendre, sont très utiles.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 54
    Points : 39
    Points
    39
    Par défaut
    Bonjour,

    c'est exactement ce que je me dit quand je vois certaine partie de mon programme. je m'enfonce parfois dans des truc compliqué (par ma façon de programmer) et de ce faite les mises a jours sont plus dur

    je cherche a simplifier certaine partie de mes programmes en apprenant les bonnes pratique de dévelopement

    par exemple, j'avais une JTable que je mettais a jour toute les 30 secondes en supprimant tout et réinsérant mon contenu

    en cherchant un peu sur le net j'ai vu qu'on pouvait associé un tablemodel
    et d'utilisé le mécanisme d'observer et observable pour mètre a jours la JTable

    plus simple, plus propre, plus facile a modifier ...

    j'ai perdu presque une semaine a modifier mon programme

    mais je suis a 100% d'accord avec toi, le plus important est la satisfaction des utilisateurs et je n'hésite pas a leur montré régulièrement l'avancement
    du projet et de leur demandé ce qu'ils en pensent

    mais j'accorde aussi de l'importance a la manière de concevoir le programme
    au cas ou, une autre personne devrait le modifier

    pour le moment je redéveloppe une application qui a été vraiment mal écrite
    tant que ma version n'est pas opérationnel, ont doit utilisé la vielle version.
    il y a eu un bug le mois passé qui m'a pris 2semaines a corriger pars que le gars a tout mélangé dans les class (appelle a la base de donnée, élément graphique, traitement et a écrit une méthode par class)

    je veu éviter sa a d'autre personne car sa ne me plait pas de me retrouver dans cette situation

  7. #7
    Membre averti
    Avatar de anadoncamille
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 395
    Points : 310
    Points
    310
    Billets dans le blog
    1
    Par défaut Librairie perso
    Salut,

    en plus des bons conseils précédents,

    sauvegarde les parties de tes programmes qui te plaisent et qui fonctionnent bien. Crée des objets qui te sont propres et qui contiennent les algorithmes que tu utilises le plus souvent et que tu n'as pas forcément envie de réécrire à chaque fois. Au fur et à mesure, tu vas te constituer une bibliothèque avec tes classes préférées, tes futurs projets seront plus facile à faire.

    En plus si tu améliores ta bibliothèque, tous tes projets en bénéficieront et tu apprécieras ton travail.

Discussions similaires

  1. Bonne pratique de programmation
    Par toutatafr dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 20/02/2011, 15h04
  2. Réponses: 5
    Dernier message: 30/09/2010, 17h46
  3. bonnes pratiques de programmation
    Par thierry_b dans le forum Général Java
    Réponses: 3
    Dernier message: 23/01/2009, 15h25
  4. Un guide de bonnes pratiques pour programmer avec le port COM ?
    Par Chekov dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 10/03/2008, 18h25
  5. Tutorial bonne pratique du programmation avec JAVA
    Par menzlitsh dans le forum Langage
    Réponses: 10
    Dernier message: 02/07/2007, 12h56

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