-
Utilité des DLL
Salut !
Ca fait déjà quelque années que je programme en C++ et je me suis jamais trop intéressent à la possibilité de programmé ces propre DLL.
Aujourd’hui je commence a me posé des questions sur ce développement de DLL... :^/
J’aimerai savoir en fait quel est l’utilité et l’avantage de passé par ces propre DLL ?
Pourquoi ne pas faire un programme en un seul fichier .exe ?
Je m’aperçois par exemple que tout les grand programmes, jeux et autre son découpé en plusieurs fichier et non pas en un seul .exe
J’aimerais savoir quel est l’interé de tout ça ?
Merci d'avance de vos éventuelles réponses
-
Intérets:
1°) Plus facile à patcher (tu rempleces la DLL correspondante au lieu de télécharger et remplacer un exe de 10Mo)
2°) Les DLL sont supposées être partagées et utilisables par plusieurs programmes. Bien sûr, celles qui sont dans le répertoire d'un jeu le sont rarement (encore que si tu as des éditeurs de cartes/niveaux/personnages/trucs livrés avec, ils utilisent sûrement des DLL communes), mais les DLL du dossier system32 de Windows sont des DLL utilisées par pratiquement tous les programmes: kernel32.dll, ntdll.dll, et pour les programmes avec des fenêtres, user32.dll et gdi32.dll
-
Ok, donc si je comprends bien, l’utilité est plutôt d’un point de vue pratique, il n’y a aucun gain en rapidité ou autre...
-
À l'exécution, non, aucun avantage en rapidité, peut-être même le contraire:
Je ne sais pas exactement comment c'est implémenté, mais il est possible que cela ralentisse en fait les appels de fonction, en rajoutant un niveau d'indirection (mais je n'en suis pas sûr).
-
Ok, grand merci pour ces informations ;)