172 похожих чатов

Добрый вечер, есть опыт Python, хочу изучить компилируемый язык, с

перспективой на будущее.
Выбар пал между Golang и Rust.
Ознакомился с обзорами в интернете, посмотрел бенчмарки, но хотел бы поинтересоваться у живых носителей языка.
Основные задачи, сфера интересов(backend):
- Telegram боты
- Web приложения
- Desktop application
- Blockchain
- linux cli утилиты

Что понимаю на данный момент:
- Получается на go меньше порог вхождения и быстрее скорость разработки
- Rust опережает по бенчмаркам

Естественно в чате, про Rust, думаю будут реккомендовать Rust.
В общем хочется выбрать язык, с которым можно пройти 5-10 лет, без необходимости переключения, изучения других языков.

Можно ли сказать, что на Rust можно сделать все? Какие недостатки вы бы отметили, может есть какие-либо моменты, в которых Go опережает Rust.

На данный момент как понимаю world-class стандарт для масштабных проектов - это C, C++, но тем неменее на github много linux утилит, переписанных c C на Rust.

И если смотреть с долгосрочной точки зрения, может сразу стоит пойти в C, C++

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

9 ответов

9 просмотров

В Go некуда расти

недостатки: долгое время компиляции на больших проектах, относительно молодая экосистема (много чего нет, но много чего уже есть из базового) достоинства: зиро кост абстракшенс, хай перформанс, типчики, евангелизм

Я и мы тут любим раст, но если тебе нужна работа, то изучай Go

ботов, web-приложения — пиши на Go. Блокчйн и CLI — на расте. Десктопные приложения не нужны

Под список задачь/сфер интересов раст отлично подходит. Но работу в ближайшие несколько на нём будет значительно сложнее найти, чем на том же go. Хотя не понятно, что мешает изучать оба языка?

Если не знаешь статически типизированных языков, то лучше наверное всё же начать с го. Благо он простой и много времени на его освоение не уйдёт. Rust лучше изучить когда статическая типизация для тебя не столь в новинку.

А мне кажется в твоем случае лучше вообще не думать сейчас какой язык "на будущее" изучать. А параллельно с практикой на python, изучить "низкий уровень" прочитать про ОС, поиграться с ассемблером, изучить си (благо небольшой язык). А там может быть и сам поймешь, что тебе нужно больше rust/go или вообще продолжить развиваться в питоне и математике к примеру.

Для этих задач прямо голанг и предназначен, ну кроме десктопных прог, там лучше дельфов ничего нет

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

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
5
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Карта сайта