Как безболезненно перейти с Python на Rust?



@IIggoorrII

Почему я собрался перейти с Python на Rust?
1) Python медленный
2) В python нет адекватного управления памятью
3) В python мне приходится испльзовать кучу мегабайт библиотек (я чувствую себя тупым и бесполезным при импортировании библеотек)
4) Python кажется игрушечным языком
5) Python не подходит род микроконтроллеры (micropython — просто игрушка)
6) Проблемы из-за GIL’а
Почему не c/c++? Я не знаю пока, я ими не интерисуюсь (но писать на c++ я пробовал)


Решения вопроса 1



@kshnkvn

Учишь rust -> пишешь на rust.



2

комментария


Ответы на вопрос 3



@vabka

Как безболезненно перейти с Python на Rust?

Учиться, учиться, учиться.

1) Python медленный

Питон на удивление быстрый, особенно если использовать PyPy, а сильные тормоза возникают только в особых случаях.

2) В python нет адекватного управления памятью

Автоматический GC — это один из самых адекватных способов управления памятью, который только придумывало человечество.

3) В python мне приходится испльзовать кучу мегабайт библиотек (я чувствую себя тупым и бесполезным при импортировании библеотек)

А вы импортируйте их с мыслью «я не хочу тратить кучу времени на реализацию этого всего с нуля»
В расте вам точно также придётся импортировать кучу библиотек, как и в любом другом языке, где есть библиотеки.

4) Python кажется игрушечным языком

Зря так думаете. Python очень мощный.

5) Python не подходит род микроконтроллеры (micropython — просто игрушка)

Раст+МК для новичков тоже очень страшная вещь — посмотрите на вопросы от товарища eegmak, например, чтобы в этом убедиться.
Micropython — вполне себе production ready инструмент для тех случаев, когда его хватает, и не нужно ужиматься в очень дешёвые чипы.

6) Проблемы из-за GIL’а

С какими именно проблемами вы столкнулись на практике?)
Скорее всего, их можно решить и менее радикальными методами.

ИМХО: вы услышали от кого-то что Rust-топ язык, а Python — игрушечный, а настоящие программисты используют ручное управление памятью и сами реализовывают всякие сложные алгоритмы и протоколы.
Хотя обычно ещё пишут, что настоящие программисты пишут только на C, только в виме, и никогда не ищут ответы на русскоязычных форумах.

Если я прав — задумайтесь ещё раз, какую именно вашу проблему может решить раст, которую не может решить Python.

Если я вас не отговорил — берите rustbook (лучше способа не придумали ещё).

Если хочется перейти на другой язык, не обязательно раст — посмотрите в сторону других языков со сборкой мусора — например C#, Go, или D. Их все можно использовать в том числе и на МК, с разной степенью извращений.



@sergey-gornostaev

Python медленный

Надо сообщить об этом тем, кто на нём высоконагруженные сервисы пишет.

Python кажется игрушечным языком

Надо сообщить об этом тем, кто на нём высоконагруженные сервисы пишет.

Проблемы из-за GIL’а

Надо сообщить об этом тем, кто на нём высоконагруженные сервисы пишет.



@ozkriff

Мне в целом нравится ответ Василий Банников, но дополню еще, что безболезненно изучить раст вряд ли выйдет — порог входа у языка все-таки весьма суровый. Разве что был до этого серьезный опыт с ФП языками и замороченой системщиной вроде плюсов.

А так, да, остается читать растбук, rbe, смотреть лекции Кладова, спрашивать непонятное в новичковых чатах и в итоге погружаться в rust-learning.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *