J'essaie de comprendre les nombreuses options de déploiement d'applications que Microsoft propose actuellement.Cette liste est-elle une bonne compréhension des options de déploiement d'applications actuelles de Microsoft?
Faire un peu de recherche tourné des dizaines de termes confus:
- "WPF App"
- "ClickOnce App"
- "WPF ClickOnce App"
- "App MSI"
- "Application XBAP"
- "Application XBAP déployée avec ClickOnce"
- "Application ClickOnce installée "
- "WPF Web App"
- "ASP.NET Web App"
- "ASP.NET MVC Web App"
- "Silverlight App"
- "Full WPF App"
- " de ClickOnce avec le support du framework de synchronisation "
J'ai nettoyé mes résultats en sept approches distinctes ci-dessous. Apprécierait des commentaires:
"WPF App déployée avec MSI" (permet de nombreuses options d'installation)
- exécution MSI requis sur Assistant ordinateur cible
- avec des options
- peut spécifier per- utilisateur ou par machine
- peut modifier les fichiers et le registre sur l'ordinateur cible, limité uniquement par l'autorisation d'accès définie par l'administrateur
- peut placer raccourci sur le bureau
- remplacement des fichiers système, etc., il est facile d'entrer dans l'enfer DLL sur l'ordinateur cible
- mise à jour est un grand point négatif: la détection des mises à jour disponibles nécessite la programmation des outils supplémentaires/personnalisés, non construit en
- utilisateur ne doit pas être en ligne pour utiliser l'application
« WPF App déployée avec ClickOnce »: (bon si vous voulez, mais la mise à jour automatique fonctionne en bac à sable)
- nécessite deux clics (cliquez sur lien hypertexte, cliquez sur Oui), pas d'entrée utilisateur
- uniquement pour l'utilisateur actuel, aucune installation par machine
- pas de raccourcis sur le bureau
- apparaît dans la liste des programmes comme des applications normales
- applications les fichiers sont toujours copiés dans ../ Mes documents/Mes Applications
- un raccourci vers votre application sera mise dans le menu Démarrer/nom de votre entreprise
- ne peut pas modifier l'ordinateur cible, isolé du système d'exploitation
- détecte automatiquement et met à jour une version plus récente
- publié simplement en les mettant sur un serveur Web (où les clients de détecter et de les faire)
- nécessite .NET 2.0 ou version ultérieure
- comparable à Java Web Start
- permet de résoudre quatre problèmes: (1) le déploiement facile, (2) ea Sy mise à jour, (3) à faible impact sur l'ordinateur cible, (4) pas besoin d'autorisations d'administrateur.
- considéré comme « faible impact »
- si deux utilisateurs ont la même application ClickOnce installée sur la même machine, ils ne briseront pas les uns des autres
- emploie CAS pour la sécurité
- utilisateur ne doit pas être en ligne à utiliser l'application
- autonome des applications ClickOnce ne fonctionnent pas sur Firefox et Mac avec Firefox maintenant car il a besoin de l'exécution .NET
- limité à des applications à guichet unique, car ils fonctionnent dans le navigateur
- construire un manifeste ClickOnce est beaucoup plus facile que Silverlight etc, puisque l'EDI fera presque tout cela pour vous; vous devez juste héberger les fichiers quelque part (pourrait être une URL Web, pourrait être un réseau UNC).
"XBAP App": le déploiement xcopy du fichier .xbap, afficher IE et Firefox instantanément comme une page web
- l'objectif réel du modèle XBAP est de créer un équivalent WPF à la site Web HTML et JavaScript traditionnel (ou applet Flash)
- l'ordinateur cible exécute simplement l'application sans installation sur le Web dans son navigateur Web (IE ou Firefox)
- Ils sont bons pour les applications intranet où vous voulez vraiment déploiement facile, le .NET Framework complet (comme contrairement à Silverlight) et le modèle de navigation d'un navigateur.
- 99% des caractéristiques de WPF (par opposition au sous-ensemble de Silverlight de fonctionnalités WPF)
- peuvent être déployées automatiquement via ClickOnce ainsi, mais XCOPY est plus fréquente
- YourApp.xbap est vraiment une course manifeste de déploiement ClickOnce
- dans bac à sable
- utilisateur doit être en ligne pour utiliser l'application
- ceux-ci doivent être des applications « basé sur la page », par opposition aux applications « windows »
- « Un XBAP semble courir à l'intérieur du brwoser simplement parce qu'il affiche toutes les son contenu dans la fenêtre du navigateur. Ceci est différent du modèle utilisé par les contrôles ActiveX (et Silverlight), qui sont chargés dans le processus du navigateur. "
- XBAPs offre une expérience" sans invite ", tant que .NET 3.5 est installé, il apparaît juste dans le navigateur comme une page web.s
- XBAPs ne sont pas autorisés à utiliser des contrôles WinForm via Interop
- permettent pas d'utiliser des fenêtres glisser-déposer
- les plus avancées fonctionnalités WCF ne sont pas autorisés et XBAP ne peuvent pas communiquer avec un serveur autre que celui où la XBAP est hébergé
- « si votre application nécessite une confiance totale, vous devriez envisager la construction d'une application autonome WPF et le déploiement à l'aide de ClickOnce » (Pro WPF in C# 2008)
- astuce: vous pouvez intégrer plusieurs applications XBAP dans plusieurs iframes sur un HTML page.
"Silverlight App": fonctionne dans le navigateur du client et utilise sous-ensemble de 4Mo téléchargé du framework .NET, à savoir pas de 3D)
- navigateur cross (applications peuvent être utilisées par Opera et Safari ainsi)
- l'application de mise à jour est aussi facile que de ClickOnce ou XBAP
- simples applications de fenêtre l'application
- est dans le bac à sable bien sûr
- async ne
"ASP.NET MVC avec JQuery/AJAX": une nouvelle plate-forme de développement égal au développement dans WPF en termes de RAD et TDD
- cette approche mérite d'être examinée avec le WPF/Silverlight approche
"ASP.NET App": application web classique avec ViewState, etc. seront probablement utilisés de moins en moins que l'acceptation des gains ASP.NET MVC
"WinForm App": application Windows classique, sera de moins en moins que l'acceptation des gains WPF
J'apprécierais plus particulièrement des commentaires sur:
- comment réutilisables sont des contrôles (par exemple si nous développons dans Silverlight, pouvons-nous réutiliser notre code/contrôles dans XBAP?)
- quelle est la meilleure approche pour les clients qui sont parfois hors ligne, parfois en ligne ET besoin d'accéder à WCF (probablement clickOnce apps je pense)