Ich verstehe einfach nicht, warum 1 Modul in 100 Teile zerstreut werden sollte?Ich habe die Abhängigkeiten aktualisiert und der Bot funktioniert hier nicht.
Wo genau funktioniert es nicht? Welchen Fehler gibt es?
Wo genau funktioniert es nicht? Welchen Fehler gibt es?
Damit es funktioniert, benötigen Sie jetzt auch den HearManager
Wird der Autor dieses Moduls das Modul weiter aufteilen, bis sich jede Variable in einer separaten Datei befindet?
So können Sie ohne Modul Ihr eigenes Team erstellen.
So können Sie ohne Modul Ihre eigene Implementierung von HearManager erstellen.
Ja, aber finden Sie heraus, warum und warum? zerlegte alles in Module wie!)
So können Sie ohne Modul Ihre eigene Implementierung von HearManager erstellen.
Ja, aber finden Sie heraus, warum und warum? zerlegte alles in Module wie!)
Vielleicht der Einfachheit halber und damit es schnell funktioniert 👍. Obwohl das Modell immer noch Nachteile hat.
So können Sie ohne Modul Ihre eigene Implementierung von HearManager erstellen.
Ja, aber finden Sie heraus, warum und warum? zerlegte alles in Module wie!)
Vielleicht der Einfachheit halber und damit es schnell funktioniert 👍. Obwohl das Modell immer noch Nachteile hat.
Schneller geht es nicht, wie es mir scheint
So können Sie ohne Modul Ihre eigene Implementierung von HearManager erstellen.
Ja, aber finden Sie heraus, warum und warum? zerlegte alles in Module wie!)
Vielleicht der Einfachheit halber und damit es schnell funktioniert 👍. Obwohl das Modell immer noch Nachteile hat.
Schneller geht es nicht, wie es mir scheint
Trotzdem ist es besser, Ihre eigene Implementierung zu verwenden)) Es gibt weniger Probleme
So können Sie ohne Modul Ihre eigene Implementierung von HearManager erstellen.
Ja, aber finden Sie heraus, warum und warum? zerlegte alles in Module wie!)
Vielleicht der Einfachheit halber und damit es schnell funktioniert 👍. Obwohl das Modell immer noch Nachteile hat.
Schneller geht es nicht, wie es mir scheint
natürlich wird das Modul die Dinge nicht laden, die der erste Benutzer nicht braucht und keine Middleware verarbeiten, die irgendwann ignoriert wird = Geschwindigkeitsschub, denken Sie darüber nach, was Sie schreiben
So können Sie ohne Modul Ihre eigene Implementierung von HearManager erstellen.
>
>
Ja, aber finden Sie heraus, warum und warum? zerlegte alles in Module wie!)
Vielleicht der Einfachheit halber und damit es schnell funktioniert 👍. Obwohl das Modell immer noch Nachteile hat.
Schneller geht es nicht, wie es mir scheint
natürlich wird das Modul die Dinge nicht laden, die der erste Benutzer nicht braucht und keine Middleware verarbeiten, die irgendwann ignoriert wird = Geschwindigkeitsschub, denken Sie darüber nach, was Sie schreiben
Ja, aber der Haupthandler sind Nachrichten, warum sollte man das weglassen?
Ja, aber der Haupthandler sind Nachrichten, warum sollte man das weglassen?
Lassen Sie mich versuchen, alles in einer Sprache zu erklären, die Sie verstehen – der Sprache der Meme.
Zur Verteidigung von @Zharckov kann ich sagen, dass es nicht gut ist, die Abwärtskompatibilität zu
Das Trennen von Modulen erhöhte die Eintrittsschwelle, und die Komplexität des Codes nahm mit der Zeit nur zu.
Zur Verteidigung von @Zharckov kann ich sagen, dass es nicht gut ist, die Abwärtskompatibilität zu
Daher ist dies Breaking Change .
Die Hauptbibliothek ist vk-io
, die eine grundlegende Interaktion mit VKontakte bietet und die minimale Anzahl von Abhängigkeiten abruft. Das Modul @vk-io/hear
ist dieselbe Middleware wie @vk-io/session
und @vk-io/scenes
. Da dies nur eine alternative Umsetzung der möglichen Interaktion mit Nachrichten ist. Als sich das Modul in Updates
, erlaubte es nicht, es wiederzuverwenden und fügte unnötige Komplexität und mangelnde Kontrolle hinzu, und es verstieß auch gegen das SOLID- Prinzip.
Tatsächlich würde ich alles in separate Module aufteilen @vk-io/api
, @vk-io/upload
, @vk-io/updates
, @vk-io/collect
und @vk-io/structures
und vk-io
all dies würde standardmäßig exportiert werden, da jedes Modul nur eine Implementierung seiner Verantwortung ist. Aber im Moment ist jedes Modul in vk-io
bereit, in seinen eigenen Namespace gepfropft zu werden.
Dieser Ansatz hat den größeren Vorteil, dass Sie nur das installieren, was Sie benötigen. Und Sie werden auch nicht durch die riesige Menge an Exporten aus dem gesamten Modul verwirrt. Für ein Beispiel müssen Sie nicht weit gehen; Sie sollten sich Tools wie apollo-server , apollo-tooling und apollo-client ansehen.
Hilfreichster Kommentar
Die Hauptbibliothek ist
vk-io
, die eine grundlegende Interaktion mit VKontakte bietet und die minimale Anzahl von Abhängigkeiten abruft. Das Modul@vk-io/hear
ist dieselbe Middleware wie@vk-io/session
und@vk-io/scenes
. Da dies nur eine alternative Umsetzung der möglichen Interaktion mit Nachrichten ist. Als sich das Modul inUpdates
, erlaubte es nicht, es wiederzuverwenden und fügte unnötige Komplexität und mangelnde Kontrolle hinzu, und es verstieß auch gegen das SOLID- Prinzip.Tatsächlich würde ich alles in separate Module aufteilen
@vk-io/api
,@vk-io/upload
,@vk-io/updates
,@vk-io/collect
und@vk-io/structures
undvk-io
all dies würde standardmäßig exportiert werden, da jedes Modul nur eine Implementierung seiner Verantwortung ist. Aber im Moment ist jedes Modul invk-io
bereit, in seinen eigenen Namespace gepfropft zu werden.Dieser Ansatz hat den größeren Vorteil, dass Sie nur das installieren, was Sie benötigen. Und Sie werden auch nicht durch die riesige Menge an Exporten aus dem gesamten Modul verwirrt. Für ein Beispiel müssen Sie nicht weit gehen; Sie sollten sich Tools wie apollo-server , apollo-tooling und apollo-client ansehen.