Существуют ли библиотеки JavaScript, которые не требуют обновления при выходе новых версий браузера? - PullRequest
2 голосов
/ 20 сентября 2011

В своей работе я использую dojo, и мой опыт показывает, что при значительном обновлении браузера некоторые части старой версии dojo ломаются. Чтобы веб-приложение работало в последних версиях браузера, вам действительно необходимо постоянно обновляться до последней версии Dojo.

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

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

Ответы [ 4 ]

2 голосов
/ 20 сентября 2011

Конечно, это относится ко всем библиотекам javascript.

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

Если код активен и должен продолжать работать, это все, что вы можете сделать.

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

1 голос
/ 20 сентября 2011

Это намного шире, чем JavaScript.Когда выходят новые версии ОС, нативные приложения нуждаются в доработке.Когда выходят новые версии программного обеспечения, плагины нуждаются в некоторой настройке.Все, что зависит от чего-то вне себя, вероятно, нуждается в некотором обслуживании, когда это «что-то» изменится.Тем не менее, для JavaScript это хуже, чем когда-либо ...

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

  • Прочитайте документацию о вещах, на которые вы полагаетесь, и придерживайтесь документированного поведения.Вещи, которые вы просто бьете до тех пор, пока они «кажутся работающими», с большей вероятностью сломаются позже, потому что они, скорее всего, будут полагаться на недокументированную функциональность.Чем больше вы правильно кодируете вещи (например, как того ожидают от вас провайдеры фреймворка), тем больше вероятность того, что оно останется стабильным.,Если вы полагаетесь на шесть вещей, одна из них сломается.Если вы полагаетесь на две вещи, то, прежде чем возникнет проблема, может потребоваться гораздо больше времени.

  • Ищите фреймворки с большим послужным списком и посмотрите, как они вели себя во время обновлений,Если у команды разработчиков нет четкого заявления о том, что они изменили свой подход, вы должны ожидать, что будущее будет выглядеть как прошлое.

  • Сохраняйте то, на что вы полагаетесь, просто.Чем больше и более всеобъемлющий фреймворк, тем больше вероятность того, что в некоторых его частях возникнут проблемы, когда произойдут базовые изменения.Следствием этого является то, что делать то, что вы делаете, просто.Чем сложнее ваша программа, тем больше вероятность того, что у нее возникнут проблемы.

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

В конце концов, сложные требования приводят к сложнымфункции приводят к сложным зависимостям, ведут к хрупким обновлениям.Сохраняйте ваши требования простыми, и ваши обновления будут более плавными.Существует компромисс между броским / модным и долгосрочным устойчивым.Если долгосрочное обслуживание обходится вам дорого, сохраняйте его простым.

0 голосов
/ 20 сентября 2011

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

0 голосов
/ 20 сентября 2011

Библиотеки Javascript не зависят от браузера, было бы невозможно управлять библиотеками, если бы это было так.

...