Vk-io: Combinez à nouveau le tout dans 1 module !

Créé le 17 sept. 2020  ·  13Commentaires  ·  Source: negezor/vk-io

Je ne comprends tout simplement pas pourquoi 1 module devrait être divisé en 100 parties ?J'ai mis à jour les dépendances et le bot ne fonctionne pas ici.

vk-io

Commentaire le plus utile

La bibliothèque principale est vk-io , qui fournit une interaction de base avec VKontakte, elle extrait le nombre minimum de dépendances. Le module @vk-io/hear est le même middleware que @vk-io/session et @vk-io/scenes . Puisqu'il ne s'agit que d'une implémentation alternative de l'interaction possible avec les messages. Lorsque le module était dans Updates il ne permettait pas de le réutiliser et ajoutait une complexité inutile et un manque de contrôle, et il violait également le principe SOLID .

En fait, je diviserais tout en modules séparés @vk-io/api , @vk-io/upload , @vk-io/updates , @vk-io/collect et @vk-io/structures et vk-io tout cela serait exporté par défaut, puisque chaque module n'est qu'une implémentation de sa responsabilité. Mais en ce moment, à l'intérieur de vk-io chaque module est prêt à être greffé dans son propre espace de noms.

Cette approche a le plus grand avantage que vous n'installez que ce dont vous avez besoin. De plus, vous ne vous trompez pas dans l'énorme quantité d'exportations de l'ensemble du module. Vous n'avez pas besoin d'aller loin pour un exemple ; vous devriez regarder des outils tels que apollo-server , apollo-tooling et apollo-client .

image

Tous les 13 commentaires

Où exactement ça ne marche pas ? Quelle erreur cela donne-t-il ?

Où exactement ça ne marche pas ? Quelle erreur cela donne-t-il ?

Maintenant, pour que cela fonctionne, vous avez également besoin du HearManager
L'auteur de ce module continuera-t-il à diviser le module jusqu'à ce que chaque variable soit dans un fichier séparé ?

Ainsi, vous pouvez créer votre propre équipe sans module.

Ainsi, vous pouvez créer votre propre implémentation de HearManager sans module.

Oui, mais découvrez « Pourquoi et pourquoi ? » a tout cassé en modules comme !)

Ainsi, vous pouvez créer votre propre implémentation de HearManager sans module.

Oui, mais découvrez « Pourquoi et pourquoi ? » a tout cassé en modules comme !)

Peut-être pour plus de commodité et pour que cela fonctionne rapidement 👍. Bien qu'il y ait encore des inconvénients au modèle.

Ainsi, vous pouvez créer votre propre implémentation de HearManager sans module.

Oui, mais découvrez « Pourquoi et pourquoi ? » a tout cassé en modules comme !)

Peut-être pour plus de commodité et pour que cela fonctionne rapidement 👍. Bien qu'il y ait encore des inconvénients au modèle.

ça n'ira pas plus vite, il me semble

Ainsi, vous pouvez créer votre propre implémentation de HearManager sans module.

Oui, mais découvrez « Pourquoi et pourquoi ? » a tout cassé en modules comme !)

Peut-être pour plus de commodité et pour que cela fonctionne rapidement 👍. Bien qu'il y ait encore des inconvénients au modèle.

ça n'ira pas plus vite, il me semble

Mais encore, il est préférable d'utiliser votre propre implémentation)) Il y a moins de problèmes

Ainsi, vous pouvez créer votre propre implémentation de HearManager sans module.

Oui, mais découvrez « Pourquoi et pourquoi ? » a tout cassé en modules comme !)

Peut-être pour plus de commodité et pour que cela fonctionne rapidement 👍. Bien qu'il y ait encore des inconvénients au modèle.

ça n'ira pas plus vite, il me semble

bien sûr, le module ne chargera pas les choses dont l'utilisateur initial n'aura pas besoin et ne traitera pas le middleware, qui sera finalement ignoré = boost de vitesse, pensez à ce que vous écrivez

Ainsi, vous pouvez créer votre propre implémentation de HearManager sans module.

>

>

Oui, mais découvrez « Pourquoi et pourquoi ? » a tout cassé en modules comme !)

Peut-être pour plus de commodité et pour que cela fonctionne rapidement 👍. Bien qu'il y ait encore des inconvénients au modèle.

ça n'ira pas plus vite, il me semble

bien sûr, le module ne chargera pas les choses dont l'utilisateur initial n'aura pas besoin et ne traitera pas le middleware, qui sera finalement ignoré = boost de vitesse, pensez à ce que vous écrivez

Oui, mais le gestionnaire principal est les messages, pourquoi le supprimer ?

Oui, mais le gestionnaire principal est les messages, pourquoi le supprimer ?

Laissez-moi essayer de tout expliquer dans une langue que vous comprenez - la langue des mèmes.

image

À la défense de @Zharckov, je peux dire que rompre la compatibilité descendante n'est pas bon.
La déconnexion des modules a élevé le seuil d'entrée et la complexité du code n'a fait qu'augmenter avec le temps.

Phoenix Wright

À la défense de @Zharckov, je peux dire que rompre la compatibilité descendante n'est pas bon.

Par conséquent, c'est Breaking Change .

image

La bibliothèque principale est vk-io , qui fournit une interaction de base avec VKontakte, elle extrait le nombre minimum de dépendances. Le module @vk-io/hear est le même middleware que @vk-io/session et @vk-io/scenes . Puisqu'il ne s'agit que d'une implémentation alternative de l'interaction possible avec les messages. Lorsque le module était dans Updates il ne permettait pas de le réutiliser et ajoutait une complexité inutile et un manque de contrôle, et il violait également le principe SOLID .

En fait, je diviserais tout en modules séparés @vk-io/api , @vk-io/upload , @vk-io/updates , @vk-io/collect et @vk-io/structures et vk-io tout cela serait exporté par défaut, puisque chaque module n'est qu'une implémentation de sa responsabilité. Mais en ce moment, à l'intérieur de vk-io chaque module est prêt à être greffé dans son propre espace de noms.

Cette approche a le plus grand avantage que vous n'installez que ce dont vous avez besoin. De plus, vous ne vous trompez pas dans l'énorme quantité d'exportations de l'ensemble du module. Vous n'avez pas besoin d'aller loin pour un exemple ; vous devriez regarder des outils tels que apollo-server , apollo-tooling et apollo-client .

image

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

Bobrovskih picture Bobrovskih  ·  3Commentaires

Jengas picture Jengas  ·  15Commentaires

T1MOXA picture T1MOXA  ·  29Commentaires

Saiv46 picture Saiv46  ·  9Commentaires

ProgrammingLife picture ProgrammingLife  ·  9Commentaires