Майкрософт что-то сделал правильно…

Typescript — это надмножество Javascript со строгой типизацией, которое обеспечивает некоторую структуру чрезвычайно гибкого мира Javascript. Typescript предоставляет одну ключевую функцию, которую я хотел бы добавить в Java (и другие серверные языки), и это возможность выбирать целевую версию. Это позволяет разработчикам использовать новые функции ES6 и сохранять совместимость со старыми браузерами.

Почему мы заботимся?

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

Решение

Если бы скомпилированные языки, такие как Java, предоставляли бы способ переноса из одной версии в другую, это позволило бы «молодым стрелкам» использовать новейшие и лучшие инструменты, библиотеки и т. д., но при этом быть совместимыми с устаревшими средами! Да, есть миллион причин, по которым талант может уйти из компании, но необходимость изучать инструмент, язык или структуру 5–10-летней давности только потому, что ваш работодатель имеет долгую историю и не может обновить среду по прихоти, — это плохое чувство.