Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Avis sur les includes files

59 réponses
Avatar
Gégé
Salut,

Dans mon projet, j'ai cr=E9e un global.h qui contient tous les includes
des librairies annexes que j'utilise.
Du coup je mets ce global.h dans l'ent=EAte de mes classes ( qui
n'utilisent pas n=E9cessairement toutes les librairies =E0 la fois ).

Question : Est-ce qu'il vaut mieux mettre les #include au cas par cas
dans chaque header de les classes ? ( Et pourquoi ? )

Merci
G

ma principale motivation =E9tait de ne pas copier / coller des tonnes de
#include dans chaque .h

9 réponses

2 3 4 5 6
Avatar
pjb
Marc Boyer writes:

On 2009-02-05, Marc Espie wrote:
In article <498ab645$0$18363$,
Wykaaa wrote:
On ne peut pas raisonner en disant "les attentes des pros sont trop
hautes". Leurs attentes, on s'en fiche. C'est chaque application qui a
ses exigences. Si on fait un logiciel pour le pilotage d'une centrale
nucléaire, le niveau d'exigence qualité ne va pas être le même que si on
fait un logiciel de facturation... (ce sont les fameux "cost drivers" du
modèle d'estimation de coût des logiciels de Barry Boehm).
En résumé, ce ne sont pas les pros qui ont des exigences trop hautes, ce
sont les applications, en fonction de leur caractéristiques, qui
requièrent certains types d'exigences.



Moi je trouve au contraire que les attentes de l'industrie sont trop basses.
C'est pour ca qu'on se retrouve avec plein de logiciels qui ne marchent pas
bien, plein de problemes de securite, et des maitrise d'ouvrages debordees
sur des "evolutions" qui ne devraient pas avoir lieu d'etre.



Disons que, dans l'industrie en général, il faut un équilibre entre
qualité et coût final, mais en effet, en ce qui concerne l'informatique
des années 80 à nos jours, on serait plutôt globalement en déficit
de qualité il me semble.



Le problème, c'est que le coût final n'est pas répercuté. Si c'était
Microsoft qui devait payer pour le temps perdu à cause des bogues et
failles de sécurités dans ses systèmes, ils pourraient l'intégrer à
leurs évaluation, et commencer à développer autrement. Je dis
Microsoft, juste à titre emblématique, c'est pareil pour tous les
autres fournisseurs. Le coût des pannes et bogues est absorbé
globalement par les clients des logiciels, et leurs clients, c'est à
dire par la société entière en fin de compte, alors que les bénéfices
restent sont pour les sociétés informatiques.

Quand il y a une bogue dans une roue d'une voiture qui la fait
dérailler et planter dans le décor, au pour de quelques accidents, le
constructeur automobile est obligé de rappeler son modèle et de le
corriger. À ses propres frais! Et de compenser ses clients accidentés.

À quand le remboursement des dégâts, et la correction des bogues aux
frais du fournisseur informatique?


Une telle exigence serait dans l'intérêt des informaticiens eux mêmes,
puisque ça imposerait une augmentation de la qualité des logiciels, et
donc de la qualification et des rémunérations des informaticiens concernés.


Au XXIème siècle, notre projet de société s'est réduit
à un projet économique...



Jusqu'au mois d'Octobre 2008. Maintenant il faut trouver un autre
projet. :-)


--
__Pascal Bourguignon__
Avatar
Wykaaa
Pascal J. Bourguignon a écrit :
Wykaaa writes:
Je suis d'accord qu'il n'y a plus le côté "passionné" car
l'informatique n'est plus quelque chose de "nouveau" pour la
génération actuelle. Elle est "née avec" alors que pour nous ce
n'était pas le cas.
D'ailleurs lors d'une évaluation d'un de mes cours (j'ai fait des
formations d'adultes en entreprise : conception objet, C, C++, Java,
Ada, JavaScript, etc.), un (jeune) participant avait mis en remarque :
"trop passionné". Ceci m'avait choqué car pour moi c'était une
qualité...



