Je cherche des articles sur des r=E8gles =E0 adopter dans un projet C++.
Mon projet commence =E0 devenir important, et j'aimerais l'assainir d=E8s
maintenant pour =E9viter des complications futures. Auriez-vous quelques
bonnes adresses ?
-> ou faut il placer les namespace ? (j'ai cru comprendre qu'il
fallait =E9viter les ent=EAt=E9s)
-> doit-on includer un fichier commun ( si par exemple tout le projet
=E7a se servir d'une fonction de base )
-> utilisation des macros, des constantes, des enums ...
etc.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Wykaaa
Gégé a écrit :
Bonjour,
Je cherche des articles sur des règles à adopter dans un projet C++. Mon projet commence à devenir important, et j'aimerais l'assainir dès maintenant pour éviter des complications futures. Auriez-vous quelques bonnes adresses ?
-> ou faut il placer les namespace ? (j'ai cru comprendre qu'il fallait éviter les entêtés) -> doit-on includer un fichier commun ( si par exemple tout le projet ça se servir d'une fonction de base ) -> utilisation des macros, des constantes, des enums ... etc.
Merci G
En fait tu cherches un manuel de règles de programmation C++.
Il y a ce document (en anglais), le meilleur : www.research.att.com/~bs/JSF-AV-rules.pdf Ou ceci (beaucoup moins complet) : http://geosoft.no/development/cppstyle.html
Gégé a écrit :
Bonjour,
Je cherche des articles sur des règles à adopter dans un projet C++.
Mon projet commence à devenir important, et j'aimerais l'assainir dès
maintenant pour éviter des complications futures. Auriez-vous quelques
bonnes adresses ?
-> ou faut il placer les namespace ? (j'ai cru comprendre qu'il
fallait éviter les entêtés)
-> doit-on includer un fichier commun ( si par exemple tout le projet
ça se servir d'une fonction de base )
-> utilisation des macros, des constantes, des enums ...
etc.
Merci
G
En fait tu cherches un manuel de règles de programmation C++.
Il y a ce document (en anglais), le meilleur :
www.research.att.com/~bs/JSF-AV-rules.pdf
Ou ceci (beaucoup moins complet) :
http://geosoft.no/development/cppstyle.html
Je cherche des articles sur des règles à adopter dans un projet C++. Mon projet commence à devenir important, et j'aimerais l'assainir dès maintenant pour éviter des complications futures. Auriez-vous quelques bonnes adresses ?
-> ou faut il placer les namespace ? (j'ai cru comprendre qu'il fallait éviter les entêtés) -> doit-on includer un fichier commun ( si par exemple tout le projet ça se servir d'une fonction de base ) -> utilisation des macros, des constantes, des enums ... etc.
Merci G
En fait tu cherches un manuel de règles de programmation C++.
Il y a ce document (en anglais), le meilleur : www.research.att.com/~bs/JSF-AV-rules.pdf Ou ceci (beaucoup moins complet) : http://geosoft.no/development/cppstyle.html
Je cherche des articles sur des règles à adopter dans un projet C++. Mon projet commence à devenir important, et j'aimerais l'assainir dès maintenant pour éviter des complications futures. Auriez-vous quelques bonnes adresses ?
Je ne crois pas que tu puisses en trouver un qui convient parfaitement. Il vaut mieux en créer un toi-même, en remassant des idées d'un peu partout. Quelques liens pour commencer :
http://www.doc.ic.ac.uk/lab/cplus/c++.rules C'était une quasi-référence dans le temps. Très datée aujourd'hui, mais il y a sans doute beaucoup qui vaut encore.
http://www.boost.org/development/requirements.html C'est les règles de Boost. Un peu spécial en partie parce qu'ils visent une integration ultérieur dans la norme. (Ça touche, par exemple, les conventions de nommage, mais aussi des choses comme les questions de portabilité.)
http://pcroot.cern.ch/TaligentDocs/TaligentOnline/DocumentRoot/1.0/Docs/boo ks/WM/WM_1.html Là aussi, pas les plus actuels, mais vaut la peine d'être regardé.
https://developer.mozilla.org/En/Mozilla_Coding_Style_Guide and https://developer.mozilla.org/En/C___Portability_Guide D'une vraie application, encore actuelle.
Sinon, les livres reconnus (Scott Meyers, Herb Sutter) peuvent aussi donner des idées.
Dans l'ensemble, en revanche, il faut garder un peu de scepticisme ; aucune des sources ci-dessus n'est parfaites, et à côté de beaucoup de bonnes idées, toutes contiennent soit des mauveauses règles soit des règles trop datées à utiliser aujourd'hui. (Donc, par exemple, plusieurs cités ci-dessus suggèrent mettre toutes les constantes en toute majuscule, alors qu'il s'est établi un consensus actuellement que seulement les macros doivent être toute majuscule.)
-> ou faut il placer les namespace ? (j'ai cru comprendre qu'il fallait éviter les entêtés)
Je ne suis pas sûr de comprendre. Les namespaces, il faut bien les mettres dans les en-têtes, si on va s'en servir.
-> doit-on includer un fichier commun ( si par exemple tout le projet ça se servir d'une fonction de base )
Ça dépend du projet, mais la plupart des projets que je connais ont bien un en-tête global, qui doit toujours être inclu le premier. Dans mon code, par exemple, il sert à définir la version, qui se trouve encodé dans le namespace, de façon qu'on ne peut pas compiler contre une version, et linker contre une autre. Il sert aussi à inclure la définition de la configuration (Windows, Unix, etc.), de façon à pouvoir incorporer des en-têtes qui dépend de l'implémentation par la suite, avec par exemple :
-> utilisation des macros, des constantes, des enums ... etc.
Dans l'ensemble, ça va dépendre de ton compilateur et de tes exigeances de portabilité. (Sauf qu'on n'utilise pas les macros pour des constantes.)
-- James Kanze (GABI Software) email: Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
On Apr 26, 10:06 am, Gégé <val...@gmail.com> wrote:
Je cherche des articles sur des règles à adopter dans un
projet C++. Mon projet commence à devenir important, et
j'aimerais l'assainir dès maintenant pour éviter des
complications futures. Auriez-vous quelques bonnes adresses ?
Je ne crois pas que tu puisses en trouver un qui convient
parfaitement. Il vaut mieux en créer un toi-même, en remassant
des idées d'un peu partout. Quelques liens pour commencer :
http://www.doc.ic.ac.uk/lab/cplus/c++.rules
C'était une quasi-référence dans le temps. Très datée
aujourd'hui, mais il y a sans doute beaucoup qui vaut
encore.
http://www.boost.org/development/requirements.html
C'est les règles de Boost. Un peu spécial en partie parce
qu'ils visent une integration ultérieur dans la norme. (Ça
touche, par exemple, les conventions de nommage, mais aussi
des choses comme les questions de portabilité.)
http://pcroot.cern.ch/TaligentDocs/TaligentOnline/DocumentRoot/1.0/Docs/boo ks/WM/WM_1.html
Là aussi, pas les plus actuels, mais vaut la peine d'être
regardé.
https://developer.mozilla.org/En/Mozilla_Coding_Style_Guide and
https://developer.mozilla.org/En/C___Portability_Guide
D'une vraie application, encore actuelle.
Sinon, les livres reconnus (Scott Meyers, Herb Sutter) peuvent
aussi donner des idées.
Dans l'ensemble, en revanche, il faut garder un peu de
scepticisme ; aucune des sources ci-dessus n'est parfaites, et à
côté de beaucoup de bonnes idées, toutes contiennent soit des
mauveauses règles soit des règles trop datées à utiliser
aujourd'hui. (Donc, par exemple, plusieurs cités ci-dessus
suggèrent mettre toutes les constantes en toute majuscule, alors
qu'il s'est établi un consensus actuellement que seulement les
macros doivent être toute majuscule.)
-> ou faut il placer les namespace ? (j'ai cru comprendre
qu'il fallait éviter les entêtés)
Je ne suis pas sûr de comprendre. Les namespaces, il faut bien
les mettres dans les en-têtes, si on va s'en servir.
-> doit-on includer un fichier commun ( si par exemple tout le
projet ça se servir d'une fonction de base )
Ça dépend du projet, mais la plupart des projets que je connais
ont bien un en-tête global, qui doit toujours être inclu le
premier. Dans mon code, par exemple, il sert à définir la
version, qui se trouve encodé dans le namespace, de façon qu'on
ne peut pas compiler contre une version, et linker contre une
autre. Il sert aussi à inclure la définition de la
configuration (Windows, Unix, etc.), de façon à pouvoir
incorporer des en-têtes qui dépend de l'implémentation par la
suite, avec par exemple :
Je cherche des articles sur des règles à adopter dans un projet C++. Mon projet commence à devenir important, et j'aimerais l'assainir dès maintenant pour éviter des complications futures. Auriez-vous quelques bonnes adresses ?
Je ne crois pas que tu puisses en trouver un qui convient parfaitement. Il vaut mieux en créer un toi-même, en remassant des idées d'un peu partout. Quelques liens pour commencer :
http://www.doc.ic.ac.uk/lab/cplus/c++.rules C'était une quasi-référence dans le temps. Très datée aujourd'hui, mais il y a sans doute beaucoup qui vaut encore.
http://www.boost.org/development/requirements.html C'est les règles de Boost. Un peu spécial en partie parce qu'ils visent une integration ultérieur dans la norme. (Ça touche, par exemple, les conventions de nommage, mais aussi des choses comme les questions de portabilité.)
http://pcroot.cern.ch/TaligentDocs/TaligentOnline/DocumentRoot/1.0/Docs/boo ks/WM/WM_1.html Là aussi, pas les plus actuels, mais vaut la peine d'être regardé.
https://developer.mozilla.org/En/Mozilla_Coding_Style_Guide and https://developer.mozilla.org/En/C___Portability_Guide D'une vraie application, encore actuelle.
Sinon, les livres reconnus (Scott Meyers, Herb Sutter) peuvent aussi donner des idées.
Dans l'ensemble, en revanche, il faut garder un peu de scepticisme ; aucune des sources ci-dessus n'est parfaites, et à côté de beaucoup de bonnes idées, toutes contiennent soit des mauveauses règles soit des règles trop datées à utiliser aujourd'hui. (Donc, par exemple, plusieurs cités ci-dessus suggèrent mettre toutes les constantes en toute majuscule, alors qu'il s'est établi un consensus actuellement que seulement les macros doivent être toute majuscule.)
-> ou faut il placer les namespace ? (j'ai cru comprendre qu'il fallait éviter les entêtés)
Je ne suis pas sûr de comprendre. Les namespaces, il faut bien les mettres dans les en-têtes, si on va s'en servir.
-> doit-on includer un fichier commun ( si par exemple tout le projet ça se servir d'une fonction de base )
Ça dépend du projet, mais la plupart des projets que je connais ont bien un en-tête global, qui doit toujours être inclu le premier. Dans mon code, par exemple, il sert à définir la version, qui se trouve encodé dans le namespace, de façon qu'on ne peut pas compiler contre une version, et linker contre une autre. Il sert aussi à inclure la définition de la configuration (Windows, Unix, etc.), de façon à pouvoir incorporer des en-têtes qui dépend de l'implémentation par la suite, avec par exemple :
-> utilisation des macros, des constantes, des enums ... etc.
Dans l'ensemble, ça va dépendre de ton compilateur et de tes exigeances de portabilité. (Sauf qu'on n'utilise pas les macros pour des constantes.)
-- James Kanze (GABI Software) email: Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
espie
Le bouquin de Lakos (large scale C++ software development) est une lecture interessante pour les gros projets.
En particulier, ca explique un peu comment bien separer ses entetes, ce qui a l'air tout con sur les petits projets, mais devient indispensable sur les tres gros...
Le bouquin de Lakos (large scale C++ software development) est une lecture
interessante pour les gros projets.
En particulier, ca explique un peu comment bien separer ses entetes,
ce qui a l'air tout con sur les petits projets, mais devient indispensable
sur les tres gros...
Le bouquin de Lakos (large scale C++ software development) est une lecture interessante pour les gros projets.
En particulier, ca explique un peu comment bien separer ses entetes, ce qui a l'air tout con sur les petits projets, mais devient indispensable sur les tres gros...
Wykaaa
Marc Espie a écrit :
Le bouquin de Lakos (large scale C++ software development) est une lecture interessante pour les gros projets.
En particulier, ca explique un peu comment bien separer ses entetes, ce qui a l'air tout con sur les petits projets, mais devient indispensable sur les tres gros...
C'est toujours important de bien séparer les en-têtes , même sur des petits projets car comme chacun sait, tout petit projet est susceptible de devenir grand ;-)
Marc Espie a écrit :
Le bouquin de Lakos (large scale C++ software development) est une lecture
interessante pour les gros projets.
En particulier, ca explique un peu comment bien separer ses entetes,
ce qui a l'air tout con sur les petits projets, mais devient indispensable
sur les tres gros...
C'est toujours important de bien séparer les en-têtes , même sur des
petits projets car comme chacun sait, tout petit projet est susceptible
de devenir grand ;-)
Le bouquin de Lakos (large scale C++ software development) est une lecture interessante pour les gros projets.
En particulier, ca explique un peu comment bien separer ses entetes, ce qui a l'air tout con sur les petits projets, mais devient indispensable sur les tres gros...
C'est toujours important de bien séparer les en-têtes , même sur des petits projets car comme chacun sait, tout petit projet est susceptible de devenir grand ;-)
Mickaël Wolff
James Kanze wrote:
Je ne suis pas sûr de comprendre. Les namespaces, il faut bien les mettres dans les en-têtes, si on va s'en servir.
Je pense qu'il a mal formulé, et que Gégé pensait à l'usage de using dans les en-tetes.