Existe-t-il des plateformes pour lesquelles l'offre est plus restrictive,
et
ne propose pour un prix donné qu'un compilateur C ?
Bien entendu, on ne programme pas que des ordinateurs, mais je connais un
peu l'informatique industrielle (ou automatisme) et justement il ne me
semble pas que ce domaine soit spécialement réfractaire au C++.
Existe-t-il des plateformes pour lesquelles l'offre est plus restrictive,
et
ne propose pour un prix donné qu'un compilateur C ?
Bien entendu, on ne programme pas que des ordinateurs, mais je connais un
peu l'informatique industrielle (ou automatisme) et justement il ne me
semble pas que ce domaine soit spécialement réfractaire au C++.
Existe-t-il des plateformes pour lesquelles l'offre est plus restrictive,
et
ne propose pour un prix donné qu'un compilateur C ?
Bien entendu, on ne programme pas que des ordinateurs, mais je connais un
peu l'informatique industrielle (ou automatisme) et justement il ne me
semble pas que ce domaine soit spécialement réfractaire au C++.
Bonjour,
Je me décide à poser cette question certainement peu originale.
(snip)
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Bonjour,
Je me décide à poser cette question certainement peu originale.
(snip)
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Bonjour,
Je me décide à poser cette question certainement peu originale.
(snip)
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Pierre Maurette wrote:Pas POO -> pourquoi C et non C++ ? (c'est ma question).
D'abord parce que les compilateur C existent sur quasiment toutes les
plateformes contrairement au C++.
Ensuite les compilateur C++ implemente plus ou moins bien la norme
contrairement au C, plus "simple" et qui est relativement bien
implémenté par les concepteurs de compilateur.
Enfin les compilateurs C++ modifie le nom des fonctions (le name
mangling ou decoration) de facon a permettre la surchage (plusieurs
fonctions avec le meme nom mais des arguments différents). Or jusqu'a
une periode recente chaque compilateur avait sa propre facon de modifier
le nom. Il en resultait qu'une librairie crée par un compilateur ne
pouvait etre utilisée que par un programme compilé par le meme compilateur.
Ca fait au moins trois bonnes raisons, mais il y en a certainement
d'autres.
Pierre Maurette wrote:
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
D'abord parce que les compilateur C existent sur quasiment toutes les
plateformes contrairement au C++.
Ensuite les compilateur C++ implemente plus ou moins bien la norme
contrairement au C, plus "simple" et qui est relativement bien
implémenté par les concepteurs de compilateur.
Enfin les compilateurs C++ modifie le nom des fonctions (le name
mangling ou decoration) de facon a permettre la surchage (plusieurs
fonctions avec le meme nom mais des arguments différents). Or jusqu'a
une periode recente chaque compilateur avait sa propre facon de modifier
le nom. Il en resultait qu'une librairie crée par un compilateur ne
pouvait etre utilisée que par un programme compilé par le meme compilateur.
Ca fait au moins trois bonnes raisons, mais il y en a certainement
d'autres.
Pierre Maurette wrote:Pas POO -> pourquoi C et non C++ ? (c'est ma question).
D'abord parce que les compilateur C existent sur quasiment toutes les
plateformes contrairement au C++.
Ensuite les compilateur C++ implemente plus ou moins bien la norme
contrairement au C, plus "simple" et qui est relativement bien
implémenté par les concepteurs de compilateur.
Enfin les compilateurs C++ modifie le nom des fonctions (le name
mangling ou decoration) de facon a permettre la surchage (plusieurs
fonctions avec le meme nom mais des arguments différents). Or jusqu'a
une periode recente chaque compilateur avait sa propre facon de modifier
le nom. Il en resultait qu'une librairie crée par un compilateur ne
pouvait etre utilisée que par un programme compilé par le meme compilateur.
Ca fait au moins trois bonnes raisons, mais il y en a certainement
d'autres.
POO -> C++ (ou autre chose).
POO pur et dur -> autre chose
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
POO -> C++ (ou autre chose).
POO pur et dur -> autre chose
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
POO -> C++ (ou autre chose).
POO pur et dur -> autre chose
Pas POO -> pourquoi C et non C++ ? (c'est ma question).
Sans oublier le mauvais support de la norme (et encore pour un moment), la
gestion des exceptions, le layout binaire des objets, la portabilite de la
STL, la stabilite des compilateurs... Autant d'incompatibilites entre
compilateurs, voir version d'un meme compilateur. Il va falloir encore
quelques annees avant d'atteindre la stabilite du C89, meme si beaucoup
d'efforts sont fait de ce cote.
Sans oublier le mauvais support de la norme (et encore pour un moment), la
gestion des exceptions, le layout binaire des objets, la portabilite de la
STL, la stabilite des compilateurs... Autant d'incompatibilites entre
compilateurs, voir version d'un meme compilateur. Il va falloir encore
quelques annees avant d'atteindre la stabilite du C89, meme si beaucoup
d'efforts sont fait de ce cote.
Sans oublier le mauvais support de la norme (et encore pour un moment), la
gestion des exceptions, le layout binaire des objets, la portabilite de la
STL, la stabilite des compilateurs... Autant d'incompatibilites entre
compilateurs, voir version d'un meme compilateur. Il va falloir encore
quelques annees avant d'atteindre la stabilite du C89, meme si beaucoup
d'efforts sont fait de ce cote.
Sans oublier le mauvais support de la norme (et encore pour un moment), la
gestion des exceptions, le layout binaire des objets, la portabilite de la
STL, la stabilite des compilateurs... Autant d'incompatibilites entre
compilateurs, voir version d'un meme compilateur. Il va falloir encore
quelques annees avant d'atteindre la stabilite du C89, meme si beaucoup
d'efforts sont fait de ce cote.
Je crois que tu es un peu de mauvaise fois. La norme actuelle du C qui date
de 1999 est sans doute nettement moins implémentée que la norme ISO C++98.
La compatibilité binaire entre compilateurs s'améliorent et les vendeurs
s'arrangent pour développer des ABI communes. Sous linux x86, par exemple,
Et l'on commence sans doute à arriver à une maturité
acceptable qui fait qu'un programme C++ compilant aujourd'hui compilera
encore l'année prochaine.
Sans oublier le mauvais support de la norme (et encore pour un moment), la
gestion des exceptions, le layout binaire des objets, la portabilite de la
STL, la stabilite des compilateurs... Autant d'incompatibilites entre
compilateurs, voir version d'un meme compilateur. Il va falloir encore
quelques annees avant d'atteindre la stabilite du C89, meme si beaucoup
d'efforts sont fait de ce cote.
Je crois que tu es un peu de mauvaise fois. La norme actuelle du C qui date
de 1999 est sans doute nettement moins implémentée que la norme ISO C++98.
La compatibilité binaire entre compilateurs s'améliorent et les vendeurs
s'arrangent pour développer des ABI communes. Sous linux x86, par exemple,
Et l'on commence sans doute à arriver à une maturité
acceptable qui fait qu'un programme C++ compilant aujourd'hui compilera
encore l'année prochaine.
Sans oublier le mauvais support de la norme (et encore pour un moment), la
gestion des exceptions, le layout binaire des objets, la portabilite de la
STL, la stabilite des compilateurs... Autant d'incompatibilites entre
compilateurs, voir version d'un meme compilateur. Il va falloir encore
quelques annees avant d'atteindre la stabilite du C89, meme si beaucoup
d'efforts sont fait de ce cote.
Je crois que tu es un peu de mauvaise fois. La norme actuelle du C qui date
de 1999 est sans doute nettement moins implémentée que la norme ISO C++98.
La compatibilité binaire entre compilateurs s'améliorent et les vendeurs
s'arrangent pour développer des ABI communes. Sous linux x86, par exemple,
Et l'on commence sans doute à arriver à une maturité
acceptable qui fait qu'un programme C++ compilant aujourd'hui compilera
encore l'année prochaine.
Laurent Deniau writes:
| Mon principe est qu'en lisant une fois une interface (un header) on devrait
Mauvais principe, changer de principe.
Les gens devraient pas lire les en-têtes, mais les spécifications et
les documentations.
[...]
| o on controle (presque) tout,
ce n'est qu'une (fausse) impression. De fait, on contrôle *moins* en C
qu'en C++. Pense typage, portée et abstraction. Ce sont des notions
premières de la programmation, mais il n'y a pratiquement rien en C
pour les supporter efficacement.
[...]
| o il est plus simple de resoudre des problemes "non-standard" en C
| qu'en C++. Il suffit de voir le niveau plutot basique des
| questions sur fclc par rapport aux questions sur fclc++. Cela
| montre clairement que le C++ est plus difficile a maitriser et
| qu'on devient plus rapidement "autonome" en C. Cela compte
| beaucoup quand l'equipe de development change souvent.
Si l'on doit prendre le « niveau basique » des questions comme
critère, alors la conclusion seraint plutôt qu'on ne fait rien
d'intéressant en C, ou que les gens qui l'utilise sont encore en
petites culottes et ne sont pas encore arrivés à maturité.
Mais, ce n'est pas le cas. De fait, le « niveau basique » des questions
ne donne pas une idée de la complexité requise pour résoudre un
problème en utilisant le C. Je dirais plutôt que cela en dit plus long
sur le niveau des gens qui fréquentent le groupe ou qui y posent des
questions. En comparaison, je te demanderais de regarder le niveau des
questions sur comp.std.c ou comp.lang.c.moderated par exemple.
Laurent Deniau <Laurent.Deniau@cern.ch> writes:
| Mon principe est qu'en lisant une fois une interface (un header) on devrait
Mauvais principe, changer de principe.
Les gens devraient pas lire les en-têtes, mais les spécifications et
les documentations.
[...]
| o on controle (presque) tout,
ce n'est qu'une (fausse) impression. De fait, on contrôle *moins* en C
qu'en C++. Pense typage, portée et abstraction. Ce sont des notions
premières de la programmation, mais il n'y a pratiquement rien en C
pour les supporter efficacement.
[...]
| o il est plus simple de resoudre des problemes "non-standard" en C
| qu'en C++. Il suffit de voir le niveau plutot basique des
| questions sur fclc par rapport aux questions sur fclc++. Cela
| montre clairement que le C++ est plus difficile a maitriser et
| qu'on devient plus rapidement "autonome" en C. Cela compte
| beaucoup quand l'equipe de development change souvent.
Si l'on doit prendre le « niveau basique » des questions comme
critère, alors la conclusion seraint plutôt qu'on ne fait rien
d'intéressant en C, ou que les gens qui l'utilise sont encore en
petites culottes et ne sont pas encore arrivés à maturité.
Mais, ce n'est pas le cas. De fait, le « niveau basique » des questions
ne donne pas une idée de la complexité requise pour résoudre un
problème en utilisant le C. Je dirais plutôt que cela en dit plus long
sur le niveau des gens qui fréquentent le groupe ou qui y posent des
questions. En comparaison, je te demanderais de regarder le niveau des
questions sur comp.std.c ou comp.lang.c.moderated par exemple.
Laurent Deniau writes:
| Mon principe est qu'en lisant une fois une interface (un header) on devrait
Mauvais principe, changer de principe.
Les gens devraient pas lire les en-têtes, mais les spécifications et
les documentations.
[...]
| o on controle (presque) tout,
ce n'est qu'une (fausse) impression. De fait, on contrôle *moins* en C
qu'en C++. Pense typage, portée et abstraction. Ce sont des notions
premières de la programmation, mais il n'y a pratiquement rien en C
pour les supporter efficacement.
[...]
| o il est plus simple de resoudre des problemes "non-standard" en C
| qu'en C++. Il suffit de voir le niveau plutot basique des
| questions sur fclc par rapport aux questions sur fclc++. Cela
| montre clairement que le C++ est plus difficile a maitriser et
| qu'on devient plus rapidement "autonome" en C. Cela compte
| beaucoup quand l'equipe de development change souvent.
Si l'on doit prendre le « niveau basique » des questions comme
critère, alors la conclusion seraint plutôt qu'on ne fait rien
d'intéressant en C, ou que les gens qui l'utilise sont encore en
petites culottes et ne sont pas encore arrivés à maturité.
Mais, ce n'est pas le cas. De fait, le « niveau basique » des questions
ne donne pas une idée de la complexité requise pour résoudre un
problème en utilisant le C. Je dirais plutôt que cela en dit plus long
sur le niveau des gens qui fréquentent le groupe ou qui y posent des
questions. En comparaison, je te demanderais de regarder le niveau des
questions sur comp.std.c ou comp.lang.c.moderated par exemple.