Oui, c'est une qualité. Ne pas se laisser submerger par le fâdisme!



Merci, ça me rassure ;-)


Concernant le point 3, c'est à la discrétion de chacun. Je me
demande, vu la multiplicité des technologies aujourd'hui si il est
normal d'avoir les même attentes sur un domaine particulier.


On ne peut pas raisonner en disant "les attentes des pros sont trop
hautes". Leurs attentes, on s'en fiche. C'est chaque application qui a
ses exigences. Si on fait un logiciel pour le pilotage d'une centrale
nucléaire, le niveau d'exigence qualité ne va pas être le même que si
on fait un logiciel de facturation... (ce sont les fameux "cost
drivers" du modèle d'estimation de coût des logiciels de Barry Boehm).
En résumé, ce ne sont pas les pros qui ont des exigences trop hautes,
ce sont les applications, en fonction de leur caractéristiques, qui
requièrent certains types d'exigences.



Ouh là il faudrait évaluer ce qui est le plus mortel. Une petite
fuite d'une centrale nucléaire, ou une crise économique mondiale due à
un logiciel de comptabilité pourri, qui aura pour conséquence du
méga-chômage, des famines, et peut être des guerres!?

Pour moi, on n'y coupe pas, il faut assurrer la qualité de tous les
logiciels. Le problème, c'est qu'une fois vendus, ou publiés sur le
web, on ne maitrise pas ce qu'en font les utilisateurs. Les companies
comme Apple et Microsoft indiquent dans leurs licences que leurs
logiciels/matériels ne sont pas à utilisé dans des centrales
nucléaires ou pour des activité liées à des questions de vie ou de
mort, mais ça n'empêche pas de les y trouver dans de telles
applications. Alors la responsabilité légale des constructeurs est
dégagée, mais pas la responsabilité morale des développeurs.



Il faudrait certainement un "Ordre des Informaticiens", un peu comme
l'Ordre des médecins.
En tant que membre de IEEE, j'ai toujours essayé de me tenir à son code
éthique : http://www.ieee.org/portal/pages/iportals/aboutus/ethics/code.html

[couic le reste]
Avatar
Wykaaa
Pascal J. Bourguignon a écrit :
Wykaaa writes:
Je suis d'accord qu'il n'y a plus le côté "passionné" car
l'informatique n'est plus quelque chose de "nouveau" pour la
génération actuelle. Elle est "née avec" alors que pour nous ce
n'était pas le cas.
D'ailleurs lors d'une évaluation d'un de mes cours (j'ai fait des
formations d'adultes en entreprise : conception objet, C, C++, Java,
Ada, JavaScript, etc.), un (jeune) participant avait mis en remarque :
"trop passionné". Ceci m'avait choqué car pour moi c'était une
qualité...



Oui, c'est une qualité. Ne pas se laisser submerger par le fâdisme!


Concernant le point 3, c'est à la discrétion de chacun. Je me
demande, vu la multiplicité des technologies aujourd'hui si il est
normal d'avoir les même attentes sur un domaine particulier.


