@gogolang

Страница 1487 из 1630
Marperia
01.10.2018
13:15:35
Denys
01.10.2018
13:15:37
надо стартапы пилить свои

но мне лень

Alexander
01.10.2018
13:15:57
если лень, значит - не надо

Google
Marperia
01.10.2018
13:16:19
надо стартапы пилить свои
Пили мои, уж я-то желание создавать умею.

David
01.10.2018
13:17:12
Братья гоферы, хороша ли официальная документация? И если нет - что лучше прочитать? Увидел это ”reply.([]byte)” и понял, что нужно почитать доку...

Daniel
01.10.2018
13:17:36
Хороша

Alexander
01.10.2018
13:17:43
Официальная документация - суперская!

Denys
01.10.2018
13:18:20
слышь ты, ты че гонишь на нашу оф документацию

David
01.10.2018
13:18:21
Спасибо!

Denys
01.10.2018
13:18:28
да я тебя

David
01.10.2018
13:18:55
Это просто приведение типов, если что
Но я так понимаю это приводит к byte array’у?

Tigran
01.10.2018
13:19:04
Marperia
01.10.2018
13:19:17
Возвращает ошибку и что-то ещё, на случай невозможности приведения.

Google
David
01.10.2018
13:19:24
Ну да, к слайсу байтов
Но тогда что храниться в редисе?

Daniel
01.10.2018
13:19:33
Обычное приведение типов же.
Учитывая, что у нас два приведения типов - доку почитать не вредно

Alexander
01.10.2018
13:19:44
а вы говорите, параметрический полиморфизм в Go надо. Чтобы еще все усложнить, когда народ и так-то уже не все понимает...

Tigran
01.10.2018
13:20:28
Подозреваю, что c.Do() возвращает тебе interface{}

David
01.10.2018
13:20:32
Почему не просто как в плюсах, а через точку?

Daniel
01.10.2018
13:20:37
Но тогда что храниться в редисе?
Ворос не в том, что там хранится, а в том, что либа отдала. А отдала она interface{}

Tigran
01.10.2018
13:20:40
и ты предполагаешь, что положил туда []byte, и конвертируешь в []byte

Alexander
01.10.2018
13:20:59
в общем, похоже, что если выйдет Go 2, то его уже так не осилишь за пару дней с нуля... :(

Tigran
01.10.2018
13:21:10
в плюсах неудобный префиксный оператор

Daniel
01.10.2018
13:21:56
У нас, повторю, есть и как в плюсах тоже

David
01.10.2018
13:21:56
и ты предполагаешь, что положил туда []byte, и конвертируешь в []byte
Что же не буду вас всех отвлекать, пойду почитаю доку. Чувствую, что не понимаю простой базы

Tigran
01.10.2018
13:22:21
У нас, повторю, есть и как в плюсах тоже
Кажется, имелась в виду форма (Type)value, такой вроде нет

Daniel
01.10.2018
13:22:37
Такой - нет

Andrei
01.10.2018
13:38:41
а вы говорите, параметрический полиморфизм в Go надо. Чтобы еще все усложнить, когда народ и так-то уже не все понимает...
такого вопроса просто бы не возникло, если бы в го был параметрическим полиморфизм из коробки, т.к. это приведение в 99% случаев появляется после использования пустых интерфейсов выше по коду

Александр
01.10.2018
14:08:20
а кто-то еще оборачивал в респонз вызовы в хендлерах?

в отдельную структуру

Alexander
01.10.2018
14:10:31
(для тех, кто не понял, превожу вопрос гна нормальный язык: кто-то еще врапил респонс-колы в хендлерах?)

Александр
01.10.2018
14:11:30
*оборачивал в структуры, вызовы респонз в хендлерах ?

в тестах просто странно смотриться

Google
Александр
01.10.2018
14:12:58
у меня была безумная идея, в тестах вместо респонза специальную мок реализацию подсунуть

и там уже вызывать ошибки теста

но это "не прозрачно"

наверно придется тестировать уже "результат хендлера" в виде json

Roman
01.10.2018
14:18:09
Корригирую документ, описываю implicit casting и возникает вопрос, а нужен ли в таком случае вообще explicit casting?! func ReturnConst() const []int { return []int {1, 2, 3} // Implicit cast } var variable const []int = []int {1, 2, 3} // Implicit cast func TakeConst(v const []int) { /*…*/ } TakeConst([]int {1, 2, 3}) // Implicit cast единственная ситуация где explicit cast может пригодиться это short variable declaration: immutVec := const([]int {1, 2, 3}) // Or: immutVec2 := const * const T (&T{}) но стоит ли это учитывать?

Alexander
01.10.2018
14:19:20
бНОПНЯ апперед :)

Roman
01.10.2018
14:19:33
или проще сказать: „хочешь иммутабелый? используй var declaration syntax“

Alexander
01.10.2018
14:20:16
Изначально ведь авторы ориентировались на простую русскую девушку-первокурсницу с экономики, которой с какого-то перепуга вместо Pascal принялись преподавать Go. И у ей зачеты по нему еще не сдаты... Надо чтобы все было проще, иначе девушка просто не осилит и вылетит с института

:)

Roman
01.10.2018
14:27:48
У меня уже давно какае-то чувство, что ты хочешь все усложнить... Это же все потом будет понять и забить в мозг так же сложно, как и плюсы... Не?
нет, и я уже сотню раз наверное объяснил почему это не так ? например, C как язык ещё проще чем Go, от этого на нём становится легче писать? Нет, потому-что он предоставляет разработчику или команде возможность очень легко выстрелить себе в ногу. Immutable types это инструмент защиты от случайных выстрелов в ногу, которые даже сложно заметить, поскольку такие выстрели в основном проходят бесболезнено, пока не заметишь что нога вся в крови… Mutable shared state is the root of all evil, especially in concurrent environments!

