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-й микросервис .... то уже все регламенты разработаны
у меня мало опыта коллективной разработки ... поэтому мне это интересно ?
а других наверно "задолбало"