
Denys
22.09.2018
08:21:16
https://hackernoon.com/golang-clean-archithecture-efd6d7c43047

Daniel
22.09.2018
08:22:20

/dev/null
22.09.2018
08:22:37

Denys
22.09.2018
08:22:40
таки, шо я не так сказал?

Google

Daniel
22.09.2018
08:22:44
в чатике банят за пупое упорство, переходящее в личный конфликт

Denys
22.09.2018
08:23:40
:D
так и помер дед максим

Maksim
22.09.2018
08:24:10
и посты с обсуждением подтирать, да)
лучше пообсуждаем как из файликов sql читать :)

Daniel
22.09.2018
08:25:23
коллега, сутки RO. вам явно хочется конфликта, а у меня есть дела поважнее

Yo
22.09.2018
08:49:36
Я ничего не понял, прости :)
Я конечно в легком ээээ недоумении. Не знать основы ООП, типа полиморфизма... и писать Go ? ну так себе...
Думаю, вам стоит про эту тему почитать специально. Про то, что Interface содержит только описание методов (контакт, как сказали), а реализаций (реальных классов) этого контракта может быть много. Тогда ..... ну а дальше в теории все описано, что может происходить потом... предлагаю ознакомится самостоятельно, чтобы не засорять чат.

Alexander
22.09.2018
08:52:14
Как можно понять, не только я не все понял :) Ну, и ладно. Просто надо больше читать по-английски.

Vasiliy
22.09.2018
08:57:21
Всем привет, существует ли способ по содержанию []byte понять что там внутри лежит, UTF-8 текст или что-то иное?
Я получаю инпут от пользователя в виде base64, декодирую его и мне нужно точно знать, что там именно текст, если что-то иное (бинарный файл, картинка итд) то абортнуть, ну а если текст то сложить в бд

Yo
22.09.2018
09:01:39

Vasiliy
22.09.2018
09:03:52

Yo
22.09.2018
09:05:50

Google

Daniel
22.09.2018
09:06:04
не обязательно

Sergey
22.09.2018
09:06:18
https://golang.org/pkg/unicode/utf8/#Valid

Daniel
22.09.2018
09:06:43
опередил :)

Sergey
22.09.2018
09:07:00
Упс. )

Vasiliy
22.09.2018
09:07:36

Yo
22.09.2018
09:09:48
https://golang.org/pkg/unicode/utf8/#Valid
ну вот теперь он не узнает, что UTF-8 - стандарт кодирования текста, позволяющий более компактно хранить и передавать символы Юникода, используя переменное количество октетов (байтов) (от 1 до 4), и обеспечивающий полную обратную совместимость с 7-битной кодировкой ASCII.

Alexander
22.09.2018
09:09:56

Sergey
22.09.2018
09:10:37

Yo
22.09.2018
09:11:25

Daniel
22.09.2018
09:11:57
модерировать это все тоже удовольсвия мало

Alexander
22.09.2018
09:14:00
Удачи тебе, в общем :)

Sergey
22.09.2018
09:15:38
https://golang.org/pkg/net/http/?#DetectContentType можно ещё такое приладить.

Vasiliy
22.09.2018
09:19:14

Alexander
22.09.2018
09:21:42
А как дела с пропозалом про const и все такое?

Daniel
22.09.2018
09:21:59
ну - роман подготовил свою версию
а я заболел, и ничего не подготовил
и теперь еще несколько недель не подготовлю - надо на работе наверстать слегка

