Стыдно признаться, используя jQuery? [закрыто]


26

За последние несколько недель я заметил, что многие коммерческие сайты используют jQuery в сочетании с множеством плагинов, но не признают этого. Они переименуют основную библиотеку во что-то непонятное, а также плагины. Многие даже удалят комментарии, которые содержат информацию о лицензии MIT / GPL. (только сегодня заметил, что odeon.co.uk сделал именно это)

Почему они это делают? они смущены тем, что используют бесплатную библиотеку с открытым исходным кодом?


9
Интересный вопрос Удаление комментариев об авторских правах нарушает лицензионное соглашение, не так ли?
Пекка поддерживает GoFundMonica

2
Почему это было перенесено сюда?
Том

7
@Tim Post: я бы сказал, что это полностью актуально для программистов, а не для stackoverflow. Так что правильное решение там.
Orbling

3
@marcgg: это, конечно, не вопрос программирования. Лично я проголосовал за то, чтобы закрыться как аргументативный, но опять же программисты. В значительной степени существует возможность ответить на все эти «субъективные и аргументированные» вопросы, по крайней мере, в умах других приближенных.
Wooble

3
@Wooble - программисты не для спорных вопросов. Это для субъективных, но конструктивных вопросов. Может случиться так, что вы будете возвращаться назад и вперед, но если вопрос носит спорный характер, он не занимает больше места в программистах, чем в SO.
МВД

Ответы:


26

Ну, то же самое для некоторых проектов, над которыми я работаю, но только из-за автоматизированного процесса minfying, который является частью каждого выпуска.


Это, вероятно, правильное объяснение.
Чинмай Канчи

То же самое здесь, на моей работе. Но файлы не просто минифицированы, они объединены в один файл. В противном случае было бы почти 20 различных файлов JS для загрузки.
Эхо говорит Восстановить Монику

Я Минимизировать каждую часть / плагин вручную с Closure Compiler затем маркировать участки с /* jQuery x.y */, hoverIntent x.yи т.д. , чтобы следить.
Рассерженная шлюха

13

По определению лицензии MIT это вполне допустимо. Они не распространяют его, и даже если бы они были, они должны были бы только включить копию файла лицензии (не обязательно быть заголовком каждого файла).


Ах, приятно знать.
Пекка поддерживает GoFundMonica

Хорошая информация, но я не думаю, что это отвечает на вопрос. ОП спросила, почему компании делают это, а не разрешают ли им это делать.
Саймон П Стивенс

1
-1. Размещая JQuery (или любой другой код) на вашем сервере, ваши будут распространять код (по крайней мере, насколько это касается закона), а также лицензии MIT делает требуют уведомления об авторских правах , чтобы быть оставлено без изменений.
josh3736

3
@ josh3736 Не могли бы вы указать закон, который говорит об этом? Например, у GPL есть часто задаваемые вопросы, в которых конкретно говорится, что это не квалифицируется как распространение. Существует лицензия Affero GPL, если вы хотите запретить такой вид использования.
Рене Саарсоо

@Rene Saarsoo: в лицензии MIT прямо указано, что авторские права не должны быть удалены, если вы собираетесь «использовать, копировать, изменять, объединять, публиковать, распространять, сублицензировать и / или продавать копии Программного обеспечения».
Мипади

6

Помимо других ответов, которые являются хорошими догадками, единственной другой причиной, по которой я мог бы подумать, чтобы сознательно запутывать, какие библиотеки вы используете, может быть минимизация воздействия, если в библиотеке обнаружен удаленный эксплойт.

Например, если в jQuery была обнаружена какая-то большая демонстрационная пробоина XSS-дыры, возможно, было бы полезно, чтобы мое использование не было слишком очевидным.

Я согласен с другими ответчиками, которые говорят, что это, вероятно, побочный эффект от автономизации развертывания.


4

Это может быть сделано для оптимизации. Конечный пользователь не должен получать эти комментарии. Даже если они сэкономят 1 КБ кода, это может быть хорошо


3

Вероятно, ошибочная попытка запутывания или другая (возможно) ошибочная попытка уменьшить пропускную способность. Я не могу придумать какой-либо практической или технической причины, по которой они захотят это сделать.

Если вам интересно, попробуйте отправить им электронное письмо с вопросом, почему они удалили информацию о лицензии из кода.


7
минимизирующий код не удаляет комментарии?
SB01

2

Возможно, они используют локальную модифицированную версию, а затем переименовали ее в соответствии с местными стандартами.


2

Мы переименовываем наши, потому что мы предоставляем встраиваемые виджеты для наших клиентов, и они могут также использовать другую версию jquery, которая несовместима с нашей.

$ может быть любой версией jQuery (или иногда другими библиотеками, такими как прототип), но мы всегда поддерживаем dmJQuery.

(На самом деле мы не переименовываем его в источнике, просто сделайте это ...)

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

Вот почему вы не переименовываете файл, который вы загружаете из jQuery. Я сомневаюсь, что jquery-1.4.4.min.js будет иметь конфликтующие версии.
Джеймс

да, но если мой скрипт загружает jquery-1.4.4.min.js, а их скрипт загружает jquery-1.4.1.min.js на той же странице, у нас возникает конфликт версий ... (кроме того, мой скрипт упакован в один файл JS для легкого размещения на их серверах ...)
Майк Рухлин,

Решение этого буквально идентично вашему текущему решению, не так ли? Ох ... Если только ваш jQuery не загружен первой версией. И все в одном удобном файле понятно. :-)
Джеймс

1

Как показано на официальном веб-сайте jQuery , его используют: Google, Dell, Digg, NBC, Netflix, Mozilla, WordPress и другие.

Это широко известная и используемая библиотека.

Поэтому я предполагаю, что они меняют имя, чтобы люди не знали, что они используют jQuery, так как они смотрели бы на него негативно, потому что они полагаются на чужой код, а не пишут его сами.


1

Разработчики крупных веб-сайтов заботятся о своих пользователях, и я не вижу никакой причины, по которой они пошли бы путем запутывания технологий, которые они используют, от бесконечно малой доли своих пользователей, которые читают исходный код страницы.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.