freem a écrit 4934 commentaires

  • [^] # Re: C'est quoi propre ?

    Posté par  . En réponse au journal Du code propre, c'est quoi ?. Évalué à 2.

    La pratique, ça à toujours été mon meilleur prof : je suis auto-didacte pour 95% de mes connaissances informatique (hum… en solo: QBasic, asm x86, langage C, programmation générique, C++11, linux, bidouillages windows, reverse engineering (ouai, bon, ok, cracking plus qu'autre chose), diverses techniques d'attaque, gestion de version, cmake, perl, shell, licences libres, design pattern du GoF et GRASP, technique de chiffrement, de dissimulation et d'autres trucs que j'oublie certainement. En cours: les classes, le sql, merise, UML, notions de réseau renforcées, active directory, notions de droit. C'est à peu près tout… donc pas 95%, mais plus de 60% si on considère que c'est du 1 vs 1, ce dont je doute TRES fortement. ).

    Après, potasser… je fais ça quand je tombe sur un article qui m'intéresse, ou qui traite d'un problème que je rencontre (ou ai rencontré). D'ailleurs, faut que je dégotte une solution pour plier openGL à mes caprices :P

    Pour ce qui est d'éviter les astuces de sioux, c'est clair, et pour le nombre de lignes de code, ça fait longtemps que j'applique le fameux principe du fumiste: moins j'en fait, mieux j'me porte!

    Et pour vérifier que le code est compréhensible par les autres, un outil que j'aime beaucoup, même s'il à ses limites, c'est cccc : C and C++ Code Counter, qui mesure divers indices et donne une idée de la complexité: nombre de chemins de code, entres autres.
    Dommage qu'il ne supporte pas très bien les template, tout de même. Mais malgré ça, pas mal de bons indices sur le code à améliorer si on vise la lisibilité. Et conséquence annexe, on se retrouve avec un code plus performant :P (moins de lignes, moins de bugs, moins de mémoire bouffée, ce genre de choses…)

  • [^] # Re: Euh vraiment ?

    Posté par  . En réponse au journal Happy birthday lady Ada. Évalué à 1.

    (oui, au siècle dernier)

    Millénaire, c'est plus classe… oupa :P

  • [^] # Re: position plutôt que valeur uniquement…

    Posté par  . En réponse au journal De la honte que constitue le clavier français et des actions à entreprendre pour y remédier. Évalué à 2.

    Je suis assez d'accord pour les touches de copie/coupe/colle, et je m'en sers encore régulièrement en fait.
    Ces combo ont un intérêt pas que anecdotique lorsqu'elles sont combinées avec les touches directionnelles:
    shift+orig shift+suppr, je coupe jusqu'au début de ligne, et si j'utilise shift+inser au lieu de shift suppr, je remplace par le contenu du buffer. Génial :)

    Ce qui explique que je peste contre les claviers qui déplacent ou pire, suppriment !!! les touches [inser/suppr/fin/orig] dont les fonctions me sont quasi-indispensable.
    Dommage qu'elles soient si loin des autres cependant… Je sais, pas logique de dire que je peste quand elles sont déplacée et ensuite de râler qu'elles soient loin, mais 1) le français est râleur, 2) je suis français et 3) ces claviers "ergonomiques" les déplacent encore plus loin ou les séparent, ce qui rend le bordel tout sauf ergonomique (pensée spécialement haineuse pour le clavier microsoft que j'ai acheté qui met inser à la place de impr. ecran pour !doubler! la taille de suppr… quel intérêt, sérieux? Et surtout, pourquoi j'ai pas fait gaffe à ça quand j'ai acheté cette merde…)

    Au niveau des choses qui font que le type ma trique me semble sympa, il y à la touche entrée au milieu du clavier. Ca, ça doit être le pied… Idem pour les touches pas décalées. Par contre, impossible de trouver la touche inser, c'est normal? Ou peut-être que je suis le seul à changer régulièrement entre les modes écrasement/insertion quand je tape du texte code?
    Enfin, faudrait que j'arrive à le tester…

    Par contre, je suis franchement intrigué quand je lis que bépo c'est bien pour programmer: alt gr pour les caractères <>&, entres autres, c'est juste pas possible.
    Un bon layout pour le dev doit probablement être assez spécialisé. Dvorak est une piste plus intéressante amha, parce que vu que la programmation se fait souvent en anglais…

  • [^] # Re: Quelques idées

    Posté par  . En réponse au message Choix d'un ordinateur portable peu encombrant pour programmer.. Évalué à 3.

    A mon sens, pour programmer, il faut un bon clavier, et ça fait défaut aux netbook.

    Personnellement, j'ai un eeepc: 1015pem, et il est très bien pour programmer, d'ailleurs j'ai de plus en plus de mal à utiliser un clavier normal depuis que je l'ai.
    Pas de clavier numérique dédié, c'est vrai, mais de toute façon c'est vachement loin des doigts ce pavé, on prend très vite l'habitude d'utiliser Maj+ "&é"'(-è_çà".

    A mon sens, les points les plus importants, dans l'ordre, pour choisir une machine de dev, c'est:
    * le processeur: dual core, c'est un strict minimum!
    * un disque dur rapide. Peu importe la capacité, 80Go suffisent largement pour du dev.
    * la ram: 1Go, ça suffit, mais tout de même, 2 c'est mieux…

    J'ai mis le disque dur avant la ram, parce que c'est un véritable goulot d'étranglement, la programmation implique souvent l'usage de nombreux fichiers et donc de nombreux accès au disque dur.
    A noter que si tu mets un ssd, mais j'en doute vu que tu sembles chercher à pas trop cher, il vaut mieux mettre de la ram: pour éviter de bouffer des cycles d'écriture ;) mais après, je sais pas si ça crève vite ou pas, j'en ai jamais eu (j'attends d'avoir plus de soussous).

    Au niveau des caractéristiques de mon petit ultra portable et de mon ressenti:
    _ 2.2Kg, je le sens pas dans mon sac, même en marchant pendant 1H avec (problèmes de voiture en ce moment, alors je rentre de la gare à pinces).
    _ 1Go de ram, un peu trop léger quand je lance des compilations C++ impliquant l'interface graphique sur 4 threads avec gcc. D'un autre côté, gcc est réputé consommer pas mal en ram, et c'est plutôt rare que ça sature, car je modifie assez rarement ces parties de mes applications: la logique, le truc qui merde le plus souvent, elle n'est pas dans les mêmes classes que la présentation ;)
    _ processeur dual core, cadencé à 1.55GHz, 2 thread par coeur. Largement suffisant, au vu de la quantité de RAM que j'ai.
    _ disque dur 5400 tr/min, 240Go. Trop lent, mais supportable.
    _ écran… je sais pas la taille, mais résolution 1024x768. Taille suffisante, avec un tiling window manager. Allez, un peu plus haut serait idéal, pour être franc.
    _ batterie qui tiens 5H30-6H00. Au début c'était 7H (il y a 2 ans, et mon usage est assez intensif) :)
    _ clavier "chicklet" (ou un truc du genre) : juste parfait. Les touches sont serrées, et faciles à actionner, la frappe est vraiment sympa, alors que j'aimais pourtant pas trop les claviers de portable avant. A noter que certaines des touches de fonction ne marchent pas, parce que je n'ai pas installé d'environnement de bureau et que les touches en question doivent être liées à une application (genre vlc pour play/pause).
    _ wifi: pilote propriétaire, présent dans les dépôts non-free de debian. Donc, installation finger in the nose, dès qu'on a activé non-free. Suffit pour ça d'ajouter "non-free" à la fin de la ligne que l'on veut dans le fichier "/etc/apt/sources.list" et faire un "#aptitude install machin", pas bien sorcier.
    _ touchpad: que du bonheur, surtout une fois le scroll vertical activé et le clic en tapotant désactivé. Question de goût, et tout ça se configure via synclient de façon très intuitive. Juste, faut exécuter les commandes à chaque démarrage de session, donc les mettre dans un script qui se lance tout seul ;) (je rappelle, j'utilise pas de DE)

    Bon, au niveau du dev que je fais, c'est du C++, et la config de ma debian est du genre light: Code::Blocks pour IDE voire vim directement pour les petits projets de 3-4 fichiers (en fait, tous ceux qui ont moins de 2H de travail :D après j'ai trop de fichier, et C::B deviens moins prise de tête).

    Pas d' "environnement de bureau complet", bien que XFCE4 tournait sans souci quand j'ai acquis cette bécane. Je suis passé à i3 comme window manager parce que le touchpad et la souris, ça va un temps, mais en fait… c'est chiant quand on code (quoique le pire entre les deux, c'est la souris: trop loin).
    Du coup, la gestion des fenêtres en tuiles, pour du dev, ça a plusieurs avantages:
    _ gain d'espace non négligeable (pas de décorations de fenêtres)
    _ possibilité de se passer de la souris
    _ légèreté, parce que je sais pas pourquoi, mais tous les dev de ce type d'outils semblent faire une fixette sur les perfs, ce qui me va parfaitement, soit dit en passant.
    _ raccourcis clavier pour lancer des applications plus simples à configurer que sur les DE que j'ai pu tester.

  • [^] # Re: Euh vraiment ?

    Posté par  . En réponse au journal Happy birthday lady Ada. Évalué à 5.

    Je suis d'accord.

    Ce que je connaît d'Ada, c'est le langage, nommé ainsi, selon wikipedia, en référence à la première informaticienne (ils parlent même pas de programme dans cette référence, pour dire).
    Ce qu'elle a accompli, j'en ai aucune idée. Son compagnon (de recherche ou de plumard, pour ce que ça peut me faire) je n'en avais jamais entendu parler.

    P'tet que je suis un inculte après… mais bon, je pense qu'effectivement la moyenne des informaticiens ne connaissent pas ce monsieur. Sondage?

    "Le nom Ada a été choisi en l’honneur d’Ada Lovelace, qui est supposée avoir été la première femme informaticienne de l’histoire."

    Ada )

    Nb: la fonction qui parse les URL ne semble pas supporter les inclusions de parenthèses, du coup le lien vers wikipedia est pourri, navré.

  • [^] # Re: En parlant des nouveaux qui sont perdus

    Posté par  . En réponse au journal De l'accueil dans la communauté LinuxFr. Évalué à 2.

    Euh, ouai, en fait… je sors… l'habitude de i3 configuré avec jklm ^

  • [^] # Re: En parlant des nouveaux qui sont perdus

    Posté par  . En réponse au journal De l'accueil dans la communauté LinuxFr. Évalué à 1.

    Réponse: non.

    En fait, tu ne l'aurais pas dis, je n'aurais pas compris de quel affichage il était question…

    PS: merci pour les raccourcis clavier, ça va bien aider. Mais j'ai l'impression que le 'm' merde ici… M'enfin, pas bien gênant.

  • [^] # Re: C'est quoi propre ?

    Posté par  . En réponse au journal Du code propre, c'est quoi ?. Évalué à 2.

    Bah en fait, mes cours remontent à il y a quelques années alors en changer, s'trop tard :D

    Mes pratiquent ont pas mal évolué en fonction de ce que j'ai fais, et des sujets que je travaille dans mes loisirs, notamment grâce à l'open source. Sur ce point, je crois que les logiciels libres ont été mon meilleur prof, même sans y avoir réellement contribué:

    • utilisation de gestionnaire de version pour le code
    • la même, mais avec des VCS distribués
    • compréhension (et usage) de l'intérêt de ne pas laisser la mécanique interne visible
    • compréhension (et usage) de certains design pattern (et abandon d'anti-pattern)
    • usage du dev générique
    • utilisation à excès, puis abandon, des commentaires de documentation (pas si commodes que ça finalement, trop de maintenance pour un bénéfice pas si évident, quand on les veut exhaustifs)

    Pour certains points, les cours (de BTS du moins) ne pouvaient pas enseigner ces choses, mais pour d'autres (les VCS, par exemple) il aurait été pas mal qu'on aborde les classiques (à l'époque, CVS et SVN déjà)

    Le boulot n'a que peu fait évoluer mes méthodes pour le moment, à mon grand regret. Pas non plus énormément d'expérience professionnelle il faut bien le dire :D

  • [^] # Re: Pourquoi j'utilise github.

    Posté par  . En réponse au journal Pourquoi GitHub saimal, quelques alternatives. Évalué à -2.

    Bitbucket à un autre avantage (et rien à foutre des intégristes): tu peux faire du logiciel propriétaire avec des équipes jusqu'a 5 personnes sans payer.

    Faut pas oublier que les forges logicielles ne vivent pas grâce aux logiciels libres qu'elles hébergent… Enfin, j'ai pas de preuves, bien sûr, juste une forte présomption.

  • [^] # Re: Des dollars !

    Posté par  . En réponse au journal Proposition de stage : libération d'un logiciel industriel. Évalué à 2.

    Dans le cas de la SNCF, c'est plutôt du EPIC FAIL sur les horaires…

    (bon ok je sors… t'façon on est trolldi!)

  • [^] # Re: si tu installes une distribution ....

    Posté par  . En réponse au journal Recyclage vs fracture numérique. Évalué à 1. Dernière modification le 05 décembre 2012 à 09:57.

    2) Debian l'est. Par ailleurs, les ressources trouvée sur ubuntu s'appliquent très régulièrement à Debian.
    3) Debian n'est pas (trop) complexe à administrer. En fait, la config, ça dépend de l'environnement de bureau et des outils que celui-ci propose. D'un autre côté, vue ta cible, l'administration, tu la fais une fois et après il me semble qu'il n'est plus vraiment nécessaire d'en faire… ce n'est pas comme si on pouvait encore changer aisément le matos des ordinausaures ou comme s'ils allaient changer leur config réseau tous les jours, si?

    Note:
    J'ai recyclé une bécane de plus de 10 ans (avec le totocollant certifié windows millenium ;) ) qui avait à ce moment que 64Mo de RAM et un disque dur de 10Go, pas de carte graphique (donc, ram partagée, youhou). Me rappelle pas du proco par contre, mais le reste devrait donner une idée de la vétusté de la chose.

    Bref.
    J'ai commencé par changer le disque dur pour un 80Go, pour la vitesse, puis installé debian stable avec XFCE4 (4.8 si je ne m'abuse) dessus, accès internet faisable avec iceweasel (firefox quoi), quoiqu'en diront les mauvaises langues. Pas super rapide, certes, mais bon…
    La musique (via mpd) fonctionne également sans trop tuer le processeur.

    J'ai pas testé les vidéos ni la bureautique par contre, vu que mon but était de transformer le bête en juke-box.

    Si tu dois faire ce genre d'installation à "grande échelle" je te conseille de faire une installation avec un fichier preseed qui te permettra de ne pas sélectionner les paquets inutiles, le cas échéant, ou d'ajouter automatiquement les paquets vitaux (genre flash-plugin dans la section non-free…)

    Note2: j'ai récemment trouvé une barrette de ram de même époque, propulsant la bête à plus de 180Mo, et ça a effectivement rendu l'ensemble plus réactif. Toujours pas au niveau moderne, mais ça, c'est évident… non?

  • [^] # Re: Ça craint…

    Posté par  . En réponse au journal Nouveau Humble THQ Bundle : Uniquement sous windows. Évalué à 2.

    le 1015pem fonctionne (quasi, pour être honnête) parfaitement avec une debian stable.

    2 bémols:
    _ le pilote wifi qui n'est pas libre (mais perso, je m'en cogne, ajouter le dépôt non-free n'est pas franchement difficile)
    _ c'était windows 7 starter qui était dessus (ou comment coller un OS handicapé quand on peut en coller un vrai…)

    Dans les points de quasi-fonctionnement, il n'y à bien que les touches Fn+xxx qui pour certaines ne fonctionnent pas (celles pour le son, la luminosité de l'écran, et le wifi marchent parfaitement, cela dis), et un bug sur le pilote wi-fi non-free (et/ou l'hibernation, pour ce que j'en sais…) qui fait que quand on sors d'hibernation, si l'état du wi-fi (on/off) n'est pas le même entre le moment ou l'on à lancé l'hibernation et celui où la machine est complètement réveillée, on à un joli freeze.

    A noter que je n'ai testé ni les bureaux gnome ni kde, seulement xfce et Xorg-a-poil+wm

  • [^] # Re: Sud-Ouest.org

    Posté par  . En réponse au journal [3615 ma vie] La fin d'une époque…. Évalué à 2.

    Hum, bah, sud-ouest, c'est une association qui à pour but de protéger la vie privée (et ne se base que sur du logiciel libre), pas une entreprise, avec tout ce que cela implique (qualité de service potentiellement moindre, pas de recherche effrénée du profit (donc pas de pub ni revente d'infos), utilisateurs informés des causes des problèmes lorsqu'il y en a, et caetera).

    Pour les prix, c'est libre, les adhérents choisissent ce qu'ils veulent payer et le volume de leur boîte mail, alors on ne peut pas vraiment parler de concurrence en sortant les chiffres :D

    [mavie]
    genre perso je n'ai que 125Mb mais à mon arrivée cette année, je n'ai même pas dû payer 5€… d'ailleurs, j'avais accès à la boîte bien avant d'avoir payé cette somme astronomique xD
    [/mavie]

    PS: je me demande souvent pourquoi il n'existe pas de balise mavie sur les forum, blogs & co

  • [^] # Re: Pas de chauffage

    Posté par  . En réponse au sondage Quel type de chauffage avez vous chez vous ?. Évalué à 1.

    Alors c'est étrange que je sois l'un généralement l'un des derniers à sortir le pull, et le contraire pour l'enlever, alors que je ne suis ni sportif ni musculeux (ni gras )… En fait, certains m'ont déjà sorti qu'il faudrait que je grossisse xD

  • [^] # Re: :D

    Posté par  . En réponse au journal Interview de Linus Torvalds pour le magazine Linux Format. Évalué à -1.

    Je pense qu'il doit avoir ses petits jardins secrets pour troller anonymement aussi, c'est geek humain après tout…

  • [^] # Re: Langages?

    Posté par  . En réponse au journal Comment Freedesktop divise le desktop. . Évalué à 4.

    En fait, des arguments pour accéder aux librairies via du code C.

    J'ai discuté rapidement avec le type qui refait le moteur de dungeon keeper (keeperfx pour les curieux. Et pour les râleurs, je suis pas google).
    A priori et de mémoire, à son job, ils codent les pilotes en C++ et font ensuite une interface en C.

    Pour la raison de ce choix, ceux qui ont voulu se creuser les méninges pour faire une application native (hop hop, dehors, java, dehors, .net :P) qui prenne en charge, par exemple, une mécanique de plug-ins savent qu'effectivement C++ pose de gros soucis de compatibilité binaire.
    Si quelqu'un veut des infos la dessus, j'ai divers liens en réserve, même si j'ai fini par opter pour une lib légère et pas trop mal faite qui m'épargne de réfléchir et de faire moi-même ma lib portable.

    Mais en gros, le problème à retenir est qu'utiliser directement une classe d'un binaire rendra l'interface très instable en terme d'ABI, nécessitant souvent de tout recompiler.
    Rien qu'une version différente de compilateur peut casser le lien application/plug-in! Alors vaut mieux ne pas parler de compilo différents :D
    En revanche, aucun souci pour les fonctions normales… D'où le passage via le C.
    (Problème causé par le "name mangling" qui fait partie des points intentionnellement pas standard du C++ (pour permettre les optimisations en fonction de la machine qui compile).)

  • [^] # Re: Y a comme un goût de trop peu !

    Posté par  . En réponse au journal Comment Freedesktop divise le desktop. . Évalué à 8.

    Il y a aussi des gens qui codent ET font de la merde (non, ne me faites pas parler de Lennart, je n'ai rien contre systemd moi).

    Je le sais, je code de la merde au boulot…

  • [^] # Re: :/

    Posté par  . En réponse au journal Comment Freedesktop divise le desktop. . Évalué à 1.

    Linus à démarré (et contribue très activement) au kernel que nous utilisons pour beaucoup.

    Donc, il est calé en bas niveau. Cool.

    Je me souviens avoir lu son torchon, et je crois bien que le premier argument est le meilleur, et limite l'unique valable:
    [quote]
    Quite frankly, even if the choice of C were to do nothing but keep the C++ programmers out,
    that in itself would be a huge reason to use C.
    [/quote]

    "Franchement, même si le choix du C ne servait à rien d'autre que de garder les programmeurs C++ en dehors, ce serait en soit une immense raison d'utiliser le C".

    Ca, si c'est pas de l'argument massue :D
    D'ailleurs, je suis surpris qu'il ne s'entende pas avec GNU (ou au moins le père spirituel, Richard Stallman) vu qu'eux aussi considèrent que le C est le langage ultime: http://www.gnu.org/prep/standards/html_node/Source-Language.html#Source-Language

    Bon, ils sont, pour le coup, vachement moins extrémistes que Linus sur cette histoire. De toute façon, C++ est tellement pourri que des modules de GCC ont commencé à être écrits avec, si c'est pas une sacrée référence ça :D

    Moi, je vote pour la peur du changement. Parce que C++ impose de comprendre 3 paradigmes pour en utiliser toutes les subtilités:
    _ impératif
    _ POO (qui en fait est plus ou moins une extension de l'impératif mais bon)
    _ généricité

    D'ailleurs, j'ai constaté que pas mal de programmes en C font des structures et des jeux de fonctions pour les manipuler (genre la SDL). Si ce n'est pas l'orienté objet, qu'est-ce? Il s'agit bien d'un objet (genre une image) que l'on manipule à l'aide de diverses fonctions…

    Ahh, ça faisait longtemps que j'avais pas trollé en français moi :) merciiiii

  • [^] # Re: Typo.

    Posté par  . En réponse au journal Comment Freedesktop divise le desktop. . Évalué à 4.

    On le saura dans les mois années à venir, ça, à moins que tu n'aies une bonne boule de cristal?

    Perso, je me dis que si les dev restent dessus, ça le sera pour certains utilisateurs. Pas pour moi, c'est certain, mais ça viens pas de gnome en soit, juste que je suis tombé amoureux des gestionnaire de fenêtres qui utilisent des tuiles, et j'ai pas l'impression que je vais divorcer de si tôt.

    Hum… Au fait, j'ai aussi un certain nombre d'applications utilisant des lib FreeDesktop.org, mais étrangement, je n'ai que 2 ou 3 paquets dans la catégorie gnome sur ma debian testing, c'est grave docteur?

    Après, le C à la vie dure, c'est vrai, mais c'est aussi lié au fait qu'il soit moins complexe que C++ et a des propriétés en terme de compatibilité d'ABI intéressantes.
    Sans vouloir troller (phrase typique d'avant troll) il s'agit des seuls avantages de C contre C++. (et paf, ici aussi c'est trolldi)
    Ah, et, pour finir… Peut-on considérer que Qt c'est du C++? Nan parce qu'il modifie un peu la chaîne de compilation quand même, pour ensuite générer du C++. Comme le premier compilateur C++ d'ailleurs, qui lui générait du code C… Pour moi, Qt est un quasi langage, que je n'apprécie d'ailleurs pas, mais ce n'est pas le troll du jour, pas vrai? :P

  • [^] # Waker

    Posté par  . En réponse au journal Les jeux de BigN sous Linux. Évalué à 3.

    To wake => éveiller.
    Donc, je dirais Wind waker, l'éveilleur du vent. Bon, clairement, ça pue en traduction littérale ces histoires de vents :D

    D'un autre côté, le vent du matin c'est agréable. Comme dirais San Antonio (enfin, le pseudo de l'auteur, pas le perso), le coup de semonce des intestins reprenant vie… Je comprend que Link s'y mette, surtout que bon, depuis le temps qui parcoure les campagne il à dû en manger des trucs pas frais.

  • [^] # Re: Respect du standard

    Posté par  . En réponse à la dépêche Libre choix du lecteur PDF. Évalué à 2.

    En effet.

    Cela dis, sumatra pdf, libre, léger, rapide, et au rendu correct (du moins, pour les pdf que je visionne, je n'ai jamais eu de soucis), dispose de ce type de plug-in.
    Le bémol: logiciel pas portable. Mais bon, je lui pardonne, il fait partie des logiciels qui me permettent de survivre en plein courant d'air, ce qui est un milieu des plus hostiles pour geek frileux des performances :D

  • [^] # Re: C'est quoi propre ?

    Posté par  . En réponse au journal Du code propre, c'est quoi ?. Évalué à 1.

    Ce que j'ai surtout constaté dans les cours sur l'OO, c'est que jamais personne ne m'a parlé de design pattern… Même pas GRASP, qui poutant est la base d'une conception adaptable…

  • [^] # Re: POO

    Posté par  . En réponse au journal Du code propre, c'est quoi ?. Évalué à 3.

    Perso, je pense qu'aucun paradigme n'est parfait, et qu'ils ont tous un intérêt.

    Les langages inspirés du tout objet se plantent royalement pour moi… D'ailleurs, ils font maintenant un peu de générique…

    Pour cette histoire de sérialisation, moi je vois comment boost::serialization à fait (enfin, ce qu'il nous faut faire pour s'en servir) et je trouve le résultat plutôt pas mal.

    Chaque classe sérialisable à une fonction template serialize() et est amie avec un des classes de boost. A partir de là, suffit de coller dans un fichier les implémentations template et basta (il proposent d'autres méthodes, mais c'est celle que j'ai préférée)
    D'une part, ces implémentations, étant template, n'empêcheront pas de compiler/linker/exécuter en cas d'absence, et d'autre part on peut les regrouper toutes dans un seul fichier, potentiellement dans un autre binaire.
    Le meilleur, c'est qu'il suffit de faire une classe serialisatrice pour que toutes les classes s'adaptent automatiquement.

    Ca rejoint l'idée que ce n'est pas la classe elle-même qui doit savoir comment se sérialiser, mais elle doit savoir quoi sérialiser, et les passer à celle qui saura comment.

    Certes, il y a plus de classes. Mais chaque classe ne doit être responsable que d'elle-même, selon les pattern GRASP.
    Ces pattern ont effectivement le problème d'avoir plus de classes, mais elles sont plus petites, et donc bien plus maintenables et réutilisables. Tandis que tout mettre dans une seule classe, c'est comme tout faire dans la même fonction: un erreur qui empêche de connaître les méthodes responsables de la gestion d'une ressource, et qui par la même augmente la difficulté de réparer les bugs.

  • [^] # Re: Propre en Python ???

    Posté par  . En réponse au journal Du code propre, c'est quoi ?. Évalué à 4.

    Perl, c'est excellent pour les regex, et l'utiliser pour remplacer de petits scripts est plutôt une bonne idée.

    Par contre, je plussoie pour l'illisibilité… bon, après, je suis un fanatique du typage fort, j'aime la POO, et j'ai fait peu, voire très, très peu, de dev web.

    Après, on peut ergoter longtemps sur les langages, mais j'aimerai souligner un point:
    le temps que l'on mets à écrire un code ne dépends pas que de son langage, mais surtout de ses lib standards (ou officielles, selon le langage).

    La "lenteur" d'écriture de C++ viens du fait que la lib standard est limitée (par choix du comité, qu'on aime ou pas). Je pense que si elle était l'égale de celle du JAVA, de Python ou du .NET, les avis changeraient quelques peu.

    Seulement, C++ est standardisé par l'ISO, ce qui est à la fois bien et mal. Les autres langages cités ne sont pas des standards officiels produits par un ensemble d'entreprise (tel JAVA sur qui Sun Oracle à la mainmise et fait ce qu'il veut, ou .NET qui n'est réellement supporté que par MS, avec, certes, un concurrent libre, mais qui semble ne pas tenir trop la route), et ne souffrent donc pas les mêmes contraintes, qui peuvent parfois s'avérer des avantages (compatibilité assurée d'un standard avec ses ancêtres, par exemple).

  • [^] # Re: Bref, coder bien et propre demande d'être intelligent et d'avoir du talent.

    Posté par  . En réponse au journal Du code propre, c'est quoi ?. Évalué à 1.

    Il a dit qu'il faut du temps, donc pas mourante ;)