Alexander
22.09.2018
09:23:09
Может, я бы мог помочь, но я тупой, полиморфизма не понимаю, и даже не вижу в чем нужна помощь :(

Daniel
22.09.2018
09:23:39
помощь на самом деле нужна в понимании потребности

Google

Daniel
22.09.2018
09:23:50
Роман вон зашел со стороны полного покрытия
в результате некоторые конструкции выглядят в его пропозале переусложненными

Alexander
22.09.2018
09:24:19
А! Ну, со своей стороны, я это уже высказал. Мне хочется const, как в ++

Daniel
22.09.2018
09:24:53
если бы точно знать, что именно должно быть возможно обозначить иммутабельным, а что и пофиг - было бы сильно легче

Alexander
22.09.2018
09:26:35
А это, в принципе, можно знать? Вероятно. нет. Надо просто, чтобы была удобная фича, а уж как ее юзать - будет зависить от стиля пограммиста или его потребностей. Половину фич ведь часто и не используют, по сути

Daniel
22.09.2018
09:26:58
ну вот go way - другой
тут скорее будут зажимать лишнюю фичу, если непонятно, как и для чего будут ее использовать
и то есть проколы

Alexander
22.09.2018
09:28:04
Ну const-то понятно ведь для чего

Daniel
22.09.2018
09:28:17
и тем не менее

Artem
22.09.2018
09:29:49
понятно то понятно, но тот факт, что при передачу в функцию происходит копирование, уже покрывает некую часть кейсов иммутабельности без её введения как таковой

Alexander
22.09.2018
09:30:58
ага, только надо всегда держать в голове, что именно копируется, и что иммутабельно в итоге... это не всегда очевидно, на самом деле
а компилятор - умный бухгалтер, у него там все учтено. Так что было бы неплохо просто на него это повесить, чтобы он ругался, если что

Yo
22.09.2018
09:40:48

Alexander
22.09.2018
09:41:24

Yo
22.09.2018
09:41:48
а я про решение, которое сделано, а значит возможно

Daniel
22.09.2018
09:46:09
в расте этот вопрос решен, и решен очень интересно, но я не уверен, что этот опыт применим в go
мне лично что нужно от иммутабельности
я хочу, чтобы компилятор сообщал мне, когда я пытаюсь изменить то, что изменять не следует

Google

Daniel
22.09.2018
09:47:05
все остальное для меня лично - шелуха

Alexander
22.09.2018
09:47:54
да! И чтобы код код, который я использую - тоже мог сказать четко, что - это не следует делать

Yo
22.09.2018
09:52:50


Alexander
22.09.2018
09:53:33
только это комната не про Rust, при всем уважении
Всем привет! Приглашаю на митап.
23 сентября, в воскресенье, в московском офисе Mail.Ru Group состоится тематический митап – Go в продакшене. Цель встречи – рассказать и показать на примерах разных компаний, как мигрировать на Go с других языков, почему проекты и компании выбирают Go, какие решают задачи, с чем сталкиваются при переходе, какие получают результаты и т.д. Митап ориентирован на людей, которые не имеют опыта в Go, но очень хотят попробовать и нуждаются во вдохновляющих примерах. Хардкорных кишков го не будет.
Программа:
— «Миллиард пушей на Go», Дмитрий Швеенков, Mail.Ru Group
— «Медиасервер трансляций на GoLang», Михаил Радченко, ВКонтакте
— «Два очень разных опыта миграции на Golang. На примере компаний Lazada и Ozon.travel», Юрий Васияров, Ozon.travel
— «Переход web-api Почты@Mail.Ru на Go», Василий Романов, Mail.Ru Group
— «Pipeline поиска по Почте@Mail.Ru на Go», Виктор Стародуб, Mail.Ru Group
— «Опыт перехода Авито.Доставки с Java на Go», Илья Лапин, Avito
— «Как мы начали использовать Go в Ответах@mail.ru», Марк Белоцкий, Mail.Ru Group
— список пополняется
Мероприятие бесплатное, но требуется регистрация
https://corp.mail.ru/ru/press/events/510/
Трансляция будет, видео будет.
Если вы хотите поделиться своим кейсом, который подходит под тему митапа - на странице регистрации есть ссылка.
Запись в интернете будет, хотелось бы знать? Пойти - не пойду, я не в Москве.


Vasily Romanov
22.09.2018
10:12:01

Alexander
22.09.2018
10:12:09
Суперски!

Vasily Romanov
22.09.2018
10:12:23
На трансляцию с разбивкой по впемени завтра утром кину ссылку сюда

Admin
ERROR: S client not available

Alexander
22.09.2018
10:12:43
10x!

Vasily Romanov
22.09.2018
10:12:58
Видео без нарезки должно быть сразу, с нарезкой через месяц

Artem
22.09.2018
10:33:53

Vasily Romanov
22.09.2018
10:34:11

Artem
22.09.2018
10:35:17
Ютуб
https://www.youtube.com/user/TPMGTU ??

Vasily Romanov
22.09.2018
10:36:19
Наверное да

Alexander
22.09.2018
10:50:26
кстати, если кто не в курсе, для go dep запилили отдельный сайтик с докой https://golang.github.io/dep/
вроде как ещё недавно не было

Alexander
22.09.2018
10:55:31
а, вроде, теперь ведь модули надо как-то юзать?

Alexander
22.09.2018
10:55:51
модули ещё эксперементальные

Alexander
22.09.2018
10:56:03
dep - тоже :)

Google

Alexander
22.09.2018
10:56:03
я бы не стал рваться их сейчас использовать
dep уже давно пишется и довольно стабилен и удобен
я все свои гошные проекты с ним пилю
хотя их и можно сосчитать по пальцам одной руки)

Alexander
22.09.2018
10:57:00
а мне иногда неудобно, что код должен быть в $GOPATH :(

Alexander
22.09.2018
10:58:00
создавай локальный GOPATH

Alexander
22.09.2018
10:58:01
когда сам себе что-то пишешь на своей машинке - OK! но иногда хочется что-то собрать не на своей и не хочется никаой GOPATH

Alexander
22.09.2018
10:58:04
и пили проект в нём
ну можно ещё поюзать плагины, но это на мой взгляд, уже оверхед

Alexander
22.09.2018
10:59:20
нет, плагины - это вобще не про это. Плагины про то, как, скажем, в Spamassassin можно подключать и отключать что надо и не надо :) Или можно писать свои плагины, например, должным образом определившись с интерфейсом между плагином и приложением.

Aleksandr
22.09.2018
11:20:04
https://golang.github.io/dep/
не видел раньше - у dep сайт появился

Alexander
22.09.2018
11:20:44
?
я недавно в гошку вернулся)

Vadim
22.09.2018
11:22:24

Alexander
22.09.2018
11:25:18
У меня, к сожалению, было, когда надо собирать приложение на той машине, на которой оно работает. Статические библиотеки в бинарнике - это, конечно хорошо, по своему, но иногда статические все собрать не получается. Или просто могут быть некие несовеместимости между ядрами или libc, и все что прекрасно работало под тестами на одной машине просто падает в корку на другой :( Иногда надо приложение собирать там, где оно будет работать.
Я одну хрень уже довольно давно делал в Ubuntu 14.04, а работать запускал - на CentOS6.И оно под нагрузкой совершенно в неожиденное время просто умирало. Пересобрал в той среде, где работа была - и все! Перестало умирать. В чем была проблема именно, я, если честно, не понял
было это на Go 1.4. Может, сеейчас все как-то изменилось к лучшему, но я бы не рисковал.

Daniel
22.09.2018
11:34:29
коллега, это все очень странно