Koala
Вопрос: есть ли преимущества у языка Go для высоконагруженных систем перед традиционными C/C++?
Ты знаешь, что у Go даже самая мелкая программка весит мегабайт? При этом на C я могу в мегабайт засунуть десяток пакетов о-о-очень полезных программ. Знаешь, при записи на какую-нибудь микросхему, где памяти нет, или даже хостинг в инете, где за каждый мегабайт просят по $100, это имеет значение. Конечно, прекрасно, что можно в программу всё включить и она не будет ни от чего зависеть. Но в нормальной среде правильно то, когда есть выбор, как тебе сделать - включать или не включать все зависимости. В Go же выбора нет.
Я бы не смешивал C и C++, так как это абсолютно разные языки по своему развитию, по своему стилю, по своим принципам оценки качества кода. Они противоположны по синтаксису: простота и компактность C и полнота и подробность в C++. В результате одна и та же программа на C занимает три строки по пять букв, а на C++ она же занимает двадцать три строки по двести букв. Так вот Go можно сравнить с C и Go можно сравнить с C++. Сравнивая Go с C++, мы видим, что в Go нет классов и исключений, нет шаблонов, нужно изощряться, чтобы писать на нём ООПшную программу (где реальное ООП, а не просто синтаксис, похожий на ООП).
Нравится изображать, что у тебя хорошая программа и что она легко читается и что вложения внутренних циклов уезжают за край экрана из-за обязательных табуляций шириной в 8 пробелов каждая и это просто циклы такие плохие - слишком высокое цикломатическое число у них? Это обман самого себя. Я же в C просто перехожу с классических четырёх пробелов на два пробела и у меня код с любой вложенностью читаем, кто бы там его ни написал (в плане цикломатического числа).