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

Comment sont créée les applications commerciales ?

77 réponses
Avatar
Spoofix
Salut,

J'aurais voulu savoir comment sont créée les applications comme Visual
Studio, Office, Nero, Photshop etc... quel langage ? Quels standards ? Quels
bibliotheques ?

Merci d'avance....
Clément.

10 réponses

Avatar
adebaene
"Alexandre" wrote in message news:<3f7dc677$0$28897$...

C++ est un bon langage (si on s'en sert bien) car à la fois bas niveau
(rapide à executer, possiblité d'écrire même un OS, un jeu ou un driver) que
ce soit avec l'EDI VC++ ou l'EDI BCB.



Mais pourquoi est-ce que tout le monde est persuadé que le C++ se
limite à VC ou BCB ??? :-(

Arnaud
Avatar
Patrick Philippot
Arnaud Debaene wrote:
Mais pourquoi est-ce que tout le monde est persuadé que le C++ se
limite à VC ou BCB ??? :-(



La réponse est assez simple, je crois.

Pour produire du soft, il faut d'abord un langage de qualité. Si l'on
choisit C++, les implémentations ne manquent pas et elles ne se
limitent pas à VC++ et à BCB, c'est très clair. Ceci étant, cela ne
couvre qu'une toute petite partie des besoins. Pour produire dans de
bonnes conditions, il faut:

- un IDE efficace
On peut toujours utiliser un compilateur C++ GNU avec un éditeur de
programmation GNU également ou commercial comme CodeWright, on
n'arrivera pas au niveau de confort fourni par BCB ou VC++. Il n'y a pas
dans les entreprises que des gens qui ont le goût, l'envie ou le temps
de programmer avec un compilateur, un éditeur et le SDK. Le nombre de
cours que je réalise sur l'architecture système et la programmation SDK
Win32 est en constante et rapide diminution. C'est un fait.

- des outils qui prennent en charge une partie du travail répétitif
(bibliothèques de classes, composants,...) et qui soient compatibles
avec l'environnement que l'on utilise. Les vendeurs d'outils ne ciblant
que les plates-formes les plus répandues, bien évidemment, le résultat
est facile à deviner.

- une framework de base qui prend en charge le travail répétitif de
manière intégrée à l'IDE: MFC, ou VCL ou OWL ou ???? Toutes les
frameworks C++ cross-IDE ou cross-platforms que j'ai connues sont mortes
ou presque aujourd'hui (Glockenspiel, Zinc, C++ Views,...).

- de la documentation et des exemples de code
Pour moi le MSDN est aussi vital que l'IDE ou le compilateur lui-même.
On trouve des bouquins sur VC++, BCB et ensuite?

- du support, des corrections publiées de manière régulière,...

Il y a dans la nature un tas de très bons langages jamais utilisés ou
des implémentations correctes de langages très populaires qui sont
également très peu utilisées. Que vaut un bon compilateur C++ s'il me
limite dans les outils que je peux utiliser ou s'il limite ma
productivité?

La préférence va donc naturellement aux éditeurs qui fournissent
l'ensemble de ces prestations, même si leur implémentation de C++, si
l'on reste sur cet exemple, peut être considérée comme moins bonne que
certaines autres, moins connues. J'ai vu il y a quelques années des
clients passer de Borland C++ à VC++ et de OWL aux MFC tout simplement
parce que l'environnement global de VC++ était plus productif et plus
complet que celui de BC++ même si à l'époque le compilateur MS était
largement moins bon. Et ce choix a été fait en toute connaissance de
cause.

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
Vincent Burel
"Patrick Philippot" wrote in message
news:3f828319$0$28891$
Arnaud Debaene wrote:
> Mais pourquoi est-ce que tout le monde est persuadé que le C++ se
> limite à VC ou BCB ??? :-(

La réponse est assez simple, je crois.

Pour produire du soft, il faut d'abord un langage de qualité. Si l'on
choisit C++, les implémentations ne manquent pas et elles ne se
limitent pas à VC++ et à BCB, c'est très clair. Ceci étant, cela ne
couvre qu'une toute petite partie des besoins. Pour produire dans de
bonnes conditions, il faut:

- un IDE efficace
On peut toujours utiliser un compilateur C++ GNU avec un éditeur de
programmation GNU également ou commercial comme CodeWright, on
n'arrivera pas au niveau de confort fourni par BCB ou VC++. Il n'y a pas
dans les entreprises que des gens qui ont le goût, l'envie ou le temps
de programmer avec un compilateur, un éditeur et le SDK. Le nombre de
cours que je réalise sur l'architecture système et la programmation SDK
Win32 est en constante et rapide diminution. C'est un fait.

- des outils qui prennent en charge une partie du travail répétitif
(bibliothèques de classes, composants,...) et qui soient compatibles
avec l'environnement que l'on utilise. Les vendeurs d'outils ne ciblant
que les plates-formes les plus répandues, bien évidemment, le résultat
est facile à deviner.

- une framework de base qui prend en charge le travail répétitif de
manière intégrée à l'IDE: MFC, ou VCL ou OWL ou ???? Toutes les
frameworks C++ cross-IDE ou cross-platforms que j'ai connues sont mortes
ou presque aujourd'hui (Glockenspiel, Zinc, C++ Views,...).

- de la documentation et des exemples de code
Pour moi le MSDN est aussi vital que l'IDE ou le compilateur lui-même.
On trouve des bouquins sur VC++, BCB et ensuite?

- du support, des corrections publiées de manière régulière,...

Il y a dans la nature un tas de très bons langages jamais utilisés ou
des implémentations correctes de langages très populaires qui sont
également très peu utilisées. Que vaut un bon compilateur C++ s'il me
limite dans les outils que je peux utiliser ou s'il limite ma
productivité?

La préférence va donc naturellement aux éditeurs qui fournissent
l'ensemble de ces prestations, même si leur implémentation de C++, si
l'on reste sur cet exemple, peut être considérée comme moins bonne que
certaines autres, moins connues. J'ai vu il y a quelques années des
clients passer de Borland C++ à VC++ et de OWL aux MFC tout simplement
parce que l'environnement global de VC++ était plus productif et plus
complet que celui de BC++ même si à l'époque le compilateur MS était
largement moins bon. Et ce choix a été fait en toute connaissance de
cause.



Serait -il possible que vous ayez autant de sens pratique !? :-)
En tout cas Bravo, je n'aurais pas dit mieux.
J'ajoute juste que si les faiseurs de solutions informatiques alternative
avaient (eu) ce sens pratique là, sur PC en tout cas, on ne se serait pas
emmerdé 10 ans sous Windows...

A+
Vincent Burel
Avatar
Patrick Philippot
Vincent Burel wrote:
J'ajoute juste que si les faiseurs de solutions informatiques
alternative avaient (eu) ce sens pratique là, sur PC en tout cas, on
ne se serait pas emmerdé 10 ans sous Windows...



Même je ne trouve pas Windows aussi déprimant que cela (au contraire),
je pense effectivement que dans un monde idéal, les partisans du libre
auraient la révélation soudaine qu'ils ne s'adressent pas qu'à des
hobbyistes, à des étudiants, à des chercheurs ou à des gens qui ont le
temps de recompiler un noyau tous les 4 matins et d'un autre côté, les
vendeurs de solutions "commerciales" auraient des pratiques un peu moins
agressives.

Au lieu de cela, le monde étant ce qu'il est, chacun défend sa chapelle
avec plus ou moins de raison et beaucoup de parti pris. Il est
d'ailleurs paradoxal de constater que dans le monde de l'informatique
qui est censé être basé sur un solide cartésianisme, le poids de
l'irrationnel, voire du religieux, soit aussi important.

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
adebaene
"Patrick Philippot" wrote in message news:<3f828319$0$28891$...
Arnaud Debaene wrote:
> Mais pourquoi est-ce que tout le monde est persuadé que le C++ se
> limite à VC ou BCB ??? :-(

La réponse est assez simple, je crois.

Pour produire du soft, il faut d'abord un langage de qualité. Si l'on
choisit C++, les implémentations ne manquent pas et elles ne se
limitent pas à VC++ et à BCB, c'est très clair. Ceci étant, cela ne
couvre qu'une toute petite partie des besoins. Pour produire dans de
bonnes conditions, il faut:

- un IDE efficace
On peut toujours utiliser un compilateur C++ GNU avec un éditeur de
programmation GNU également ou commercial comme CodeWright, on
n'arrivera pas au niveau de confort fourni par BCB ou VC++. Il n'y a pas
dans les entreprises que des gens qui ont le goût, l'envie ou le temps
de programmer avec un compilateur, un éditeur et le SDK. Le nombre de
cours que je réalise sur l'architecture système et la programmation SDK
Win32 est en constante et rapide diminution. C'est un fait.


Exact

- des outils qui prennent en charge une partie du travail répétitif
(bibliothèques de classes, composants,...) et qui soient compatibles
avec l'environnement que l'on utilise. Les vendeurs d'outils ne ciblant
que les plates-formes les plus répandues, bien évidemment, le résultat
est facile à deviner.


Et la STL?


- une framework de base qui prend en charge le travail répétitif de
manière intégrée à l'IDE: MFC, ou VCL ou OWL ou ???? Toutes les
frameworks C++ cross-IDE ou cross-platforms que j'ai connues sont mortes
ou presque aujourd'hui (Glockenspiel, Zinc, C++ Views,...).


WxWindows, Ilog, Boost, Loki, Blitz, ....


- de la documentation et des exemples de code
Pour moi le MSDN est aussi vital que l'IDE ou le compilateur lui-même.
On trouve des bouquins sur VC++, BCB et ensuite?


Ben, tous les bouquins de C++, indépendemment d'un compilo. Et on peut
avoir MSDN indépendamment de l'outil.

- du support, des corrections publiées de manière régulière,...


De ce point de vue, GCC est imbattable :-)

Il y a dans la nature un tas de très bons langages jamais utilisés ou
des implémentations correctes de langages très populaires qui sont
également très peu utilisées. Que vaut un bon compilateur C++ s'il me
limite dans les outils que je peux utiliser ou s'il limite ma
productivité?


Est-ce que la vraie raison n'est pas bêtement le poids commercial de
l'éditeur du soft? Ma remarque était surtout pour faire prendre
conscience aux gens qu'il y a generalement des tas de choses très
valabe à côté de leurs quelques outils qu'ils maitrisent et utilisent.


La préférence va donc naturellement aux éditeurs qui fournissent
l'ensemble de ces prestations, même si leur implémentation de C++, si
l'on reste sur cet exemple, peut être considérée comme moins bonne que
certaines autres, moins connues. J'ai vu il y a quelques années des
clients passer de Borland C++ à VC++ et de OWL aux MFC tout simplement
parce que l'environnement global de VC++ était plus productif et plus
complet que celui de BC++ même si à l'époque le compilateur MS était
largement moins bon. Et ce choix a été fait en toute connaissance de
cause.



2 petites remarques :
- il est possible d'utiliser différents produits ensemble. Exemple :
le compilateur Comeau avec l'IDE VC.
- Toutes tes remarques sous-entendent une utilisation dite "standard"
de l'outil : Faire une application GUI, attaquant un petit bout de
base de donnée, s'intégrant sans doute avec les derniers gadgets de
Windows.... Ca couvre certes un large panel mais pas tous les besoins,
loin de là : il y a des gens qui font des services Windows de calcul
numérique, des GUI 100% maison (jeux), des bilbiothèques portables,
etc.... Vive la diversité!

Arnaud
Avatar
Patrick Philippot
Arnaud Debaene wrote:
- des outils qui prennent en charge une partie du travail répétitif
(bibliothèques de classes, composants,...) et qui soient compatibles


Et la STL?



Je ne suis pas sûr que ce soit un outil à la portée du plus grand
nombre.

Est-ce que la vraie raison n'est pas bêtement le poids commercial de
l'éditeur du soft? Ma remarque était surtout pour faire prendre
conscience aux gens qu'il y a generalement des tas de choses très
valabe à côté de leurs quelques outils qu'ils maitrisent et utilisent.



Oui, justement. C'est ce que veulent un tas d'entreprises: travailler
avec un fournisseur qui a du poids, qui ne soit pas volatil. Il y a
beaucoup de gens qui sont effrayés par le côté "bazar" de certains
fournisseurs d'outils. Microsoft est identifiable. IBM est
indentifiable. Le fournisseur de LCC-Win32 dne l'est pas. Tu parles de
choix technique, ce qui convient à beaucoup de développeurs isolés mais
le propos des entreprises est de standardiser. J'ai un client, gros
industriel français qui a créé un département Méthodes et Outils. Quand
ils évaluent quels outils vont être mis entre les mains de centaines de
développeurs, l'aspect technique n'est qu'un élément parmi d'autres.

Quand je bossais chez IBM, on disait chez certains clients "on ne se
fera jamais eng....er pour avoir choisi IBM". Dans la plupart des
entreprises, on cherche à sécuriser l'achat. On établit une relation
avec un fournisseur. Si j'utilise un logiciel développé par une
communauté peu ou pas structurée, je parle à qui quand il y a un
problème? Les entreprises ont besoin de canaux de communication et
d'interlocuteurs clairement identifiés. Elles ne veulent pas avoir
affaire à une nébuleuse aux contours mal définis.

Prenons l'exemple de LCC-Win32. C'est bien fait, ça fonctionne mais je
n'engagerai jamais un client là-dessus. Par expérience. Trop petite
structure pour un outil clé dans un développement. Quand le C++ est
devenu à la mode, j'ai investi dans le compilateur Zortech. Ils sont où
maintenant? Repris par Symantec puis... rien.

- il est possible d'utiliser différents produits ensemble. Exemple :
le compilateur Comeau avec l'IDE VC.



Oui mais on se retrouve quasiment dans la même situation que si on
utilisait un éditeur avancé type CodeWright. Pas de fonction de
connexion entre l'éditeur, les différents wizards, les classes de la
framework,...

- Toutes tes remarques sous-entendent une utilisation dite "standard"
de l'outil : Faire une application GUI, attaquant un petit bout de
base de donnée, s'intégrant sans doute avec les derniers gadgets de
Windows.... Ca couvre certes un large panel mais pas tous les besoins,
loin de là : il y a des gens qui font des services Windows de calcul
numérique, des GUI 100% maison (jeux), des bilbiothèques portables,
etc.... Vive la diversité!



Certes. Mais je viens de finir un service NT sous VC++ en utilisant un
wizard spécialisé qui m'a économisé au minimum 50% du temps et je suis
modeste. Si j'avais utilisé un autre outil, j'aurais codé plus et plus
longtemps. Il est évident que l'on ne va pas développer un jeu video
avec les MFC. Mais tu le dis toi même, ce type d'activité est quasi
marginal par rapport aux activités de développement en général.

J'ai vendu en shareware il y a quelques années un éditeur de
programmation 16-bit assez avancé (syntax highlighting configurable,
récupération de l'output du compilo pour repérage des erreurs dans le
code source, etc...). Je l'ai vendu principalement à des gens qui
utilisaient des langages très spécialisés pour lesquels il n'y avait pas
d'IDE. cela signifie qu'il y a des créneaux à prendre et c'est tant
mieux pour celui qui en profite. Mais ce ne sont que des niches et le
gros de la clientèle recherche la stabilité, même au prix de certains
compromis techniques.

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
Patrick Philippot
Patrick Philippot wrote:
Quand le C++ est
devenu à la mode, j'ai investi dans le compilateur Zortech. Ils sont
où maintenant? Repris par Symantec puis... rien.



Je rectifie. Le compilateur a été cédé par Symantec à une petite boîte
qui le vend maintenant sous le nom de DigitalMars pour 25$. C'est le
genre d'aventure que je déteste et qui s'est répétée trop souvent ces
dernières années.

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
Mickael Pointier
Patrick Philippot wrote:
Patrick Philippot wrote:
Quand le C++ est
devenu à la mode, j'ai investi dans le compilateur Zortech. Ils sont
où maintenant? Repris par Symantec puis... rien.



Je rectifie. Le compilateur a été cédé par Symantec à une petite boîte
qui le vend maintenant sous le nom de DigitalMars pour 25$. C'est le
genre d'aventure que je déteste et qui s'est répétée trop souvent ces
dernières années.



Intéressant.
Je croyais que leur compilateur était fait par eux, ce qui me donnait
confiance quand au "D". Mais si le compilo C++ qu'ils proposent n'a pas
été fait par eux, d'un seul coup j'ai moins confiance dans leur capacité
à faire un autre langage ;(

Mike
Avatar
Patrick Philippot
Mickael Pointier wrote:
Intéressant.
Je croyais que leur compilateur était fait par eux, ce qui me donnait
confiance quand au "D". Mais si le compilo C++ qu'ils proposent n'a
pas été fait par eux, d'un seul coup j'ai moins confiance dans leur
capacité à faire un autre langage ;(



Ils peuvent être compétents quand même :-)) . Mais visiblement, le
package initial de Zortech a été découpé en rondelles et partagé entre
diverses sociétés. Par exemple, l'éditeur Zed est maintenant chez
Trumphurst.

J'ai vécu une aventure similaire avec l'environnement Kawa de Tek-Tools.
Racheté par Allaire puis récupéré 6 mois plus tard par Macromedia qui
faisant ami-ami avec Borland s'est empressé de laisser le champ libre à
JBuilder et de tuer le produit. Le nombre de victimes de cette manip est
tout à fait considérable, surtout parmi ceux qui avaient pris un
abonnement (le produit avait pas mal de bugs mais avec cette frénésie de
fusions / rachats, personne ne s'est préoccupé de les corriger). Au
moins, avec MS je suis plus tranquille: avant que quelqu'un ne les
rachète, j'ai le temps de voir venir.

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
Franck Guillaud
Patrick Philippot wrote:
Au moins, avec MS je suis plus
tranquille: avant que quelqu'un ne les rachète, j'ai le temps de voir
venir.



Certes, mais le temps au bout duquel Microsoft décidera de laisser
tomber le produit sera lui beaucoup moins long ;-)

Franck.