• [^] # Re: Syntaxe étonnante

    Posté par . En réponse au journal C++Now 2014. Évalué à 4.

    Tu as raison, vaut mieux faire du code non générique ou alors avec des void *, c'est génial ça :-).

    Ben il a pas tord dans le sens ou ecrire du code generique est:
    1) super dur. Juste parce que ca compile ne veut pas dire que c'est une bonne api.
    2) au final plutot rare. Sorti des trucs de bases de la lib (collection, etc.)
    3) indicatif d'un gros probleme de design/approche (ca c'est mon avis personnelle). Le code "generique" releve de la philosophie "one size fits all", le st graal de beaucoup de developeurs qui pensent pouvoir resoudre tous les problemes du monde avec une solution.
    Au final (et c'est toujours mon avis), tu te retrouves avec une solution qui reponds mal a tous les problemes, avec une complexite qui explose. T'as vachement mieux fait d'utiliser d'une part des interfaces/protocoles (regarde ce qu'objc fait par exemple, ca te fait du code "generique" vachement plus efficace et clair), ou tout simplement ecrire du code specifique a ton domaine (ce qui ira plus vite, marchera mieux et sera bien simple a comprendre).

    Bref, effectivement, la feature est en plein dans la philosophie du c++ et c'est bien la le probleme - c'est ce que voulait dire l'OP je pense. Un immense bordel de feature, impossible a apprehender par un humain sans des annees de pratiques, avec de nombreuses facons de tirer dans le pied, et sans porte de sortie.
    Encore une fois, regardes ce qu'objective c fait, un langage objet plutot elegant qui n'a pas a palir face a c++, et qui peut etre apprehende dans sa totalite par a peu pres tout le monde (et qui se traine effectivement certaines casseroles historiques, certes, mais c++ aussi, comme tout langages au final).