On ne peut pas raisonner en disant "les attentes des pros sont trop
hautes". Leurs attentes, on s'en fiche. C'est chaque application qui a
ses exigences. Si on fait un logiciel pour le pilotage d'une centrale
nucléaire, le niveau d'exigence qualité ne va pas être le même que si
on fait un logiciel de facturation... (ce sont les fameux "cost
drivers" du modèle d'estimation de coût des logiciels de Barry Boehm).
En résumé, ce ne sont pas les pros qui ont des exigences trop hautes,
ce sont les applications, en fonction de leur caractéristiques, qui
requièrent certains types d'exigences.



Ouh là il faudrait évaluer ce qui est le plus mortel. Une petite
fuite d'une centrale nucléaire, ou une crise économique mondiale due à
un logiciel de comptabilité pourri, qui aura pour conséquence du
méga-chômage, des famines, et peut être des guerres!?



Ah et bien, justement, je viens de recevoir de IEEE un pointeur sur cet
article, en plein dans notre sujet :
http://www2.computer.org/portal/web/buildyourcareer/careerwatch/jt12

[couic]
Avatar
espie
In article ,
Marc Boyer wrote:
Et puis il y a le status spécifique du C: comme c'est encore
*le* langage utilisé par pas mal de filière non informatique,
mais qu'on répugne à recruter quelqu'un qui ne fasse que ça.
Un peu comme si on faisait donner des cours d'anglais
par des chercheurs en bio en fac de bio...



Huh ? la plupart des filieres que je connais non informatique sont passees
au java ou a python ou assimile...
Avatar
Marc Boyer
On 2009-02-05, Marc Espie wrote:
In article ,
Marc Boyer wrote:
Et puis il y a le status spécifique du C: comme c'est encore
*le* langage utilisé par pas mal de filière non informatique,
mais qu'on répugne à recruter quelqu'un qui ne fasse que ça.
Un peu comme si on faisait donner des cours d'anglais
par des chercheurs en bio en fac de bio...



Huh ? la plupart des filieres que je connais non informatique sont passees
au java ou a python ou assimile...



Tu as raison, mon point de vue date un peu.
Le mouvement est effet dans ce sens.

Marc Boyer
--
Au XXIème siècle, notre projet de société s'est réduit
à un projet économique...
Avatar
pjb
Wykaaa writes:
Ouh là il faudrait évaluer ce qui est le plus mortel. Une petite
fuite d'une centrale nucléaire, ou une crise économique mondiale due à
un logiciel de comptabilité pourri, qui aura pour conséquence du
méga-chômage, des famines, et peut être des guerres!?



Ah et bien, justement, je viens de recevoir de IEEE un pointeur sur
cet article, en plein dans notre sujet :
http://www2.computer.org/portal/web/buildyourcareer/careerwatch/jt12



Le problème reste que tant que les entreprises ne sont pas
responsables financièrement de la qualité de leurs logiciels et des
conséquences, elles n'ont aucun intérêt à payer des ingénieurs pour
prendre le temps de bien faire les choses. La seule chose commune à
tous les boulots qu'on va trouver sur les CV des informaticiens,
c'est : « faites nous un petit hack rapide, c'est pas grâve s'il y a des
bogues, il faut qu'on livre au client ».

--
__Pascal Bourguignon__
Avatar
Marc Boyer
On 2009-02-05, Pascal J. Bourguignon wrote:
Marc Boyer writes:
On 2009-02-05, Marc Espie wrote:
In article <498ab645$0$18363$,
Wykaaa wrote:
Moi je trouve au contraire que les attentes de l'industrie sont trop basses.
C'est pour ca qu'on se retrouve avec plein de logiciels qui ne marchent pas
bien, plein de problemes de securite, et des maitrise d'ouvrages debordees
sur des "evolutions" qui ne devraient pas avoir lieu d'etre.



Disons que, dans l'industrie en général, il faut un équilibre entre
qualité et coût final, mais en effet, en ce qui concerne l'informatique
des années 80 à nos jours, on serait plutôt globalement en déficit
de qualité il me semble.



Le problème, c'est que le coût final n'est pas répercuté. Si c'était
Microsoft qui devait payer pour le temps perdu à cause des bogues et
failles de sécurités dans ses systèmes, ils pourraient l'intégrer à
leurs évaluation, et commencer à développer autrement. Je dis
Microsoft, juste à titre emblématique, c'est pareil pour tous les
autres fournisseurs. Le coût des pannes et bogues est absorbé
globalement par les clients des logiciels, et leurs clients, c'est à
dire par la société entière en fin de compte, alors que les bénéfices
restent sont pour les sociétés informatiques.



Oui et non.
En effet, quand un industriel est responsable du produit finit,
il fait attention à la qualité. Dans le domaine aéronautique que
je connais bien, en effet, le logiciel est assez blindé.
Après, ce sur quoi joue l'informatique, c'est que les gains
en productivités induits pour un très faible coût (oui, on se plaint
toujours que ce soit trop cher, mais bon, ça reste pas cher) font
qu'on accepte de payer la taxe.

À quand le remboursement des dégâts, et la correction des bogues aux
frais du fournisseur informatique?



Ce serait une révolution dans l'équilibre économique.

Une telle exigence serait dans l'intérêt des informaticiens eux mêmes,
puisque ça imposerait une augmentation de la qualité des logiciels, et
donc de la qualification et des rémunérations des informaticiens concernés.



C'est bien possible.

Au XXIème siècle, notre projet de société s'est réduit
à un projet économique...



Jusqu'au mois d'Octobre 2008. Maintenant il faut trouver un autre
projet. :-)



