Все мы знаем, что Ballerina - это новый язык программирования, предназначенный для сетевых распределенных приложений. Хотя он имеет все аспекты языка программирования общего назначения, он также имеет некоторые особенности, связанные с сетевыми распределенными приложениями.

Но почти каждый имеет в виду следующий вопрос:

Зачем нам нужен еще один новый язык программирования, когда их уже много?

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

1. Мир изменился

Новые нормы для сетевых распределенных приложений

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

Вы пишете это, вы являетесь владельцем в производстве

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

Новая потребность в правильном инструменте

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

2. Адаптация к изменениям

WSO2, компания, которая много лет занимается сетевыми распределенными приложениями, увидела, что изменения грядут, и хотела что-то с этим сделать. Они сформировали небольшую команду с кучкой несчастных инженеров, которые хотели сделать написание сетевых распределенных приложений увлекательным и простым. Эта команда годами пробовала много разных вещей, пока проект не превратился в язык программирования. Теперь команда выросла, и проект утвержден как язык программирования, и мы называем его Ballerina. Теперь все довольны? НЕТ. Традиция быть несчастным продолжается и по сей день, и каждый продолжает пробовать разные вещи, чтобы исправить это. Как выясняется, самое интересное - это попытаться выяснить все различные способы сделать написание сетевых распределенных приложений интересным и легким.

3. Балерина - новый язык программирования

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

Хммм, я могу сделать то же самое с существующими языками программирования

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

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

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

Хорошо, есть так много библиотек, чтобы улучшить мой опыт

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

Но все же будет ли этот опыт таким же, как при игре в настоящий футбол? конечно, вы могли бы улучшить впечатления по сравнению с использованием чистого теннисного мяча. Например, будет меньше травм, возможны передачи на дальние дистанции, возможность владеть мячом головой и т. Д., Но все же это не то же самое. Вы будете менее эффективны, ваш набор навыков будет ограничен, вы будете менее точны и т. Д.

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

Заключение

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

Чтобы попробовать себя в роли Балерины, посетите ballerina.io. Если вы хотите начать вносить свой вклад в Ballerina, вот кодовая база.