
Aleksandr
14.07.2017
16:28:11
нужны подробности )
is_exists = true - присваивает ранее объявленной переменной
is_exists := true - инициализирует новую. итого первая не используется

Dmitry
14.07.2017
16:28:29

Aleksandr
14.07.2017
16:28:30
но var is_exists = true - тоже создает новую

Mikhail
14.07.2017
17:20:42
"К примеру, недавно я изучал проблему дженериков (generics), и пока что я не вижу в голове чёткой картины подробного и детального примера проблемы, для решения которой пользователям Go нужны дженерики. Как результат, я не могу чётко ответить на вопрос о возможном дизайне дженериков"
Всё очень плохо, в общем

Google

Daniel
14.07.2017
17:21:23
как посмотреть

Mikhail
14.07.2017
17:25:16
как посмотреть
Я просто серьёзно не понимаю, что мешает им сделать дженерики так же, как это реализовано в C? Я не очень глубоко копал этот язык, конечно, но там всё достаточно стройно и понятно реализовано. Разве нет?

Daniel
14.07.2017
17:25:37
в каком С реализованы генерики?

Mikhail
14.07.2017
17:27:02

Daniel
14.07.2017
17:27:26
в C# есть, и весь современный C++ на темплейтах
а в C - нет
ну и в Java современной тоже есть
и как раз java опыт мой не очень хорош. писать довольно удобно, читать - нет

Mikhail
14.07.2017
17:29:06

Daniel
14.07.2017
17:29:27
ну - это близкие, хоть и не тождественные понятия
так вот
про C# не знаю - я с ним дела не имел
С++ - это дно дна, возможности, глядя на чужой код, понять, что он делает нет никакой

Google

Alexey
14.07.2017
17:31:48

Daniel
14.07.2017
17:32:16
в яве мне лично генерики так ни разу и не понадобились. но коллекции перестали фозвращать Object, и начали возвращать конкретный тип, что есть гуд. но больше я с ними и не сталкивался.
это ты зря так
последний мой подход к С++ связан с rtbkit. это настоящий С++ и насоящее дно дна

Alexey
14.07.2017
17:33:55
Не работал с этим(
Я сейчас в kde пишу кое-какие штуки на плюсах, вполне всё нормально.

Daniel
14.07.2017
17:34:02
а
не, в гуях царство c++ до сих пор, где не царство ObjC
и куда JS не добрался
но бизнес-логика на крестах - это дно дна, точно говорю

Sergey
14.07.2017
17:37:35

Daniel
14.07.2017
17:38:35
на любой вопрос есть разные точки зрения. но моя - такая

Sergey
14.07.2017
17:39:36
меня просто "точно говорю" покоробило.

Daniel
14.07.2017
17:39:50
почему?
мы много знаем продуктов с бизнес-логикой на плюсах?
(впрочем - нескоько знаем, да)

Sergey
14.07.2017
17:41:28
внезапно да. но щас спустимся к тому, что такое бизнес-логика. если я пишу движок бд, то его бизнес-логика на плюсах - это ок. фронтенд на плюсах - не ок.

Daniel
14.07.2017
17:41:57
чет баз на c++ я не припомню

Max
14.07.2017
17:43:53
Монга, rethink, leveldb на вскидку

Vladimir
14.07.2017
17:44:14
Rocksdb
Соответственно и myrocks

Google

Daniel
14.07.2017
17:45:17
leveldb на самом деле

Vladimir
14.07.2017
17:45:52
На самом деле много в каких конторах есть много бизнеслогики на плюсах
Яндекс, гугл, фб где точно много
Дропбокс туда же

Daniel
14.07.2017
17:49:15
сунулся в код leveldb. там с++, но без темплейтов
каменный век :)

Max
14.07.2017
17:51:42
По-твоему любой плюсовый код должен состоять из ребусов в виде рекурсивных вариадик шаблонов распаковывающихся через перегрузку? Особенно это самая бизнес-логика?

Sergey
14.07.2017
17:51:52
там где я видел C++ в активной разработке, всегда были жесткие гайдлайны, которые фактически заставляли людей пользоваться определенным подмножеством CPP.
и какой-нибудь местный патриарх сильно пушил остальных разработчиков следовать гайдлайну.

Daniel
14.07.2017
17:52:52
но читабельно оно все одно не было

Sergey
14.07.2017
17:53:22
иначе оно превращается в неподдерживаемый код

Vladimir
14.07.2017
17:53:47

Max
14.07.2017
17:54:19

Sergey
14.07.2017
17:54:27
да лааадно.
я в жизни не писал на CPP, но не единожды вкапывался в код проекта чтобы понять как точно функционирует что-нибудь.
написать нечитаемый код на любом языке можно. на C++ несомненно легко.

Vladimir
14.07.2017
17:54:57

Daniel
14.07.2017
17:54:58

Sergey
14.07.2017
17:55:22

Google

Daniel
14.07.2017
17:55:56
не, гешталь я закрыл еще тогда, спилив его с проекта, и заменив на гошную часть
но омерзение до сих пор со мной

Vladimir
14.07.2017
17:56:27
Специалисту

Vladimir
14.07.2017
17:56:37
тоже не считаю С++ чем то зубодробильным , по моему множественные связи рутин между собою (НАПИСАННЫЕ НЕ ТОБОЙ) гораздо труднее понять, чем C++ код ..... даже если использую thread , вызов будет сопровожден длинными подготовительными мероприятиями

Vladimir
14.07.2017
17:57:06

Daniel
14.07.2017
17:57:07
а что за множественные связи рутин?

Vladimir
14.07.2017
17:57:56
У меня тут есть один проект на сях, который легаси и сложно поддерживать, потому что черт ногу сломит

Max
14.07.2017
17:59:50

Vladimir
14.07.2017
18:00:21

Daniel
14.07.2017
18:00:23
а ни у кого больше просто нет такого развитого наследования.

Vladimir
14.07.2017
18:00:23

Vladimir
14.07.2017
18:02:06

Daniel
14.07.2017
18:02:24
а?!
википедия пишет, чт еще множественное наследование есть в питоне. я-то питона не знаю

Kirill
14.07.2017
18:03:58
Ребят, хочу задать глупый вопрос.
А как в микросервисной архитектуре гарантируется, что при изменении сервиса А не поломается взаимодействие с сервисом Б?

Daniel
14.07.2017
18:04:13
тестированием
автоматическим, в смысле

Google

Kirill
14.07.2017
18:04:52
А на уровне языка как-то проверяют?
Типа завести внешний пакет с интерфейсами например
Или прям вот только автотесты?

Daniel
14.07.2017
18:06:32
я завожу внешний по отношению к обоим сервисам пакет
я код этот я генерю из swagger.yml
но это ничего не гарантирует - измениться может не интерфейс, а поведение

Vladimir
14.07.2017
18:09:41
тестирование внутреннее ,может делаться средствами самого микросервиса, внешний контроль как уже описали выше
насколько я знаю когда сервисов много пишут монитор который занимается контролем WhoIShere только на предмет что сервис не упал "наглухо" каждый наделяет его своим "содержанием и умениями"
другое дело если разработчик сервисов не один человек.... и даже не одна комманда, тогда только СЕТЕВОЙ снифинг (но это чисто только мое мнение, может у кого то и есть решения по мониторингу сервисов без внедрения в код)

Daniel
14.07.2017
18:17:50
а почему без внедрения-то?
логи пишем, метрики собираем

Vladimir
14.07.2017
18:18:32
только исполнимый файл
и сказали " не дай бог упадет наш микросервис"

Daniel
14.07.2017
18:20:46
человек должен ответить "спасибо, досвиданья"

Vladimir
14.07.2017
18:21:15
вообще конечно интереесно когда разработка большого продукта ведется несколькими командами особенно 1 микросервис и переход на 2 микросервиса

Daniel
14.07.2017
18:24:09
ну - регламенты, кодревью, автотесты и wtf-wtf-wtf

Vladimir
14.07.2017
18:25:05
когда это 3-й микросервис .... то уже все регламенты разработаны
у меня мало опыта коллективной разработки ... поэтому мне это интересно ?
а других наверно "задолбало"