LINUX.ORG.RU

Что учить сейчас Python или Golang?

 , ,


0

2

Что лучше новичку учить для бэкенда Python или Golang? Многие советуют Go но по нем сейчас не так много информации для изучения начинающему если ты ничего не знаешь, а по Python куча всего. Ну и на Go как я слышал переходят с других языков например с PHP. Какие можете дать советы?


Для бэка, кмк, более подходит Go. Скорость разработки думаю будет ниже (за счет того, что Python - более высокоуровневый и слаботипизированный), но производительность и расход ресурсов явно сильный аргумент в сторону Go. Но python вообще, более универсальный язык, в случае если захочется выйти за рамки бэка.

Demacr ★★
()
Последнее исправление: Demacr (всего исправлений: 1)

Что лучше новичку учить для бэкенда

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

Так что, не ЯП надо учить, а как можно быстрее влиться в разработку и следовать за рынком.

vvn_black ★★★★★
()
Последнее исправление: vvn_black (всего исправлений: 1)

Я бы сказал что оба востребованы, но python популярнее. Если нет объективного критерия (а-ля в конторе куда ты хочешь пишут на), выбери какой больше нравится, а второй изучи хотя бы по верхам.

не так много информации

У обоих языков качественная официальная документация. Остальное - кривые васянские гайды и книжонки, не надо их даже смотреть.

slovazap ★★★★★
()

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

Goury ★★★★★
()

Лучше всего go конечно, там один бинарник на выходе получается, запихиваешь его в докер контейнер from scratch и хоть в продакшен. А на питоне заманаешься свой хелловорлд в контейнер запихивать чтобы никто не доколупался

slyjoeh ★★★
()

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

urxvt ★★★★★
()
Ответ на: комментарий от vvn_black

Я просто не знаю даже на какой рынок вакансии лучше ориентироваться, в моём регионе не так много вакансии веб Python(Django) всего 33, по Goland примерно также , я из Казахстана

Henry
() автор топика

Стажером иди куда-нибудь. Реальная разработка сильно отличается от «изучения языка» и пет-прожектов. Это примерно как учиться плавать по книжке ни разу не зайдя в воду.

upcFrost ★★★★★
()
Ответ на: комментарий от Henry

Я просто не знаю даже на какой рынок вакансии лучше ориентироваться

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

Поэтому, хорошо бы просто в разработку вкатиться с минимальными общими знаниями. ЯП по месту выучите.

vvn_black ★★★★★
()
Ответ на: комментарий от bread

А писать все равно будете на том, на чём прикажут. И вероятнее всего на PHP

Соболезную. Чего уж там.

На самом деле уже лет десять как не видел php в продакшне. А чистый backend на нем наверное вообще никогда. Я не спорю, возможно оно и существует где-то.

А так в основном golang, python, nodejs и c# сейчас. И выбор стека обычно идет от задач.

adn ★★★★
()
Последнее исправление: adn (всего исправлений: 1)
Ответ на: комментарий от slyjoeh

Лучше всего go конечно, там один бинарник на выходе получается, запихиваешь его в докер контейнер from scratch и хоть в продакшен

чтобы бинарник на go можно было запихнуть в контейнер scratch, он должен быть статически слинкован. Что далеко не всегда тривиальная задача. Особенно с учетом что речь о бэкенде, где чуть меньше чем всегда подключается net/http

Lrrr ★★★★★
()

Go как первый язык кмк выглядит лучше, навскидку

  • писать дичь сложнее
  • отличная стандартная библиотека
  • скорость и статические типы - приятно
  • нет дремучего легаси
ddidwyll ★★★★
()
Последнее исправление: ddidwyll (всего исправлений: 1)
Ответ на: комментарий от Lrrr

он должен быть статически слинкован. Что далеко не всегда тривиальная задача.

там в зависимости только несколько системных либ (ld-linux, linux-vdso, libpthread, libc). не уверен, что их статически возможно встроить. не знаю подробностей докера from scratch, но думаю он предоставляет какой-то базовый набор системных либ.

ergo ★★★
()

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

у меня в голове когда-то был питон. уже почти 10 лет как не пишу на нем. не особо скучаю. го в моих задачах несопоставимо выигрышнее в сравнении с питоном.

ergo ★★★
()
Ответ на: комментарий от ergo

scratch - значит пустой, никаких libc там нет. Динамически слинкованный с libc бинарник в нем не запустится.

Если нужен какой-то совсем минимальный образ с системными либами, то например у гугла есть такие - https://github.com/GoogleContainerTools/distroless/tree/main/base

Lrrr ★★★★★
()
Ответ на: комментарий от JleHb

какие мы нежные… обиделся на фейспалм :). получил ты его за вот это

кто пишет на Go back - уже заготовлен отдельный котёл.

безапеляционную и неаргументированную чушь.

не уверен, сможешь ли ты также пояснить свой «фейспалм», который ты в отместку поставил под моим каментом.. не уверен :).

ergo ★★★
()
Ответ на: комментарий от JleHb

Я, как профессионал, могу тебе напомнить владельца «свободы», это, «барабанная дробь» - MS!

Мы тут все профессионалы — y меня даже диплом есть.
Шутку про MS я не распарсил.

urxvt ★★★★★
()

Где будешь искать работу? Вот там и смотри что приоритетный. А вообще советую PHP. Точно не прогадаешь и работа всегда будет.

CryNet ★★★★★
()
Ответ на: комментарий от ddidwyll

по месяцу

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

ergo ★★★
()
Ответ на: комментарий от ergo

безапеляционную и неаргументированную чушь.

Микросервисы пиши дальше. Backend на Go? Смешной.

обиделся на фейспалм :)

Chatbot прошерстит ряды клейщиков. Выживут только Штангисты и, возможно, мутанты Лисперы.

К ним я тебя не отношу. Так что байбай :)

JleHb
()