Комментарии 5
Подушню
"Ранее наши разработчики делали обзоры на Rust, Scala, JavaScript и Spark. "
Нельзя сделать обзор "на", но можно сделать обзор чего-то
Что-то я не понял. В плюсах вы указываете простоту языка, а в минусах - наличие GC. Если бы его не было, то язык усложнился бы многократно. Минус про обработку ошибок также видится притянутым за уши. Я не в курсе особенностей языка, но полагаю, что присутствует тип Объект|ошибка. Если у вас каждая функция может заканчиваться с ошибкой (равносильно исключению), то вы в любом другом коде точно также должны их обрабатывать
Добрый день! Мы передали ваш комментарий автору. Ниже его ответ.
В плюсах вы указываете простоту языка, а в минусах - наличие GC. Если бы его не было, то язык усложнился бы многократно.
Все верно, это не противоречит написанному. В первую очередь GC находится в "плюсах", потому как избавляет разработчиков от работы с памятью на том же уровне, что и в ЯПах без GC. Это в свою очередь облегчает работу с языком. В "минусах" он указан, чтобы подчеркнуть, что GC не является панацеей — он добавляет, пусть небольшую, но нагрузку, а также может создавать иллюзию, что разработчику не нужно беспокоиться о памяти. Но, без грамотно написанного кода, вы все еще подвержены утечкам.
Если у вас каждая функция может заканчиваться с ошибкой (равносильно исключению), то вы в любом другом коде точно также должны их обрабатывать.
Акцент сделан не на том, что в Go необходимо обрабатывать ошибки, а в других языках — нет. Минус состоит в подходе работы с ними. Блоки обработки исключений во многих других языках так или иначе позволяют нам группировать вызовы определенных методов и заняться обработкой уже после описания какой-либо логики. Конечно, могут быть ситуации, когда каждый вызов мы так же можем обрабатывать отдельно, но это частные случаи и их можно приводить бесконечно. В случае с Go, обработка почти всегда будет происходить между строк, после каждого вызова метода\функции, способных вернуть ошибку.
Не совсем понимаю причем тут тег реверс-инжиниринг. Если данный термин упоминается в статье 1 раз. Но при этом даже не упомянут тег Go.
Какой язык программирования выбрать? Обзор Go