BTC $ 5378.49449687 (-1.7 %)
ETH $ 157.706663535 (-4.45 %)
XRP $ 0.2963626738 (-1.74 %)
BCH $ 274.662646107 (-2.3 %)
LTC $ 74.4035118411 (1.33 %)
EOS $ 4.7938242097 (-0.51 %)
BNB $ 22.8090979449 (-1.45 %)
USDT $ 0.9821919274 (-2.4 %)
XLM $ 0.1009560824 (-2.84 %)
ADA $ 0.0708284988 (-2.31 %)

Обновления языка Solidity: Большие и малые обновления

20:30 19/01/2019
Обновления языка Solidity

Введение

 

Solidity — язык программирования, используемый в среде Эфириума. Это наиболее популярный язык для написания смарт-контрактов и распределенных приложений (Dapp). Существуют и другие языки, но поскольку Solidity поддерживается разработчиками Эфириума, его можно рассматривать как лидера.

 

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

 

Виртуальная машина Эфириума (EVM, Ethereum Virtual Machine) создана для обработки Dapp и смарт-контрактов. Она использует данные из программ, написанных на Solidity, чтобы впоследствии выдать результат их обработки. По мере роста Эфириума растет и EVM. Некоторые команды меняются, какие-то добавляются, а другие — удаляются из списка. Поэтому избавление от неизменности смарт-контрактов — необходимость для постоянно развивающейся среды.

 

Версия Solidity изменилась 13 ноября 2018 года с 0.4.x до 0.5.x. Это значит, что были внесены изменения, существенно влияющие на процесс программирования. Интересно, что в том же году, 3 декабря, вышло еще одно обновление — 0.5.1. Между тем 0.5.2 было представлено 19 декабря. Такой рост действительно интересно изучить.

 

Значительные и малые изменения

 

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

 

  — Количество авторов в секции «отдельная благодарность». Сравнивая версии 0.5.0 с 0.5.1 и 0.5.2, становится ясно, что в первой приняло участие больше людей: 11 строк с именами против 2 и 3 строк. Как правило, чем больше людей участвовало в разработке проекта, тем больше идей было представлено и тем тщательнее была проведена проверка.

  — Количество изменений. В небольших версиях обновлений список изменений расположен на той же самой странице. У большого обновления, напротив, настолько много изменений, что ни одно из них не указано. Вместо этого дана ссылка на полный список.

  — Описание релиза. Указано, что обновление относится к «значительным» и «прорывным». Список улучшений включает повышенную избыточность определений, изъятие редких ситуаций, упрощение низкоуровневого интерфейса.

 

Другие обновления

 

Описание версии 0.5.0 можно сравнить с другими описаниями для лучшего понимания разницы между ними. Рассмотрим апдейты 0.4.19-0.4.25, 0.5.0, 0.5.1 и 0.5.2.

Язык программирования Solidity

0.4.23 и 0.4.25 представляют собой исправления ошибок. 0.4.19, 0.4.20, 0.5.1 и 0.5.2 оказывают небольшое влияние на точечные области внутренних изменений, безопасности, удобства и эффективности. 0.4.21, 0.4.24 представляют изменения, запланированные на 0.5.0 в тестовом режиме для их проверки разработчиками перед окончательным применением. Последний апдейт 0.4.22 содержит «несколько важных и долгожданных изменений». И все же он не может называться значительным из-за небольшого количества этих изменений.

 

Общий процесс улучшения

 

Глядя на малые обновления, мы можем заметить интересную вещь. Несколько изменений, запланированных на 0.5.0, были проверены заранее. Разные частные моменты были привнесены на благо разработчиков. Такой подход умен и мудр для быстро развивающегося проекта. Как мы видим, первое обновление такого рода было предложено в марте 2018. В описании сказано: «Мы вновь представляем некоторые изменения, запланированные на версию 0.5.0». Сложно отследить конкретное обновление, где впервые были запланированы особенности для 0.5.0. Но мы можем с уверенностью сказать, что у разработчиков было несколько месяцев для тестирования.

 

Послесловие

 

Разработка Solidity — это неотъемлемая часть роста Эфириума. Из-за расширения функциональности смарт-контрактов все компоненты Solidity влияют как на сообщество разработчиков Эфириума, так и на обычных пользователей.

Нашли ошибку? Выделите её и нажмите Ctrl + Enter чтобы сообщить администратору.

Самые актуальные новости о криптовалютах и блокчейне. Прочтите первым!

Зачем мне это?

Загрузка...