Schämen Sie sich, jQuery zu verwenden? [geschlossen]


26

In den letzten Wochen ist mir aufgefallen, wie viele große kommerzielle Websites jQuery in Kombination mit vielen Plugins verwenden - aber geben Sie es nicht zu. Sie werden die Hauptbibliothek sowie die Plugins in etwas Unbekanntes umbenennen. Nicht wenige werden sogar die Kommentare entfernen, die die MIT / GPL-Lizenzinformationen enthalten. (habe heute gerade gemerkt, dass odeon.co.uk genau das getan hat)

Warum machen sie das? schämen sie sich angesichts der Tatsache, dass sie eine kostenlose und Open-Source-Bibliothek verwenden?


9
Interessante Frage. Das Entfernen der Copyright-Kommentare verstößt gegen die Lizenzvereinbarung, nicht wahr?
Pekka unterstützt GoFundMonica am

2
Warum wurde das hierher verlegt?
Tom

7
@Tim Post: Ich würde sagen, es ist für Programmierer ein Thema, nicht für Stackoverflow. Also richtige Entscheidung da.
Orbling

3
@marcgg: es ist sicher keine programmierfrage. Persönlich habe ich dafür gestimmt, als argumentativ zu schließen, aber andererseits gibt es so ziemlich alles, was es gibt, um all diese "subjektiven und argumentativen" Fragen zu berücksichtigen, zumindest in den Köpfen der anderen Schließer.
Wooble

3
@Wooble - Programmierer ist nicht für argumentative Fragen. Es ist für subjektive, aber konstruktive Fragen. Es kann vorkommen, dass Sie hin und her gehen, aber wenn eine Frage nur argumentativ ist, hat sie in Programmierern nicht mehr Platz als SO.
MIA

Antworten:


26

Nun, es ist dasselbe für einige Projekte, an denen ich arbeite, aber nur wegen des automatisierten Minfying-Prozesses, der Teil jeder Veröffentlichung ist.


Dies ist wahrscheinlich die richtige Erklärung.
Chinmay Kanchi

Gleiches hier bei meiner Arbeit. Die Dateien werden jedoch nicht nur minimiert, sondern zu einer einzigen Datei zusammengefasst. Andernfalls müssten fast 20 verschiedene js-Dateien heruntergeladen werden.
Echo sagt Reinstate Monica

Ich minify jeder Teil / Plugin manuell mit Closure Compiler dann beschriften Sie die Abschnitte mit /* jQuery x.y */, hoverIntent x.yusw Kurs zu halten.
DisgruntledGoat

13

Nach der Definition der MIT-Lizenz ist dies uneingeschränkt zulässig. Sie vertreiben es nicht, und selbst wenn dies der Fall wäre, müssten sie nur eine Kopie der Lizenzdatei einbinden (es muss nicht der Header jeder Datei sein).



Gute Informationen, aber ich glaube nicht, dass dies die Frage beantwortet. Das OP fragte, warum Unternehmen dies taten und nicht, ob sie dies durften.
Simon P Stevens

1
-1. JQuery (oder einen anderen Code) durch Hosting auf dem Server, Sie sind die Verteilung den Code (zumindest soweit das Gesetz betroffen ist) und die MIT - Lizenz hat den Copyright - Hinweis verlangt , intakt gelassen werden.
Josh3736

3
@ josh3736 Könntest du auf ein Gesetz hinweisen, das dies sagt? Die GPL hat zum Beispiel eine FAQ, die ausdrücklich besagt, dass dies nicht als verteilend qualifiziert ist. Es gibt die Affero GPL-Lizenz, wenn Sie diese Art der Verwendung nicht zulassen möchten.
Rene Saarsoo

@Rene Saarsoo: Die MIT-Lizenz besagt ausdrücklich, dass das Urheberrecht nicht entfernt werden darf, wenn Sie Kopien der Software verwenden, kopieren, ändern, zusammenführen, veröffentlichen, verteilen, unterlizenzieren und / oder verkaufen.
mipadi