Alexander
01.10.2018
14:28:10
НЕ становится!

Alexander
01.10.2018
14:28:59
Я не против декларирования иммутабельности! Я просто за девушек будущего переживаю!

Alexander
01.10.2018
14:30:05
первокурсница все сможет! :)

Илья
01.10.2018
14:32:44
насколько я знаю Go, везде, кроме работы с безтиповым констами, все касты explicit

Alexander
01.10.2018
14:32:53
Хотя, наверное, любой искусственный язык по ходу его использования и изменения только усложняется... Ничего не поделаешь,...

Mykyta
01.10.2018
14:33:41
меня больше интересует мнение группы по этому вопросу, если такое мнение имеется
Скоро это будет второе слово, которое нельзя будет называть. Оба то, чего нельзя называть - нужно, но в го их не будет

Google
Aleksandr
01.10.2018
14:35:38
Скоро это будет второе слово, которое нельзя будет называть. Оба то, чего нельзя называть - нужно, но в го их не будет
в этом чате нет слов, которые нельзя называть. За шутки на эту тему очень сильно хочу банить.

Alexander
01.10.2018
14:35:41
ну, вроде, одно из того, что нельзя наывать, уже, кажется, будет :)

Roman
01.10.2018
14:35:46
Скоро это будет второе слово, которое нельзя будет называть. Оба то, чего нельзя называть - нужно, но в го их не будет
генерики вносят в язык значительные изменения дизайна языка, библиотек и компилятора. Изменения которые требуют иммут типы просто смешны по сравнению с генериками, по спецификации, по обратной совместимости, и по компилятору.

Alexander
01.10.2018
14:36:21
в этом чате нет слов, которые нельзя называть. За шутки на эту тему очень сильно хочу банить.
ты вобще очень сильно хочешь банить. Легче надо читать, с юмором! :)

Aleksandr
01.10.2018
14:37:51
я очень легко читаю, с юмором. Но тебе бы советовал в юмором завязать - он у тебя достаточно специфический и в массе своей несмешной

Admin
ERROR: S client not available

Roman
01.10.2018
14:37:56
я вроде в FAQ описал что иммут это одна из тех фич которые безболезненно реализовать в Go 1.x - реально, относительно других затей типа error handling и generics

Artem
01.10.2018
14:39:33
Илья
01.10.2018
14:40:16
а линтерам ж тоже мигрировать придется? они или падать будут или пропускать, если встретят const
линтеры работают с выхлопом ast, если как-то это завезут, линтерам пофиг

Roman
01.10.2018
14:40:46
а линтерам ж тоже мигрировать придется? они или падать будут или пропускать, если встретят const
хорошее замечание. С линтерами всё зависит от того как они парсят Go код, если они парсят его через AST тогда всё будет в порядке и продолжит работать безменений.

Artem
01.10.2018
14:41:44
линтеры работают с выхлопом ast, если как-то это завезут, линтерам пофиг
ну выхлопом то да, но там то типы есть конкретные в go/ast в которых придется включить эту иммутабельность

Roman
01.10.2018
14:42:01
Трудно себе представить, как можно реализовать линтер без аст, на регекспах, что ли?
да как угодно ? но толковый линтер, однако, конечно будет использовать AST

Artem
01.10.2018
14:42:19
и какие-нибудь линтеры могут просто не ожидать, что там придет что-то кроме ast.Ident

Илья
01.10.2018
14:43:46
я плохо представляю, как именно это будет завезено (и может ли в принципе) скорее всего, флаг в type, для линтеров без явной поддержки вообще ничего не должно меняться

Artem
01.10.2018
14:44:53
эт ты к чему?

Google
Илья
01.10.2018
14:44:58
так const декларации уже завезли, просто +1 кейс

Artem
01.10.2018
14:45:18
ну вот именно что +1

а линтеры то много лет назад написаны

Илья
01.10.2018
14:48:31
я не думаю, что линтеры будут падать, но фолс реакции на const, конечно, будут

Artem
01.10.2018
15:02:14
В рамках противодействия свободному времени и желанию улучшить материал, дайте критику по https://habr.com/post/425025/ , заранее спасибо

Alexandr
01.10.2018
15:09:32
Добрый день, подскажите пожалуйста. Изучаю beego и возник вопрос, можно ли его использовать без использования orm, а писать чистый sql ?

Aleksandr
01.10.2018
15:10:47
можно

Alexander
01.10.2018
15:24:12
и нужно! ORM, обычно - это зло и просто какая-то подпорка для инвалидов, которым нужна база данных, но они не хотят знать, как ей пользоваться.

Alexandr
01.10.2018
15:25:44
Ок спасибо

А использование всяких фреймворков в go это не «подпорка»?

Aleksandr
01.10.2018
15:27:46
подпорка

Alexander
01.10.2018
15:28:51
Нет. Но что касается DB - ты просто в итоге напишешь свою ORM, которая отвечает твоим задачам. А может быть, просто SQL будешь аккуратно писать, может быть, не всегда руками... Просто надо понимать, что любое обобщение в этом деле - это всегда небесплатно

Ок спасибо
Тут Алексей Палащенко бывает, у него есть ORM общего пользования. Поговори с ним, кстати

Alexander
01.10.2018
15:45:58
мне автоматические миграции пока не интересны. Я руками все могу сделать, как и большинство пользователей, которые любят базы данных

Daniel
01.10.2018
15:48:05
атоматические миграции - это такое добро, что никакого зла не надо

Страница 1487 из 1630