4 Stimmen

Welche Argumente sprechen gegen die Verwendung eines JavaScript-Frameworks für ein Website-Entwicklungsunternehmen?

Unser Unternehmen erstellt Websites und Webanwendungen. Wir sind eine kleine Firma und unser Entwicklerteam baut die Javascript-Funktionen immer von Grund auf neu oder kopiert sie von anderen von uns erstellten Websites. Jedes Mal, wenn ich das Wort Standardisierung und die Verwendung eines JS-Frameworks wie JQuery, Prototype oder eines anderen auf den Tisch bringe, wird mir gesagt, dass Frameworks die drei folgenden Punkte als Argumente gegen sie haben:

  • Hauptsächlich für Leute, die nicht genug über JS wissen
  • Frameworks begrenzen Javascript-Entwickler
  • Frameworks blähen den eigentlichen Entwicklungscode mit einer Menge Dinge auf, die nicht verwendet werden.
  • Wir verwenden nicht so viel Javascript in unseren Anwendungen, dass wir ein JS-Framework benötigen.

Meiner Meinung nach bieten Frameworks unserem Team einen guten Ausgangspunkt, eine Dokumentation, eine Gemeinschaft und immer die Möglichkeit, auf dem Framework aufzubauen. Könnten einige Framework-Benutzer dies näher erläutern?

EDIT 1:

Vielen Dank an Sie alle für Ihre großartigen Antworten. Ich hätte wirklich nicht gedacht, dass dies ein so heißes Thema sein würde. Ich bin froh, dass ich die Frage gestellt habe. Ich habe eine ähnliche Frage unter dem folgenden Link gepostet, für den Fall, dass ihr etwas hinzufügen wollt. Das Thema der neuen Frage lautet CSS verwandt. Danke.

13voto

Cody C Punkte 4687

Nach Ansicht Ihrer Kollegen sind .NET und JAVA für Leute, die nicht genug über Assembler wissen.

Rahmenwerke gibt es aus einem bestimmten Grund. Sie ermöglichen es Ihnen, sich auf das Problem zu konzentrieren, anstatt sich mit repetitivem Code zu beschäftigen. Sie geben Ihnen die Sicherheit (vorausgesetzt, Sie verwenden gut getestete Frameworks), dass bestimmte Teile Ihres Codes zuverlässig und gut getestet sind.

Wenn Ihre Kollegen gegen Rahmenbedingungen sind, würde ich ernsthaft in Erwägung ziehen, weiterzuziehen.

8voto

karim79 Punkte 333786

Da es noch niemand erwähnt hat - ein Javascript-Framework wird schnell zu einer weiteren Projektabhängigkeit, und Abhängigkeiten sind generell schlecht, da sie Fehlerquellen darstellen.

Diesbezüglich:

  • Hauptsächlich für Leute, die nicht wissen genug JS

Ohne näher darauf einzugehen, möchte ich sagen, dass ich, wenn einer aus unserem Team so etwas in meiner Gegenwart sagen würde, versuchen würde, es als einen Scherz abzutun. Wenn ich denken würde, dass sie es ernst meinen, müsste ich sie wahrscheinlich umbringen.

Und was dies betrifft:

  • Rahmenwerke begrenzen Javascript Entwickler

Das könnte bedeuten "Frameworks machen es etwas schwieriger, Spaghetti-Code zu schreiben, und das kann ich am besten.

Das sind keine Argumente, das sind Ausreden.

7voto

Paul van Brenk Punkte 7189

Argumente dagegen:

  • Frameworks verhindern, dass Sie das Rad neu erfinden müssen
  • Frameworks enthalten in der Regel gut getesteten Code
  • Die Rahmenbedingungen werden von der Gemeinschaft gut unterstützt
  • Frameworks zwingen Sie dazu, sich auf das zu lösende Geschäftsproblem zu konzentrieren.

</sarkasmus>

  • Frameworks können eine Lizenz haben, mit der Sie nicht einverstanden sind/mit der Sie nicht arbeiten können

6voto

Ikarii Warrior Punkte 163

