boost — обратная совместимость в Java по сравнению с переполнением стека

Я некоторое время пишу на C ++ и уже привык к проблеме совместимости платформ. Но теперь я понял, что обратная совместимость — это еще одна существенная проблема:

Как можно Boost библиотеки успешно использоваться для важных проектов?

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

(Источник: http://www.boost.org/users/faq.html)

У Java та же проблема? Я знаю, что ситуация отличается от пакета к пакету, но как насчет пакетов Java, которые так же известны, как boost в мире C ++?

0

Решение

Вы удобно перерезали остальная часть ответа в Boost FAQ, где рассказывается, как справиться с этой проблемой:

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

Что касается остальной части вашего вопроса …

У Java та же проблема?

Конечно. Это не проблема с конкретным языком программирования. Это проблема сторонних библиотек или фреймворков в целом.

Я знаю, что ситуация отличается от пакета к пакету, но как насчет пакетов Java, которые так же известны, как boost в мире C ++?

Нет ничего похожего на Boost для Java, потому что многие вещи, предлагаемые Boost, уже являются частью самой платформы Java, к лучшему или к худшему. Подумайте о строковых алгоритмах или операциях с файловой системой.

Как говорится, возможно Apache Commons подходит близко Как оказалось, у него есть своя доля проблем обратной совместимости, что, как я уже говорил выше, совершенно нормально. Например, заметки о выпуске для v4.0 четко заявить следующее:

Эта версия использует универсальные функции Java 5 и не совместима с более ранними версиями JDK.

(…), мы решили сломать API различными способами. (…) Мы также удалили все устаревшие классы и фиксированные странности в предыдущем API, которые мы не могли исправить из-за ограничений обратной совместимости.

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

3

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector