+ Répondre à la discussion Actualité déjà publiée
  1. #1
    Membre confirmé
    Avatar de deletme
    Homme Profil pro
    Inscrit en
    janvier 2011
    Messages
    256
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2011
    Messages : 256
    Points : 519
    Points
    519

    Par défaut Quelles sont vos meilleures pratiques ?

    Bonjour à toutes et à tous,

    Nouveau dans le monde de Qt (bien qu'ayant déjà développé des application à l'aide de ce "framework"), je souhaiterais m'améliorer dans la conception dans mes futures applications (pour qu'elles restent maintenables et évolutives).
    Aussi, avez-vous des best practices que vous suivez systématiquement ? Avez-vous ou connaissez-vous des projets dont le code source est accessible permettant d'apprendre un peu plus ?
    J'ai quelques livres à ma disposition mais la plupart se cantonnent à une application par notion abordée et dès que l'on sort des sentiers battus on se demande si on fait bien. J'ai également parcouru quelques exemples fournis par Qt mais j'avoue rester sur ma faim.

    Merci,

    dM
    "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
    - Martin Golding
    Traduction obligatoire : "Toujours écrire du code en gardant en tête que le mec qui en assurera la maintenance est un psychopathe violent qui connait votre adresse"

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    juillet 2010
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 25
    Localisation : France

    Informations forums :
    Inscription : juillet 2010
    Messages : 36
    Points : 56
    Points
    56

    Par défaut

    Je n'ai pas utilisé Qt depuis un moment, et je vais donc donner surtout mon avis sur les bonnes pratiques à appliquer en c++ en général qui ont beaucoup amélioré ma productivité.
    - RAII avec les pointeurs intelligents, ne pas utiliser de pointeurs nus qui gèrent la durée de vie d'un objet
    - La programmation défensive, en utilisant de nombreuses stratégies comme la programmation par contrat (disponible dans gsl: https://github.com/Microsoft/GSL )
    - Éviter les globales et les singletons autant que possible, dans un petit projet on ne se rend pas compte du mal que c'est mais dans un gros projet ça cause rapidement de gros problèmes
    - Toujours initialiser ses variables
    - Utiliser le sanitizer de gcc (ou valgrind, mais c'est plus lourd) pour détecter de nombreuses erreurs comme les fuites de mémoire, les variables non initialisées utilisées, etc...
    - Comprendre reinterpret_cast (et sa différence profonde avec static/dynamic_cast) avant de l'utiliser (mes débuts en C++ n'ont pas été glorieux a cause d'une utilisation stupide et intensive de reinterpret_cast).
    - Avoir la notion "d'undefined behaviours", et être conscient qu'un programme qui compile et semble fonctionner, n'est pas forcement un programme fonctionnel.
    - Vérifier le standard C++ quand on a un doute (encore une fois, ce n'est pas parce que ça "compile" et que ça semble marcher que c'est standard/légal/bon).

    Côté Qt, j'ai perdu beaucoup (trop) de temps a ne pas utiliser le designer, et à instancier mes widgets manuellement en code.
    Un conseil, apprendre a maîtriser Qt designer, c'est vraiment très efficace, puissant, et quand on le maîtrise il y a un réel gain de productivité.

Discussions similaires

  1. Quelles sont vos méthodes de programmation et de débogage ?
    Par Doloop dans le forum Langages de programmation
    Réponses: 43
    Dernier message: 04/07/2017, 20h27
  2. Réponses: 61
    Dernier message: 29/12/2016, 12h58
  3. Quelles sont les meilleures pratiques pour une démonstration en ligne?
    Par bbalet dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 25/02/2015, 14h07
  4. [Avis] Quelles sont les meilleures API et outils Java ?
    Par Mickael Baron dans le forum APIs
    Réponses: 33
    Dernier message: 08/06/2011, 14h39
  5. Réponses: 5
    Dernier message: 25/05/2009, 14h59

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