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

1 2 3 4 5
Avatar
Fabien SK
Spoofix wrote:

Salut,

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



En C++ (enfin je suis prêt à le parier). VC++ utilise les MFCs, mais ça
doit bien être le seul chez Microsoft. J'imagine que chacun doit
développer ses outils.
Avatar
Patrick Philippot
Spoofix wrote:
J'aurais voulu savoir comment sont créée les applications comme Visual
Studio, Office, Nero, Photshop etc... quel langage ? Quels standards
? Quels bibliotheques ?



La réponse est simple: il n'y a aucune règle et pas de réponse. Pour le
langage cela va de VB à VC++ en passant par Delphi, BCB et Java. Pour
les standards, cela va des gens qui utilisent une méthodologie pour
analyser et concevoir à ceux qui partent bille en tête sur un RAD et qui
programment "visuellement" (je dirais plutôt "à vue"). Quant aux
bibliothèques, ce sont celles liées en général à l'outil: ATL et MFC
pour VC++, VCL pour Delphi, etc...

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
Spoofix
Merci pour vos réponses....
Y'a-t-il un moyen de savoir comment a été créée une application (langage,
compilo....). J'avais deja vu un logiciel qui indiquait quel compilo avait
été utilisé....
Sinon, existe-t-il de "grosses" applications qui se basent uniquement sur
l'API Win32.... avec des resources (.rc ds VC++) ?

Clément.
Avatar
Patrick Philippot
Spoofix wrote:
Y'a-t-il un moyen de savoir comment a été créée une application
(langage, compilo....). J'avais deja vu un logiciel qui indiquait
quel compilo avait été utilisé....



Avec un peu d'expérience, un éditeur / viewer hexa et un moniteur de
fenêtres comme Spy++, on peut très facilement voir si une appli a été
développée avec VB, VC++ MFC, VC++ ATL, un langage .Net quelconque,
Delphi, voire BCB. En général les noms de classes de fenêtres sont
spécifiques ou les DLLs dont dépend l'exe sont reconnaissables. Pas
besoin de logiciel spécialisé pour cela.

Sinon, existe-t-il de "grosses" applications qui se basent uniquement
sur l'API Win32.... avec des resources (.rc ds VC++) ?



Sans aucun doute.

--
Patrick Philippot - Microsoft MVP [.Net]
MainSoft Consulting Services
www.mainsoft.xx
(remplacez .xx par .fr si vous répondez par e-mail)
Avatar
Quentin Pouplard
Spoofix wrote:
Merci pour vos réponses....
Y'a-t-il un moyen de savoir comment a été créée une application
(langage, compilo....). J'avais deja vu un logiciel qui indiquait quel
compilo avait été utilisé....



En général un rapide coup d'oeuil vers les dlls utilisées permet de se
donner une idée (avant même les outils "spécialisés"...).

Sinon, existe-t-il de "grosses" applications qui se basent uniquement
sur l'API Win32.... avec des resources (.rc ds VC++) ?



Oui et non, ça dépend ce que tu entends "se baser uniquement sur Win32",
n'importe quelle application windows se base au final sur Win32, ce qui
change ce sont les couches entre le développeur et l'appliction. Pour
beaucoup d'application, ces couches sont développés en interne,
uniquement dans ce but ou non...

Tous le problème est donc de savoir ou se situe la limite entre Win32 et
le reste, tu as par exemple l'air de considérer les resoures "comme
faisant partie de Win32" pourtant c'est déjà une certaines
abstraction... certains préfèrent leur propre système de resources.

--
Quentin Pouplard (Tene/MyOE)
http://www.myoe.org | http://graff.alrj.org
Avatar
Spoofix
> Tous le problème est donc de savoir ou se situe la limite entre Win32 et
le reste, tu as par exemple l'air de considérer les resoures "comme
faisant partie de Win32" pourtant c'est déjà une certaines
abstraction... certains préfèrent leur propre système de resources.



Oui, c'est vrai.....
Donc, certains créent eux meme une couche "maison" par dessus l'API Win32 ?
C'est bien ca ?
Actuellement, qu'est-ce qui selon vous le plus rapide/puissant ?

Merci pour vos (nombreuses) reponses....
Avatar
Quentin Pouplard
Spoofix wrote:
> Tous le problème est donc de savoir ou se situe la limite entre
> Win32 et le reste, tu as par exemple l'air de considérer les
> resoures "comme faisant partie de Win32" pourtant c'est déjà une
> certaines abstraction... certains préfèrent leur propre système de
> resources.

Oui, c'est vrai.....
Donc, certains créent eux meme une couche "maison" par dessus l'API
Win32 ?



Oui, Office par exemple utilise une couche "maison"... MFC a été utilisé
(est toujours?) pour Visual C++, ils développaient sans doute les deux
de front. Si tu regardes les logiciels d'adobe, tu retrouves certains
point communs qui laissent à penser que leur logiciel utilisent les
même librairies, etc...