Ein paar positive Aspekte für Javascript-Frameworks (wie JQuery).

  1. Sie bieten Standardisierung in der Benutzeroberfläche Elementen.
  2. Verkürzung der Zeit für die Entwicklung komplexer Schnittstellen und Effekte.
  3. Normalisierung der Bemühungen durch Bereitstellung Funktionen, die bereits Browser-übergreifend kompatibel sind.
  4. Dank der Bemühungen um eine übergreifende Kompatibilität ist die Dokumentation in einem Rahmenwerk nützlicher, da man die Api des Frameworks als Kanon anstatt nach obskurer Unterstützung für verschiedene/proprietäre Javascript-Funktionen.
  5. Reduzierte Lernkurve für neue Entwickler, so dass sie schneller produktiv mit Ihre Software schneller zu nutzen.

Ich bin ganz und gar nicht der Meinung, dass ein Framework Javascript-Entwickler einschränkt. Ganz im Gegenteil. Die meisten Frameworks bieten umfangreiche Plug-in-Mechanismen, wo der Rahmen kann mit rohen Javascript unter Verwendung von Haken in den Rahmen selbst erweitert werden.

5voto

AntiMS Punkte 337

Ich werde jQuery als Beispiel verwenden, aber was ich hier sage, könnte für die meisten JavaScript-Frameworks gelten.

Viele Frameworks (vor allem jQuery) sind viel zu monolithisch und nicht modular genug.

Während die Abhängigkeit von gut getesteter Software von Drittanbietern oft mehr als gerechtfertigt ist, bieten "Frameworks" in der Regel viel mehr Funktionen, als Sie im Moment benötigen.

In vielen Projekten mag ich den Komfort, den mir jQuery bei der Auswahl von Elementgruppen bietet (z. B. mit $(".classname")). Aber wenn ich keine nennenswerte Menge an AJAX verwende, brauche ich die von jQuery bereitgestellten AJAX-Dienstprogramme nicht.

Software sollte eine Aufgabe erfüllen, und zwar eine gute, und in JavaScript geschriebene Software bildet da keine Ausnahme. Die meisten der von Ihnen genannten Frameworks versuchen, Folgendes zu tun alles , was zu unnötiger Komplexität führt.

Ein Punkt, an dem sich das rächen kann, ist, wenn Sie ein Upgrade auf die nächste Version des Frameworks in Erwägung ziehen. Dazu müssen Sie die Änderungsprotokolle von jQuery nach abwärtskompatiblen Änderungen durchforsten und Ihr Projekt nach Bereichen durchsuchen, in denen dieser Code verwendet wird. Das kann ein ziemlicher Alptraum sein, vor allem, wenn Sie nicht unbedingt eine umfassende Liste der jQuery-Funktionen haben, die Sie verwenden, und derjenigen, die Sie nicht verwenden.

Außerdem neigen jQuery (und andere Frameworks) dazu, Entwickler dazu zu bringen, sich auf neue Funktionen von jQuery zu verlassen, ohne darüber nachzudenken, was es schwieriger macht, festzustellen, welche Funktionen von jQuery Ihr Projekt nutzt und welche nicht.

Wenn Sie ein Dienstprogramm verwenden, das un dann wissen Sie genau, welche Funktionen des Dienstprogramms Sie verwenden. Es gibt nur eine. (Wenn Sie dieses Dienstprogramm überhaupt nicht verwenden, ist das leicht festzustellen. Eine solche Feststellung würde bedeuten, dass Sie es gefahrlos aus Ihrem Projekt entfernen können.)

Ich bin für die Verwendung von gut getesteten Codes von Drittanbietern. Aber wenn er zu viel zu tun versucht (d.h. wenn es sich eher um ein Framework als um ein Dienstprogramm handelt), sollten Sie wahrscheinlich nach einer Alternative suchen. Wenn es versucht, zu viel zu tun (wie jQuery versucht, zu viel zu tun), dann ist es einige ernsthafte, grundlegende Design-Fehler, die wahrscheinlich wieder kommen, um Sie zu beißen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X