Ну я бы не сказал что использование net/http и encoding/json это "с нуля"
Если не слишком заморочено, лучше стартер какой-нить юзать. https://github.com/qiangxue/go-rest-api например такой.
Пишете swagger/openapi спеку, по ней генерируете стабы, дальше дописываете логику
Прикольный стартер. Жаль только без cobra+viper
https://github.com/jaegertracing/jaeger/blob/master/cmd/all-in-one/main.go#L75 Там удобно можно сделать сложные абстракции по конфигурированию. На лету подхватывать переменные окружения, флаги или конфиг. Очень удобно. ИМХО
Ну, я думаю, этот проще будет для новичков, а присобачить что-то еще, всегда можно.
Плохо, конечно, что нет какого-то best practice по созданию веб сервиса. Немного кривоватый стартер. Но все же лучше, чем gorsk. Там вообще некоторые вещи ужасно выглядят.
Ну, все же предполагается, что гоферы, более-менее адекватные и самостоятельные люди все, Go - же это системный язык аля C, C++. Потому. Достаточно общих правил, а они сами все напишут. Это там, где есть фреймворки типа PHP, нужно все регламентировать.
Go - системный язык?
Ну, go проекты тоже бывают большими. И лучше все систематизировать на старте. Иначе, потом будет очень сложно поддерживать.
Адекватность с языками никак не коррелирует
немножко корреляция есть))0)
Ага, на уровне погрешности)
объективно на этот вопрос не ответить
Вот именно, как и про зависимость
Ну хз, наблюдения показывают что религиозных фанатиков среди Гоферов чуть ли не больше всех
Нет, Go - это язык прикладной. Увы и ах.
Значит много неадекватов 😏
Но он по сути пришел на смену C.
Ну, его именно как замену С создавали изначально.
Нет, его не создавали как замену, тем более си Язык делали под собственные нужды
Сейчас уже не найду пруф, но это обсуждалось давным давно.
Т.е. в гугле теперь не пишут на C, раз есть Go, да?😂
Раньше бы много что писали на С, а теперь только очень системные вещи.
Наличие GC уже делает Go неприменимым в некоторых сферах, в которых применим C
Да ещё куча софта пишется, не только системного. Дедушка си нас всех переживет
Мы не говорим о том, что он прям именно как замена-замена С создавался, а для того, что бы С не использовать там, где хочется писать на С, но муторно...
Вы хоть поняли о чем я?
Раньше всё делали палкой Теперь есть множество инструментов Это значит, что они все создавались как замена палки?
Все, проехали. Думайте что хотите про палки.
Нет по вполне очевидным причинам.
https://play.golang.org/p/08T4rIiYz7T На плейграунде оно работает из-за того что там выключены syscall, но локально будет паника
и под виндами не будет работать
это вообще малораспространённая ос )
Deprecated: this package is locked down Callers should use the corresponding package in the golang.org/x/sys repository instead. That is also where updates required by new systems or versions should be applied. See https://golang.org/s/go1.4-syscall for more information.
Да можно было через ulimit -d выставить размер сегмента данных и тоже была бы паника.
Почему паника будет?
Память не выделить из-за лимитов
а так https://golang.org/src/syscall/zsyscall_linux_amd64.go?s=30730:30784#L1301 ?
https://paste.ubuntu.com/p/J4yTbqJV5j/
Обсуждают сегодня