Avez-vous besoin d’une bibliothèque de composants ?

Les composants proviennent de trois endroits : vous, les bibliothèques open source et les bibliothèques commerciales. Voici comment choisir entre eux.
La loi des gros titres de Betteridge dit que « Tout titre qui se termine par un point d’interrogation peut recevoir une réponse par le mot « Non ». » C’est également vrai ici : non, vous n’avez pas besoin d’une bibliothèque de composants. Mais cela dépend de ce que vous entendez par le mot « besoin ».
Blazer, par exemple, est livré avec un ensemble de composants « prêts à l’emploi » (OOB). La plupart de ces composants sont assez basiques (zones de texte, etc.), mais si c’est tout ce dont vous avez besoin, vous n’avez pas besoin d’une bibliothèque de composants supplémentaire.
L’option bricolage
Cependant, une application typique nécessite des fonctionnalités plus sophistiquées que celles fournies par les composants OOB. Dans ce cas, une option consiste à le faire vous-même (DIY) et à écrire votre propre composant (qui est toujours plus amusant pour les développeurs, du moins au début). Donc, encore une fois, tu ne le fais pas besoin une bibliothèque supplémentaire : vous pouvez simplement créer les composants dont vous avez besoin selon vos besoins.
Le problème avec la construction d’un composant DIY est que vous sous-estimez probablement largement son coût. Pour obtenir le coût réel d’un composant DIY, vous devez prendre le taux de rétrofacturation d’un développeur (qui est toujours étonnamment élevé) et le multiplier par le temps estimé pour créer, tester et déployer le composant. Si l’on ajoute à ce chiffre notre tendance à sous-estimer largement les coûts de développement de nouveaux logiciels, la solution DIY commence à paraître assez chère.
Et, bien sûr, si vous considérez le coût de maintenance de ce composant tout au long de sa durée de vie et que vous vous demandez qui aidera les autres développeurs à utiliser ce composant… tout à coup, la solution DIY commence à paraître de manière prohibitive cher.
De plus, il faut s’interroger sur la sagesse de payer pour construire quelque chose qui existe déjà et dont les coûts de développement ne sont pas sortis de votre budget. L’option DIY n’a de sens que si vous ne pouvez pas obtenir le composant dont vous avez besoin ailleurs. Vous devez utiliser l’option DIY lorsque vous construisez quelque chose d’unique selon vos besoins.
L’option tierce
Ce qui conduit à l’option tierce : plutôt que de développer un composant qui existe déjà, les bibliothèques de composants tiers fournissent une collection de composants, déjà construits et prêts à être utilisés. Et le « prêt à l’emploi » est important : l’utilisation de composants prédéfinis vous permet d’allouer plus de temps aux développeurs pour fournir des fonctionnalités : vos développeurs deviennent automatiquement plus productifs.
Avec l’option tierce, vous pouvez choisir entre des bibliothèques open source et commerciales. La différence évidente entre ces choix est que les bibliothèques open source sont gratuites et, comme l’option DIY, éliminent tout coût initial (une façon de penser au DIY est qu’il convertit le coût initial d’achat d’un composant en coût continu de développement et de développement). le maintenir).
Et il existe plusieurs fournisseurs open source parmi lesquels vous pouvez choisir. Par exemple, voici une liste de 2020 de 10 fournisseurs open source, uniquement dans l’espace Blazor (une remarque : le lien vers conception de fourmis dans l’article est obsolète).
Mais… il y a des problèmes qui méritent d’être pris en compte avec l’option open source.
Aborder la qualité (et la quantité)
Même si les options open source suppriment le coût initial, les bibliothèques open source peuvent rencontrer des problèmes de qualité. Cela ne veut pas dire que les composants open source ne sont pas bien écrits ou ne fonctionnent pas comme annoncé. Ces deux problèmes sont critiques et vous devez les étudier si vous optez pour une option open source.
Mais j’espère que la « qualité » signifie plus pour vous que simplement « il n’y a pas de bugs ».
Par exemple, toute définition moderne de la qualité doit inclure la sécurité. Les bibliothèques commerciales apportent des années d’expérience et d’expertise en équipe pour résoudre les problèmes de sécurité dans chaque composant fourni par l’équipe. De plus, à mesure que les menaces de sécurité évoluent, les fournisseurs commerciaux peuvent réagir plus rapidement aux menaces du jour zéro en mettant en œuvre et en distribuant des mises à jour rapides (et fiables).
Toute définition de la « qualité » devrait également inclure l’accessibilité. À tout le moins, pour de nombreuses organisations, le respect des normes d’accessibilité constitue une exigence réglementaire. Mais une bibliothèque de composants qui va au-delà du simple respect des exigences réglementaires vous permet de créer des applications qui touchent davantage de personnes et ce, sans effort supplémentaire de la part de vos développeurs.
Une bibliothèque de qualité partagera également un ensemble commun d’outils pour gérer l’apparence des composants et, pour les applications Web, cela devrait être plus que simplement « fonctionner avec CSS ». Vous devriez pouvoir appliquer un thème de votre choix à tous vos composants. La bibliothèque doit contenir plusieurs thèmes que vous pouvez utiliser et vous permettre de modifier ces thèmes pour qu’ils correspondent à l’image de marque de votre organisation (et inclure des outils pour faciliter cette tâche à mesure que l’image de marque de votre organisation évolue).
La qualité s’applique également à la manière dont les composants et leurs bibliothèques évolueront dans le futur. Étant donné que les bibliothèques commerciales sont confrontées à la concurrence d’autres fournisseurs, ceux-ci doivent rester à la pointe de la technologie (mais sans pour autant être à l’avant-garde), simplement pour rester compétitifs. Acheter une bibliothèque commerciale, c’est toujours être « à la pointe de la technologie ».
Et si la qualité compte, la quantité compte aussi. Les collections open source ont tendance à contenir moins de composants que les bibliothèques commerciales. Par exemple, Progress Telerik Bibliothèque de composants Blazorcontient 25 % de composants en plus que même la plus grande des bibliothèques open source Blazor.
Productivité
En fin de compte, cependant, la productivité est la principale raison du choix d’une bibliothèque tierce. Le fait que ces fonctionnalités de « qualité » soient déjà intégrées dans un composant permet aux développeurs de travailler plus librement sur la fourniture de fonctionnalités à vos utilisateurs au lieu d’avoir à gérer ces problèmes.
Cependant, ce qui passe souvent inaperçu dans les discussions sur la productivité, c’est l’impact de la création d’une expérience cohérente pour les développeurs. Cela se manifeste d’abord dans la possibilité de personnaliser un composant pour prendre en charge une variété de cas d’utilisation (les composants d’une bibliothèque commerciale ont tendance à être hautement personnalisables). L’avantage en termes de productivité des composants personnalisables réside dans le fait qu’une fois qu’un développeur a utilisé un composant pour prendre en charge un cas d’utilisation, il peut exploiter ces connaissances pour utiliser le composant afin de prendre en charge un cas d’utilisation différent.
Dans une bibliothèque, une « expérience de développeur cohérente » étend cet effet à tous les composants de la bibliothèque. Lorsque des modèles de conception communs sont appliqués à tous les composants d’une bibliothèque, une fois qu’un développeur a utilisé un composant dans une bibliothèque, il est en mesure d’exploiter ces connaissances lors de l’utilisation de tout autre composant de la bibliothèque. La création de cette expérience de développeur cohérente est plus courante dans les équipes fournissant des bibliothèques commerciales que parmi les équipes plus fluides qui développent des bibliothèques open source.
Mais garantir que vous bénéficiez réellement de la productivité associée à une bibliothèque se résume souvent à l’assistance : où vos développeurs peuvent-ils obtenir de l’aide sur un composant lorsqu’ils en ont besoin ? Chaque fois que les développeurs passent à essayer de comprendre pourquoi ils ne parviennent pas à faire en sorte qu’un composant fasse ce qu’ils veulent, c’est du temps perdu. Et, même s’il n’y a rien de mal à rechercher de l’aide sur le Net, les vendeurs de bibliothèques commerciales disposent d’un personnel d’assistance professionnel et de plusieurs moyens de contacter ce personnel lorsque de l’aide est nécessaire. En l’absence de support, l’option open source, comme la solution DIY, convertit simplement le coût initial en un coût continu.
Choisir une bibliothèque de composants
Revenons donc à la question initiale : avez-vous besoin d’une bibliothèque de composants ? Non, ce n’est pas le cas. Si vous n’avez besoin que de composants de base ou de composants qui n’existent dans aucune bibliothèque, alors les composants OOB et les composants DIY qui répondent à vos besoins uniques sont votre meilleur choix.
Si vos besoins vont au-delà des composants de base et que vous n’avez pas l’argent nécessaire pour payer les coûts initiaux d’une bibliothèque commerciale, alors l’option open source « sans amont » vous conviendra. Cependant, quel que soit le choix open source, vous devrez gérer les coûts permanents associés. Cela signifie s’assurer que les problèmes de qualité évoqués ici sont suffisamment bien résolus pour que vous puissiez vivre avec.
Mais si vous souhaitez une solution qui vous offre un choix plus large de composants, une solution qui résout tous ces problèmes de qualité, une solution qui offre des niveaux élevés de personnalisation (avec une expérience de développement cohérente) et une qui fournit également un support continu tout en reflétant toujours l’état actuel de la technique, alors une bibliothèque commerciale est probablement votre meilleur choix.
Et, quand viendra le temps d’investir dans une bibliothèque commerciale, vous ne serez pas surpris d’entendre : vous devriez considérer les bibliothèques Progress Telerik et Kendo UI. Le DevCraft La suite comprend des bibliothèques de composants .NET et JavaScript, ainsi que des rapports, des tests et bien plus encore. Essayez-le gratuitement pendant 30 jours.
Vous souhaitez en savoir plus sur les éléments à prendre en compte pour choisir la bibliothèque de composants qui vous convient ? J’ai écrit un livre blanc à ce sujet !
Raccourcir la liste : comment choisir une bibliothèque de composants
Source link