Ceci dit, même toi si ton application à plus d'une demi fenêtre tu te
fais "des trucs pour accélerer ton développement" que ce soit via des
macros, fonctions, classes, etc... tu te rends la vie plus simple, c'est
le début d'une "couche intermédiaire".

C'est bien ca ?
Actuellement, qu'est-ce qui selon vous le plus rapide/puissant ?



Ca ne veut rien dire, cela dépend de ton application, tes besoins, tes
contraintes... par exemple VB est (et a toujours) été réputé lent
(VB.NET change la donne cependant), mais dans certains cas il est
parfaitement adapté.

Un langage rapide n'est rapide que dans un contexte, et en général 99%
de la vitesse est déterminé par le design et non pas le langage en soit.
Un langage est puissant quand quoi? quand il te permet de faire ce que
tu veux? il le permette tous... c'est dans la façon de faire que ça
deviendra plus ou moins "puissant" et cela ça dépend avant tout du
programmeur et de ses connaissances...

Ceci dit, tu poses ces questions dans le but de te lancer dans la prog?


--
Quentin Pouplard (Tene/MyOE)
http://www.myoe.org | http://graff.alrj.org
Avatar
Spoofix
> Ca ne veut rien dire, cela dépend de ton application, tes besoins, tes
contraintes... par exemple VB est (et a toujours) été réputé lent
(VB.NET change la donne cependant), mais dans certains cas il est
parfaitement adapté.



Oui, mais il est lourd en taille (rien que les dll necessaires, pas toujours
presentes sur les systemes).

Un langage rapide n'est rapide que dans un contexte, et en général 99%
de la vitesse est déterminé par le design et non pas le langage en soit.
Un langage est puissant quand quoi? quand il te permet de faire ce que
tu veux? il le permette tous... c'est dans la façon de faire que ça
deviendra plus ou moins "puissant" et cela ça dépend avant tout du
programmeur et de ses connaissances...



Oui, je suis tout a fait d'accord, mais pour un programmeur donné, le C++
lui offrira davantage de puissance (ds le sens de "possibilité") que VB.
Personne ne songe serieusement a commercialiser un jeu 3D ecrit en VB, non ?

Ceci dit, tu poses ces questions dans le but de te lancer dans la prog?



Non, non, ca fait deja un petit moment que je programme (qqs années
quoi...), pour l'instant, coté prog windows, j'ai fait un tout petit peu de
MFC, et surtout de la prog Win32 API + ressources (.rc). Comme le code
devient assez compliqué des que l'appli grossit, je me demandais ce que les
autres utilisaient.....
Une question, a ce propos, est-t-il possible d'obtenir plus de "controls"
que ceux proposés pas l'editeur de ressource de VC++, tout en utilisant
uniquement l'API Win32 ?

Merci.
Clément.
Avatar
Arnaud Debaene
Spoofix wrote:
Oui, je suis tout a fait d'accord, mais pour un programmeur donné, le
C++ lui offrira davantage de puissance (ds le sens de "possibilité")
que VB.


Oui, encore faut-il que le programmeur sache exploiter ces possiblités
(orientation objet, templates, .....)

Personne ne songe serieusement a commercialiser un jeu 3D
ecrit en VB, non ?


Les gros projets complexes sont rarement dans 1 langage : tu peux très bien
imaginer un jeu où les ection critiques en terme de performances
(l'affichage essentiellement) sont en C voire très localement en assembleur
et où le moteur de plus haut niveau de fonctionnement de l'appli est en .NET
/ Java / Delphi / VB / un langage de script maison.


Non, non, ca fait deja un petit moment que je programme (qqs années
quoi...), pour l'instant, coté prog windows, j'ai fait un tout petit
peu de MFC, et surtout de la prog Win32 API + ressources (.rc). Comme
le code devient assez compliqué des que l'appli grossit, je me
demandais ce que les autres utilisaient.....



Il existe aussi d'autres librairies hors du petit monde VC / BCB : WxWindows
ou QT par exemple sont 2 très bonne librairies GUI qui ont en plus le mérite
d'être multi-plateformes. Il y a aussi d'autres outils plus spécialisés,
plus puissants mais ausi beaucoup plus chers : Ilog View par exemple.

Une question, a ce propos, est-t-il possible d'obtenir plus de
"controls" que ceux proposés pas l'editeur de ressource de VC++, tout
en utilisant uniquement l'API Win32 ?


Il y a :
- Les contrôles standard "Owner Drawn".
- Les contrôles faits maison.
- les ActiveX
...

Arnaud
Avatar
Cédric O.
> Pour le langage cela va de VB à VC++ en passant par Delphi, BCB et Java.



VC++, BCB, etc... sont des langages ? Je pensais que c'était des IDE... le
langage, c'est C++ non ? Pour moi ça parait tellement évident, mais je lis
tellement cet amalgame chez des gens bien plus qualifiés que moi qu'en fin
de compte, je me demande si ce n'est pas moi qui me trompe.
1 2 3 4 5