Комментарии 12
Видно, что она долго и тщательно полировалась — например, в основные листинги кода отличаются от листингов кусочков в объяснениях :). Думаю, стоит поправить — и в первой статье (при использовании макроса unimplemented!), и здесь, в 18 главе при использовании map_err.
Также вы какой-то странный выбрали метод для расширения массива до capacity. Есть же метод resize.
Кстати, до кучи вопрос: в чем пишите код? Уже появились более-менее нормальные IDE, умеющие не только синтаксис подсвечивать?
Во время написания текста и кода метод еще был помечен как unstable, поэтому и используется такое вот странное решение. :)
Различные примеры — такое возможно, исправлю.
Спасибо за отзыв!
в чем пишите код? Уже появились более-менее нормальные IDE, умеющие не только синтаксис подсвечивать?
Код пишу в Emacs. А нечто подобное IDE уже давно есть — например, в виде дополнения для редакторов/IDE, Racer, которое добавляет автодополнение кода и всякие другие удобства. Еще есть плагин для IntelliJ Idea, но я сам его не пробовал, честно говоря.
Порядок может идти от младшего к старшему (little-endian), либо от старшего к младшему (big-endian).Бывают и mixed-endian (в том же modbus rtu — регулярно).
Ну и да, надеюсь на удобную IDE под винду. Виртуалку ради раста заводить не очень хотелось бы. Пробовал Atom, там еще куда ни шло, но интеграция оставляет желать лучшего, да и сам редактор на вебките доверия не вызывает. Очень много скриптовых ошибок у дополнений…
Немного сырая IDE есть в виде плагина для IntelliJ Idea, вроде даже под патронажем JetBrains разрабатывают. Остальные варианты вот тут можете посмотреть: https://areweideyet.com/
Не могу понять, что в нем такого сложного
Думаю, это просто с непривычки, вот и кажется сложным. Если язык как таковой вам интересен, делайте пробные приложения дальше, со временем в голове все встанет на свои места. По большому счету он не сложнее Си (и точно проще C++). Ну и присоединяйтесь к русскоязычному коммьюнити, поможем, чем сможем. :)
К сожалению, работа и участие в развитии сообществ вносят свои коррективы в планы — увы, пока времени так и не нашлось, а требуется его на подобные статьи много.
К тому же, в данном случае нужно не продолжение, а переписывание почти с нуля, учитывая произошедшие изменения в компиляторе Rust и изменения в библиотеке mio. Пока рекомендую посмотреть в сторону Tokio — на данный момент это стандарт де-факто для программирования асинхронных штук в мире Раста. У них на сайте неплохие руководства, но, к сожалению, пока только на английском.
Как выйдет продолжение, я обязательно отвечу сюда и оповещу. Спасибо за мотивацию! :)
Rust в деталях, часть 2