Badoo corporate blog
High performance
Programming
Go
Comments 16
+5
foo@kopoba~/go/src/github.com/fattyproject$ go build; ls -la fattyproject 
-rwxrwxr-x 1 foo foo 13409025 Feb 28 17:18 fattyproject


foo@kopoba~/go/src/github.com/fattyproject$ go build -ldflags "-s -w"; ls -la fattyproject 
-rwxrwxr-x 1 foo foo 8939968 Feb 28 17:18 fattyproject
+3
Спасибо за дополнение. Жалко только вы не откомментировали его никак.

$ go tool link -h 2>&1 | egrep "(-w|-s)"
-s disable symbol table
-w disable DWARF generation

Эти два флага просят линкер не включать debug информацию в бинарник.
+8
Честно говоря дар речи обронил.
Это как скомпайлить С++ с бустом, ужаснутся Х*10Мб бинарю, и вместо ```strip``` начать выпиливать буст.
Хотя если принять во внимание что наверное половина девов с рельсов на голанг ушла (гдето видал такие оценки), то оно более понятно.

Да и флаги эти гуляют то там то сям в топиках про релиз.
+3
Автор, как мне кажется, делает упор не на то, чтобы рассказать как уменьшить размер бинаря, а на то, чтобы показать как можно увидеть сколько зависимости прибавляют. Дать людям инструмент решить самим хотят ли они эту зависимость или нет.
+4
За автора додумывать не стоит, но поскольку оговорок нету, то скорее всего и мыслей нету.
А тем временем,.а файлы это полные сорцы модулей со всемы символами — а сколько реально места после линковки они займут, зависит от того, что из них используется.
Тоесть это вообще сильно бесполезный инструмент, если не контрпродуктивный.
UFO landed and left these words here
-9
гугл, вероятно, забашлял блогеру из Badoo за рекламу Go, а вам не нравится)

Это странный код, как будто для обладателей гуманитарного склада ума, куча пробелов и минимум слов, где две строки превращаются в монстра:

import(
    :
    "github.com/robertkrimen/otto"
    :

for {
    :

    vm.Run(`
        abc = 2 + 2;
        console.log("\nThe value of abc is " + abc); // 4
    `)

    :
}


И статья — одна вода непонятная. Сделали стрёмный язык, а теперь одни костыли подпирают другими. Если на выходе получается толстое go-уно, то просто никто не будет на нем писать. Естественный отбор.
UFO landed and left these words here
+2
Бессмысленно мериться «у кого программа меньше» без сравнения стоимости разработки и поддержки. Быструю и медленную программу можно написать на чистом асме. Ну и что, много вы видели разработок на нем? Даже для МК их мало, просто потому что проще заплатить памятью/скоростью за удобство разработки и возможность что-то поменять в этом коде через пять лет другим разработчиком.
GO — следующий шаг. Еще удобнее, еще больше накладных расходов. Ну и что? Если есть ресурсы, почему бы и нет.

Мне казалось, это настолько простая вещь, что можно принимать такой подход, можно не принимать и писать на асме дальше, но понимать-то должны все.
UFO landed and left these words here
UFO landed and left these words here
+3
Сказать нечего, потому что вы аргументы уже сказанные не воспринимаете, говорить смысла мало.
UFO landed and left these words here
0
Подскажите, что из той адовой простыни, что вы мне написали, можно считать ответом «за стоимость разработки»?
0
Я бы хотел узнать больше про этого IoT агента на Go.

На Гихабе, код — пустышка, увы!
Only those users with full accounts are able to leave comments. , please.