" Дополнительные методы в JavaScript" через свойство прототипа.
Array.prototype.contains = function(value) {
for (var i = 0; i < this.length; i++) {
if (this[i] == value) return true;
}
return false;
}
Это добавит contains
метод ко всему Array
объекты. Можно назвать этот метод с помощью этого синтаксиса
var stringArray = ["foo", "bar", "foobar"];
stringArray.contains("foobar");
Внедряйте инновации, расширяя, а не переписывая общедоступные API. Иметь согласованные общие общедоступные интерфейсы к внутренним функциям. Вы можете переписать частные модули в любое время, если вы предоставите общедоступным модулям API ожидаемые результаты.
Внесите улучшения в серверную часть и оставьте API максимально согласованным. Создавайте новые модули и четко документируйте их при расширении общедоступных частей вашего API. Отказ от старых способов станет естественным, если вы предоставите новые и лучшие способы делать то, что является дополнением к старым.
Для форматов документов всегда указывайте номера версий и убедитесь, что у вас есть способы поддержать все существующие версии. Как и в случае с API, добавляйте новую функциональность путем расширения, а не переписывания.
Используйте XML в качестве основы для формата вашего файла и только добавляйте к спецификации DTD, а не удаляйте. Таким образом, ваши файлы должны быть обратно совместимы с более ранними версиями, что является плюсом.
Вот хороший пример: Использование мостов SLF4J для упрощения миграции с одного модуля ведения журнала на другой в Java.