Вот чем больше пишу на Go, тем больше мне кажется, что этот же код на C# чуть более элегантный.
Надо посмотреть, есть ли хороший маппинг у Go, потому что у C# уже по умолчанию значения из тела хорошо парсяться в объекты. Декодинг тела в Go громоздкий.
Постоянная обработка error. Да, такие ошибки быстрее, чем исключительные ситуации. Поэтому Go и пошли на этот подход - ради скорости. Но выглядит это опять же чуть громоздко.
Думаю программисты Go сейчас кинут в меня камни и скажут, что я просто не умею на нём писать. А я и не скрываю. Я сейчас изучаю Go и документирую весь процесс на бусти (можно увидеть тут). Если когда я учил Go мне всё нравилось, но когда начал писать уже проект чуть ближе к реальности, то появиляются вопросы в отношении мапинга и обработки ошибок. Я не использую сторонние фреймворки, а только встроенные возможности http, который ещё развивается и может что-то ещё появится.
Можете накидать под постом мне бананов чтоб я поскользнулся в своей Канаде, но это дело вкуса и если бы мне нужно было создавать новый проект для написания API то я бы выбрал Python+FastAPI или C#+.NET. Но я продолжаю изучать Go и возможно через год выйдет пост, что Go самый лучший в мире.
Понравилось? Кликни Лайк, чтобы я знал, какой контент более интересен читателям. Заметку уже лайкнули 1 человек
Go ведь довольно нишевый язык, для highload микросервисов. Очень быстро стартует, это очень часто критично для serverless, например в кубере. Не знаю насколько быстро стартуют C# приложения, но скорее всего заметно медленней чем Go.
На Python есть множество способов сделать одно и то же. В Go скорее всего код везде будет очень близок для решения одной и той же задачи.
Если писать для себя там где нет высоких нагрузок, возможно оптимальный выбор Python.
Хотите найти еще что-то интересное почитать? Можно попробовать отфильтровать заметки на блоге по категориям.