Non, les seules questions sont celles de la gestion de la crise
économiques.

Marc Boyer
--
Au XXIème siècle, notre projet de société s'est réduit
à un projet économique...
Avatar
Wykaaa
Pascal J. Bourguignon a écrit :
Wykaaa writes:
Ouh là il faudrait évaluer ce qui est le plus mortel. Une petite
fuite d'une centrale nucléaire, ou une crise économique mondiale due à
un logiciel de comptabilité pourri, qui aura pour conséquence du
méga-chômage, des famines, et peut être des guerres!?


Ah et bien, justement, je viens de recevoir de IEEE un pointeur sur
cet article, en plein dans notre sujet :
http://www2.computer.org/portal/web/buildyourcareer/careerwatch/jt12



Le problème reste que tant que les entreprises ne sont pas
responsables financièrement de la qualité de leurs logiciels et des
conséquences, elles n'ont aucun intérêt à payer des ingénieurs pour
prendre le temps de bien faire les choses. La seule chose commune à
tous les boulots qu'on va trouver sur les CV des informaticiens,
c'est : « faites nous un petit hack rapide, c'est pas grâve s'il y a des
bogues, il faut qu'on livre au client ».



Mais hélas, cette attitude est quand même assez éloignée de celle du
génie civil alors que la société est de plus en plus tributaire de
l'informatique. N'y a-t-il pas là comme une espèce de contradiction ou,
du moins, une certaine légèreté vis-à-vis des problèmes (voir les gros
bugs chez les fournisseurs de téléphonie mobile)
Avatar
pjb
Wykaaa writes:

Pascal J. Bourguignon a écrit :
Wykaaa writes:
Ouh là il faudrait évaluer ce qui est le plus mortel. Une petite
fuite d'une centrale nucléaire, ou une crise économique mondiale due à
un logiciel de comptabilité pourri, qui aura pour conséquence du
méga-chômage, des famines, et peut être des guerres!?


Ah et bien, justement, je viens de recevoir de IEEE un pointeur sur
cet article, en plein dans notre sujet :
http://www2.computer.org/portal/web/buildyourcareer/careerwatch/jt12


Le problème reste que tant que les entreprises ne sont pas
responsables financièrement de la qualité de leurs logiciels et des
conséquences, elles n'ont aucun intérêt à payer des ingénieurs pour
prendre le temps de bien faire les choses. La seule chose commune à
tous les boulots qu'on va trouver sur les CV des informaticiens,
c'est : « faites nous un petit hack rapide, c'est pas grâve s'il y a des
bogues, il faut qu'on livre au client ».



Mais hélas, cette attitude est quand même assez éloignée de celle du
génie civil alors que la société est de plus en plus tributaire de
l'informatique. N'y a-t-il pas là comme une espèce de contradiction
ou, du moins, une certaine légèreté vis-à-vis des problèmes (voir les
gros bugs chez les fournisseurs de téléphonie mobile)



Oui bien entendu. C'est un des nombreux points qui ne vont pas trés
bien dans notre société.

--
__Pascal Bourguignon__
2 3 4 5 6