LINUX.ORG.RU

почему голанг - это кул

 


1

3

Голенгу никогда не догнать сишечку, потому что в нём нельзя циклические зависимости. В Си можно, в Паскале можно. Это, наверное, самая плохая новость для меня за всё время его изучения.

★★★★★

Последнее исправление: den73 (всего исправлений: 2)
Ответ на: комментарий от anonymous

Практика показывает другое. Что на го можно взять и написать то, что нужно очень быстро. Возможно медленнее, чем на каком-нибудь питоне, но не всегда и не намного.

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

А вообще то, что трудно говнокодить - это скорее плюс. Я конечно понимаю, что у определенного количества «специалистов» из-за этого подгорает, но это их проблемы.

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

Я на ЛОР-е зарегистрировался, т. к. понял, что стал часто сюда заходить. Причём совсем недавно. Заходил раньше сюда только через Гугл, а так, чтобы регистрироваться - нет.

Deleted
()
Ответ на: комментарий от buddhist

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

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

Когда я был джуном, у меня однажды тоже была проблема с циклическими зависимостями в go. Примерно тогда мой лид дал мне почитать «Совершенный код» Макконела. Так вот там есть глава, которая рассказывает, что такое «связность» и почему сильная связность это плохо. Расписывать не буду, извините, читайте первоисточник (ну или любой другой источник, их заметно больше одного).

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

У тебя кровеносная система связна со всем организмом, как и нервная и лимфатическая. Большинство органов частично дублируют функции друг друга, если один отказывает, его могут в большой степени заменить другие. А бумага всё стерпит.

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

Аналогии такие аналогии. Неправильно ты все же профессию выбрал.

Очень похоже, что страшных слов вроде «инкапсуляция» и «декомпозиция» ты никогда не слышал. Ну или слышал и благоразумно посчитал бредом сектантов.

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

а почему нет? просто подставляете ц в строку запроса и наиболее релевантные результаты всегда идут первыми в выдаче

anonymous
()
Ответ на: комментарий от feofan

Я тебе привожу пример оптимизированной и достаточно сложной инженерной системы, которую сделал Бог. Если ты посмотришь достаточно сложную систему, сделанную человеком, то там тоже будет сильная связанность. Посмотри на любой компилятор. Я на любой не смотрел, смотрел только на SBCL. Но там это чётко видно. Всё разбито на этапы, вроде как модульно, но... следующий этап тонким образом завязан на некие особенности предыдущего, которые не из чего не следуют. Чем меньше модули знают друг о друге, тем меньше возможностей сделать оптимально работающую систему модулей. А программа - это не модуль, а система модулей. Так что - примитивные и дуболомные программы соблюдают все эти инкапсуляции и декомпозиции. Настоящие программы, как правило, не соблюдают.

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

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

Я тебе привожу пример оптимизированной и достаточно сложной инженерной системы, которую сделал Бог

У кое-кого слишком высокое ЧСВ.
В реальности человеческий организм — кривейшее говно с кучей легаси, костылей и багов. Если представить программу аналогичного «качества» и сложности, то иногда даже худшие поделия веб-макак показались бы идеалом в сравнении с.

anonymous
()
Ответ на: комментарий от WitcherGeralt

вот осилить разработку на языке без гор сахара и магии могут не все.

Естественно, ведь это разработка через копипасту, void*interface{}, боль и страдание.

anonymous
()
Ответ на: комментарий от feofan

А вообще то, что трудно говнокодить - это скорее плюс

В го приходится говнокодить.

anonymous
()

Какая же у тебя крутая кривая обучения. Еще неделю назад «голанг хороший», теперь «голанг не столь хорош». К концу месяца ожидаем аналитику «голанг днище». Тебе нужно просто поверить святым мудрецам (сам Пайк, ололо, преклоним колени) и следовать завету, иначе так и будешь метаться и страдать.

anonymous
()

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

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

осилить разработку на языке без гор сахара и магии могут не все

А зачем нужно это осиливать? Ты принципиальный мазохист? Кроме того, что без «сахара и магии» ты обречен на однообразные портянки вместо абстрагирования, такие рабоче-крестьянские языки делают тебя же уязвимее, ибо легко заменить одного копипастера портянок на другого такого же подешевле. С точки зрения менеджера голанг конечно выдающийся язык, но когда вольноопределяющийся пограмист начинает его нахваливать, это клиника.

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

Я бы тебя ещё понял, если бы ты говорил про ручное выделение памяти, например. Но в сабже всё достаточно высокоуровнево.

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

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

Go очень хорош для больших компаний

Отличный повод держаться от него как можно дальше, если ты не топ-менеджер этой самой компании.

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

так ведь оно так и есть. смотришь на туториалчики на ютубчике туториалы и докладики разного уровня половозрелости товарищей и вроде как все красиво стелят. потом начанаешь писать на этом и замечаешь что вкус говна во рту все более устойчивый и желание го-кодить пропадает после первого if err. потом понимаешь что реализация чего-то посложнее хэлоу-ворлд-апи сервера и парсинга жсона (чем так любят кичится на разных конференциях) требует interface{} на interface{} через interface{}

anonymous
()
Ответ на: комментарий от WitcherGeralt

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

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

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

желание го-кодить пропадает после первого if err

Вот кстати, еще не так давно адепты раста уверяли, что matchить каждый вызов для распаковки ошибок это классно и идеологически верно, а потом внезапно им завезли ? и теперь все радостно пробрасывают ошибки неявно без угрызений совести. Гребаные адепты, и гребаные теоретики, не сделавшие проброс ошибок по дефолту. Теперь и голанг подходит к стадии костылей, чтобы идеологически сцуко верная обработка ошибок была не такой огромной занозой.

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

Похоже ты наступил на ржавую мозоль. Извинись

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

Поскольку я начинал с Паскаля

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

Это телетайпы виноваты. Невозможно было набирать много кода на алголо-подобных языках и остаться в здравом рассудке. Теоретикам то было пофиг, они больше на салфетках набрасывали. К моменту когда многословность перестала быть столь значимой, накопилась уже критическая масса промышленного кода и программистов на сишке. А потом в жабе и т.п. уже от сишки только скобочки остались. Голанг это и вовсе вариация на виртовские темы, и вот смотрите — взлетел.

anonymous
()
Ответ на: комментарий от menangen

Есть менее некрасивые обходные пути, которые в том самом ответе на SO были приведены. Например, указатель на функцию, или интерфейс и единственная реализация. Или тупо interface{}

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

За сишкой стояли указатели на функции, на которых стоится абсолютно _любая_ абстракция, и которых нет в паскале. Ты не сможешь поток запустить без указателя на функцию, лол. Prove me wrong.

Cycle_A
()
Ответ на: комментарий от den73

за сишкой стояла AT&T

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

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

Вот кстати, еще не так давно адепты раста уверяли, что matchить каждый вызов для распаковки ошибок это классно и идеологически верно,

Поэтому задолго до ? все активно использовали try!(...)?

quantum-troll ★★★★★
()
Последнее исправление: quantum-troll (всего исправлений: 2)
Ответ на: комментарий от Cycle_A

За сишкой стояли указатели на функции, на которых стоится абсолютно _любая_ абстракция, и которых нет в паскале

В паскале есть указатели на функции. Может когда-то и не было, но я что-то сомневаюсь.

anonymous
()

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

Kazun3500
()

По теме - необходимости в циклических зависимостях не вижу.

Kazun3500
()
Ответ на: комментарий от quantum-troll

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

anonymous
()
Ответ на: комментарий от quantum-troll

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

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.