Comparaison de VSTO avec Aspose.Cells for .NET

Aperçu

Microsoft Excel est largement utilisé par les entreprises et les particuliers dans toutes sortes d’industries. L’application de feuille de calcul est presque omniprésente et permet aux utilisateurs non seulement de stocker et d’organiser des données, mais également de créer des modèles complexes avec des formules et de présenter clairement les données avec un formatage et un graphique avancés.

VSTO permet aux documents Office Microsoft d’exécuter du code encapsulé dans un assembly .NET. Il est utilisé pour développer des applications qui fonctionnent avec les fichiers et fonctionnalités Office Microsoft. Les développeurs utilisent ASP, les composants Web Office et l’interopérabilité COM dans les applications depuis des années. Microsoft a amélioré VSTO pour faciliter le développement et le déploiement d’applications et améliorer la gestion de la mémoire. Mais, la question demeure : VSTO est-il conçu pour être plus facile à utiliser et plus fiable que les autres approches disponibles aujourd’hui ? Les développeurs veulent travailler avec des solutions qui ne les laisseront pas tomber en termes d’amélioration des performances, de la sécurité, de l’évolutivité, de la stabilité, de la fiabilité ou des fonctionnalités.

Asposefournit une excellente gamme d’API .NET, Java, Cloud et Android. Les API Aspose incluent des produits tels que Aspose.Cells, Aspose.Words, Aspose.Pdf et Aspose.Slides, des API qui aident[les développeurs ouvrent, modifient, génèrent, enregistrent, fusionnent et convertissent des documents dans divers formats, notamment XLS, XLSX, DOC, DOCX, HTML, PDF, PPT.

Dans cet article, nous comparons VSTO avec Aspose.Cells for .NET.

[Aspose.Cells]](https://products.aspose.com/cells/net/) est une manipulation de feuille de calcul Excel Microsoft indépendante API qui lit et écrit des feuilles de calcul Excel Microsoft sans Microsoft Excel installé côté client ou serveur. Aspose.Cells est un composant riche en fonctionnalités et offre bien plus qu’une simple exportation de données de base. Avec Aspose.Cells, les développeurs peuvent exporter des données, formater des feuilles de calcul, importer des images, importer, créer et manipuler des graphiques, diffuser des données Excel et enregistrer dans différents formats. Pour en savoir plus sur le produit et ses fonctionnalités :

Cet article compare VSTO et Aspose.Cells sur différents aspects liés à Microsoft Excel. La liste n’est pas complète mais elle représente quelques enjeux que les décideurs doivent comprendre avant de prendre une décision finale avant d’adopter une approche.

.NET Exigence du cadre

VSTO nécessite le framework .NET (y compris Visual Studio Tools pour Office SE Runtime) côté client pour exécuter l’application finale. Dans la plupart des environnements d’entreprise, en particulier dans les scénarios Web, les utilisateurs finaux ne peuvent pas installer le logiciel d’application et les cadres d’exécution associés. Cette exigence à elle seule rend les applications basées sur VSTO problématiques. Il exclut pratiquement les applications prêtes à l’emploi basées sur VSTO.

Au contraire, Aspose.Cells for .NET n’exige pas nécessairement le Framework .NET côté client pour le scénario sous-jacent. Les applications Office construites avec le composant sont légères et garanties de fonctionner sur les systèmes Microsoft Windows sous une charge importante.

Caractéristiques

Les fonctionnalités fournies par VSTO dépendent de la combinaison de produits VSTO et Visual Studio que vous avez installée. Les tâches courantes effectuées par VSTO pour Microsoft Office Excel 2003 incluent l’ajout de données à Cells, la création, l’ouverture et l’enregistrement de classeurs, l’ajout, le déplacement et le masquage de feuilles de calcul, la protection de feuilles de calcul, les plages nommées, l’objet de liste, la mise en forme des styles, la recherche de texte dans les cellules, le tri des données, impression et calculs de formules Excel.

Aspose.Cells fournit tout le nécessaire pour gérer les fichiers Office Excel Microsoft et bien plus encore. Le API donne aux développeurs d’excellents résultats avec un minimum d’effort. Aspose.Cells fournit de nombreuses fonctions puissantes et rapides. le API fournit des API faciles à utiliser pour tous les types d’activités de gestion de feuille de calcul, couvrant presque toutes les fonctionnalités fournies par Microsoft Excel. Toutes les tâches répertoriées pour VSTO peuvent facilement être effectuées par Aspose.Cells.

Aspose.Cells prend également en charge plusieurs fonctionnalités avancées, notamment la prise en charge des marqueurs intelligents, l’importation et l’exportation de données vers et depuis un certain nombre de sources de données, d’objets et de fichiers Excel, la prise en charge des clients COM (client ASP) L’interopérabilité avec le composant, la conversion des fichiers Excel au format PDF , en enregistrant des graphiques et des feuilles de calcul Excel sous forme de fichiers image.

Sécurité

Par défaut, les applications VSTO nécessitent des autorisations de confiance totale pour l’exécution car elles n’autorisent pas les appelants partiellement fiables. Pour verrouiller une application Web et fournir un niveau supplémentaire d’isolation des applications dans un environnement hébergé, vous pouvez utiliser la sécurité d’accès au code pour restreindre les ressources auxquelles l’application peut accéder et les opérations privilégiées qu’elle peut effectuer. Mais vous devez investir du temps et des efforts pour comprendre la sécurité .NET.

Les fournisseurs de services Internet (FAI) qui hébergent plusieurs applications de nombreuses entreprises différentes utilisent fréquemment le niveau de confiance moyen pour s’assurer que les applications ne peuvent pas lire les données des autres ou interférer les unes avec les autres. Pour des raisons de sécurité, les FAI peuvent limiter les applications Web individuelles sur des serveurs partagés à la confiance partielle.

Aspose.Cells for .NET peuvent fonctionner sous le niveau de sécurité Medium Trust. Aucun privilège spécial n’est requis pour exécuter l’assembly dans un environnement hébergé. La confiance moyenne impose des restrictions sur les types de ressources système partagées auxquelles les applications peuvent accéder. De nombreuses applications Web s’exécutent sur des serveurs d’hébergement Web. En mode d’hébergement Web, la plupart d’entre eux ne peuvent fonctionner que sous le niveau de sécurité Medium Trust. Aspose.Cells for .NET peuvent très bien répondre à leurs besoins à cet égard.

Performance

La performance est le facteur le plus critique lors du choix d’une approche ou d’une méthodologie pour créer une solution.

Les performances d’une application VSTO reposent sur les approches VBA et COM selon le rapport de certains utilisateurs. Plusieurs facteurs influencent les performances de VSTO, et il est important de mettre ces facteurs en perspective.

  • Le coût de démarrage .NET est intrinsèquement cher. Les applications écrites avec .NET doivent subir la surcharge de la compilation juste-à-temps (JIT), de sorte que la compilation JIT ne peut pas être évitée.
  • Un autre facteur de performances influençant les applications basées sur VSTO est lié aux frais d’appel à travers les épaisses couches de peau d’automatisation qui enveloppent les objets COM Office Microsoft. VBA, construit et optimisé pour interagir avec Microsoft Office, a une distance à parcourir plus courte que .NET.
  • Enfin, l’hébergement d’objets Excel dans l’IDE Visual Studio est coûteux en termes de ressources. Les applications VSTO ont une plus grande empreinte mémoire que les applications VBA. Les applications VSTO Excel utilisent beaucoup de mémoire et ne la libèrent jamais dans le système d’exploitation tant que toutes les instances de Microsoft Excel ne sont pas fermées.

Si vous envisagez d’adopter VSTO comme plate-forme de développement pour la technologie Office Microsoft, passez du temps à rechercher des ressources pour vous familiariser avec ces attributs.

De plus, l’implication des performances de toujours vérifier les mises à jour peut ne pas être appropriée à la solution (des serveurs de déploiement plus lents, des connexions réseau plus lentes ou simplement l’impossibilité d’atteindre le serveur fréquemment peuvent avoir un impact négatif sur les temps de chargement).

En revanche, Aspose.Cells for .NET est hautement évolutif, flexible et rapide. Généralement, les applications Office n’ont pas été conçues pour être utilisées simultanément par des centaines et des milliers d’utilisateurs ; cependant, Aspose.Cells est. Le API est stable et peut effectuer des tâches de feuille de calcul sans faille, que ce soit sur un seul serveur, alimentant une seule application ou sur une ferme Web à charge équilibrée alimentant une application à l’échelle de l’entreprise.

Configuration requise

En analysant les exigences système pour ces deux approches, nous constatons que VSTO est plus cher et nécessite plus d’éléments essentiels.

VSTO a une longue liste de pré-requis :

  • Systèmes d’exploitation pris en charge: Windows 2000; Windows Serveur 2003 ; Windows Vue ; WindowsXP
  • .NET Versions de framework prises en charge: uniquement .NET framework 2.0 ou supérieur.
  • Une ou plusieurs des éditions suivantes de Visual Studio Tools pour Office :
  • Microsoft Outils Visual Studio 2005 pour le système Office Microsoft
  • Microsoft Outils Visual Studio 2005 pour Office System Microsoft 2007
  • Visual Studio 2008 Édition Professionnelle
  • Visual Studio 2008 Team Suite Édition
  • Une version de Microsoft Office :
  • Microsoft Office Professionnel 2003 SP1
  • 2007 Microsoft Système bureautique

Aspose.Cells ne nécessite pas l’installation d’Excel Microsoft ni sur le client ni sur le serveur, car il s’agit d’un moteur de création de tableur. Cependant, pour afficher les documents Excel Microsoft, vous avez besoin d’au moins Microsoft Excel Viewer installé sur le système.

  • Systèmes d’exploitation pris en charge: Windows 2000; Windows Serveur 2003 ; Windows Vue ; WindowsXP
  • .NET Versions de framework prises en charge: tous les frameworks .NET sont supportés, 1.0, 1.1, 2.0, 3.x etc.

Installation et déploiement

L’installation de VSTO peut être une tâche importante et fastidieuse. occasionnellement, une installation exige que vous réinstalliez manuellement certains aspects des outils et que vous les enregistriez également manuellement. Cela peut devenir compliqué.

D’autre part, Aspose.Cells for .NET est regroupé dans une seule DLL, il n’est donc pas nécessaire d’installer des applications supplémentaires. Le composant n’est utilisé que par les applications .NET et aucune partie du code du composant n’est conçue pour attendre une réponse humaine. Visitez simplement le Aspose.Cellspage de téléchargement et téléchargez le dernier programme d’installation Aspose.Cells. Exécutez le fichier téléchargé et suivez les instructions du programme d’installation. Ensuite, pour utiliser le composant, référencez-le dans votre projet.

Exemple de tâche

Pour montrer les différences entre les deux approches, le code ci-dessous montre comment utiliser les API VSTO et Aspose.Cells pour remplir un fichier modèle avec des données.

  1. Un fichier Excel Microsoft (TempBook.xls) est utilisé comme modèle. Le classeur contient quelques feuilles de calcul avec quelques cellules remplies de données.
  2. L’exemple de code place 1000*20 enregistrements sur la première feuille de calcul dans le modèle de fichier Excel. La feuille de calcul est remplie de données constantes (fictives) dans les cellules.

La tâche est effectuée sur un système doté d’un processeur Intel(R) Celeron(R) 2,40 GHz, 760 Mo de RAM sur le système d’exploitation Microsoft Windows XP Professional.

Les segments de code ci-dessous illustrent comment effectuer ces tâches avec chaque API.

Code VSTO

Code Aspose.Cells

Résultats

Les résultats ont montré que l’utilisation de VSTO API prenait environ 2,5 minutes (environ plus de 150 secondes) pour terminer la tâche, tandis que Aspose.Cells utilisait moins d’une seconde sur un matériel commun avec des configurations système normales.

Si la boucle est étendue, disons pour remplir 10 000*20 cellules, Aspose.Cells prend environ 5,5 secondes pour faire le travail.

Conclusion

Si vous envisagez d’utiliser une technologie Office Microsoft dans une solution d’entreprise, familiarisez-vous d’abord avec les alternatives disponibles. Effectuez des tests basés sur différents produits et exposez-les à une variété de conditions réelles telles que la charge et le stress pour voir à quel point ils fonctionnent.

Aspose.Cells est un produit stable et mature avec une clientèle mondiale et suffisamment évolutif pour bien fonctionner sous de lourdes charges.

Les performances de VSTO ne sont pas encore affinées. Il est tout à fait possible que certains de ces problèmes de performances ne soient pas liés à VSTO lui-même, mais aient plutôt des liens avec les processus de compilation .NET JIT. Mais, encore, il y a certains doutes si les applications VSTO seraient elles-mêmes mises à l’échelle à mesure que la charge augmentait. Le nouveau modèle de VSTO ne nécessite pas qu’Excel réside sur le serveur Web pour le traitement des documents, mais je pense que VSTO a encore beaucoup de chemin à faire pour avoir un impact réel.