6

Abgesehen von den anderen Antworten, bei denen es sich um gute Vermutungen handelt, könnte der einzige andere Grund, warum ich absichtlich verschleiern könnte, welche Bibliotheken Sie verwenden, darin bestehen, die Auswirkungen zu minimieren, wenn in der Bibliothek ein Remote-Exploit entdeckt wird.

Wenn zum Beispiel in jQuery ein großer Showstopper einer XSS-Lücke entdeckt wurde, kann es von Vorteil sein, wenn meine Verwendung nicht sehr offensichtlich ist.

Ich stimme den anderen Befragten zu, die sagen, dass dies wahrscheinlich ein Nebeneffekt der Automatisierung der Bereitstellung ist.


4

Dies kann zur Optimierung erfolgen. Ein Endbenutzer muss diese Kommentare nicht erhalten. Selbst wenn sie dadurch 1 KB Code einsparen, kann dies gut sein


3

Wahrscheinlich ein fehlgeleiteter Versuch der Verschleierung oder ein anderer (möglicherweise) fehlgeleiteter Versuch, die Bandbreite zu reduzieren. Mir fällt kein praktischer oder technischer Grund ein, warum sie dies tun möchten.

Wenn Sie neugierig sind, senden Sie ihnen eine E-Mail mit der Frage, warum sie die Lizenzinformationen aus dem Code entfernt haben.


7
entfernt das Minimieren von Code keine Kommentare?
SB01

2

Möglicherweise verwenden sie eine lokal modifizierte Version und haben sie dann umbenannt, um den lokalen Standards zu entsprechen.


2

Wir benennen unsere um, weil wir unseren Kunden Drop-In-Widgets zur Verfügung stellen und sie möglicherweise auch eine andere Version von jquery verwenden, die mit unserer nicht kompatibel ist.

$ könnte jede Version von jQuery sein (oder manchmal auch andere Bibliotheken wie Prototypen), aber dmJQuery ist immer diejenige, die wir unterstützen.

(Wir benennen es in der Quelle nicht wirklich um, tun Sie dies einfach ...)

/* make sure we use this version of jQuery and not any others. */
window.dmJQuery = jQuery.noConflict(true);

Aus diesem Grund benennen Sie die von jQuery heruntergeladene Datei nicht um. Ich bezweifle, dass jquery-1.4.4.min.js widersprüchliche Versionen haben würde.
James

Ja, aber wenn mein Skript jquery-1.4.4.min.js und ihr Skript jquery-1.4.1.min.js auf derselben Seite lädt, liegt ein Versionskonflikt vor ... (außerdem mein Skript wird in einer einzigen JS-Datei gebündelt, damit sie einfach auf ihren Servern abgelegt werden kann ...)
Mike Ruhlin

Die Lösung dafür ist buchstäblich identisch mit Ihrer aktuellen Lösung, nicht wahr? Oh ... Es sei denn, Ihre jQuery ist nicht die erste Version geladen. Das und alles in einer praktischen Datei zu haben ist verständlich. :-)
James

1

Wie auf der offiziellen jQuery-Website gezeigt , wird es von folgenden Anbietern verwendet: Google, Dell, Digg, NBC, Netflix, Mozilla, WordPress und anderen.

Es ist eine weithin angesehene und genutzte Bibliothek.

Ich gehe davon aus, dass sie den Namen so ändern, dass die Leute nicht wissen, dass sie jQuery verwenden, da sie es negativ sehen würden, weil sie sich auf den Code eines anderen verlassen, anstatt ihn selbst geschrieben zu haben.


1

Große Website-Entwickler kümmern sich um ihre Benutzer. Ich sehe keinen Grund, warum sie sich so sehr bemühen würden, die von ihnen verwendeten Technologien durch den infinitesimalen Bruchteil ihrer Benutzer zu verschleiern, die den Quellcode einer Seite vorbereiten.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.