|
Stream API
|
|||
---|---|---|---|
#18+
Ребят нужна ваща помощь. как мне кинуть исключение ,если в stream 1 элемент ,при этом я не могу использовать ни коллекцию ни if конструкция кода такова есть лист,фильтруем его и если количество элементов 1-кидаем исключение может можно и как то по другому у меня там вообще стояло так - filtr-findfirst()-orElseThrow но при таком раскладе кидает исключение если не найдет ни 1 элемента Код: java 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 14:06 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Опять теория? Фильтруем в пустоту? Обычно фильтруют в конечную переменную. Потом ее и проверяй. То есть добавь сюда код БЛ, а не пример из книги или снов. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 14:59 |
|
Stream API
|
|||
---|---|---|---|
#18+
можно иф добавить внутрь фильтра ))) и кинуть там эксепшн. правда вроде в жаве были какие то особенности на эту тему. в скале я б сделал матч кейс. что впрочем, та же хрень. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 15:00 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 Ребят нужна ваща помощь. как мне кинуть исключение ,если в stream 1 элемент ,при этом я не могу использовать ни коллекцию ни if конструкция кода такова есть лист,фильтруем его и если количество элементов 1-кидаем исключение может можно и как то по другому у меня там вообще стояло так - filtr-findfirst()-orElseThrow но при таком раскладе кидает исключение если не найдет ни 1 элемента Код: java 1. 2. 3. 4. 5.
Например так <:o) Код: java 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 15:10 |
|
Stream API
|
|||
---|---|---|---|
#18+
mad_nazgul, +1 В чем проблема у ТС я не увидел. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 16:43 |
|
Stream API
|
|||
---|---|---|---|
#18+
mad_nazgul Код: java 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 16:44 |
|
Stream API
|
|||
---|---|---|---|
#18+
mad_nazgul asv79 Ребят нужна ваща помощь. как мне кинуть исключение ,если в stream 1 элемент ,при этом я не могу использовать ни коллекцию ни if конструкция кода такова есть лист,фильтруем его и если количество элементов 1-кидаем исключение может можно и как то по другому у меня там вообще стояло так - filtr-findfirst()-orElseThrow но при таком раскладе кидает исключение если не найдет ни 1 элемента Код: java 1. 2. 3. 4. 5.
Например так <:o) Код: java 1. 2. 3. 4. 5. 6. 7.
и где тут экспешн кидается если стрим больше 1? и условие читай - лист всего 1 ,второй раз из стрима в лист нельзя и ифы нелья так то я бы сделал filtr-collect(Collections.Singltone).orElstThrow(()->retrun Exeption) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 16:47 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT можно иф добавить внутрь фильтра ))) и кинуть там эксепшн. правда вроде в жаве были какие то особенности на эту тему. в скале я б сделал матч кейс. что впрочем, та же хрень. иф нельзя я же написал,как будто я сам не знаю что ифом проверить и все кек) но вот нельзя ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 16:48 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 второй раз из стрима в лист нельзя Такого условия не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 16:58 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Ну и с точки зрения архитектуры, стрим это постоянно текущая река. Поэтому вопрос твой странный или из категории кунсткамера. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 17:06 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, Ну и с точки зрения архитектуры, стрим это постоянно текущая река. Поэтому вопрос твой странный или из категории кунсткамера. там все просто нас заставляют придерживаться общей стилистики кода например если в валидаторе нет ифов ,а все обренутов в опшиналы,значит надо делать так же проблема возникла в том что обычно тут проверка идет так лист-stream-filtr-findFirst-orElseThrow фильтруем лист по какому то условию и бац - два элемента у одного проходит условие у другого нет- я должен выдать исключение - но не могу,так как он метод найдет второй вариант - где услвия ок) сечешь теперь?)) в кейсе это идет проверка кода страны двух адресов заемщика - фактического и регистрации тоесть если какой то из этих кодов не 643 я должен записать в лог ошибку и кинуть эксепшн ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 17:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 там все просто нас заставляют придерживаться общей стилистики кода asv79 например если в валидаторе нет ифов ,а все обренутов в опшиналы,значит надо делать так же Напиши - "перед едой мыть руки". asv79 фильтруем лист по какому то условию и бац - два элемента у одного проходит условие у другого нет Ты выше сказал нечто странное. Пример mad_nazgul видем? Сделай такой же! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 17:27 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Зы. Я твой лично код давно не видел. В основном разговоры про чужой код. Ждем. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 17:28 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 там все просто нас заставляют придерживаться общей стилистики кода Код: java 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 17:33 |
|
Stream API
|
|||
---|---|---|---|
#18+
В операциях по стримам можно сохранить/передать состояние только через общую переменну, reduce или collect. Если надо сделать на стримах, то подходит вроде только collect. Сделать через него можно, но это то еще извращение. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 17:34 |
|
Stream API
|
|||
---|---|---|---|
#18+
в идее стримов такой случай тебе не нужен а если нужен ты чот не то делаешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 18:21 |
|
Stream API
|
|||
---|---|---|---|
#18+
Исключительно ради огромной любви к извращениям: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 18:24 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT в идее стримов такой случай тебе не нужен а если нужен ты чот не то делаешь. Поэтому и просил у него код. Он этого в жизни не делал)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 18:39 |
|
Stream API
|
|||
---|---|---|---|
#18+
Андрей Панфилов asv79 там все просто нас заставляют придерживаться общей стилистики кода Код: java 1. 2. 3. 4. 5. 6. 7.
не прокатит такое создается дополнительный объект ,-я таким же успехом я этот стрим засну обратно в лист и положу туда синглтон ,а так как у нас две позиции - то выбросится исключение тут идея в том чтобы не засорять память лишними объектами пс.а то что ты выше привел делает reduce(),но оно мне не подходит ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:12 |
|
Stream API
|
|||
---|---|---|---|
#18+
SpringMan Исключительно ради огромной любви к извращениям: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
ты создаешь новый объект - тем самым нарушая условия- то что ты выше написал делается в одну строчку collect(Collections.singletone) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:14 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp нет Ты выше сказал нечто странное. Пример mad_nazgul видем? Сделай такой же![/quot] мы в контуре работаем оттуда не работает копипаст,а руками набивать опухнешь) так что код ты не увидишь) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:15 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 тут идея в том чтобы не засорять память лишними объектами stream..... filter...... Каким образом без создания объекта будем использовать результат фильтра? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 набивать опухнешь) private List<Integer> list = Arrays.asList(0, 1, 2, 3, 4, 5); ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:17 |
|
Stream API
|
|||
---|---|---|---|
#18+
Стримы бывают ленивые. Например, по сети из Африки. Поэтому, пока не создашь объект = результат, не узнаешь count. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:20 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 так что код ты не увидишь) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 19:22 |
|
Stream API
|
|||
---|---|---|---|
#18+
SpringMan Исключительно ради огромной любви к извращениям: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
какой жиздец как же это ужасно выглядит. зы это я не к тебе это я к джаве. ужснах! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 22:41 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT SpringMan Исключительно ради огромной любви к извращениям: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
какой жиздец как же это ужасно выглядит. зы это я не к тебе это я к джаве. ужснах! так никто и не делает все это делается немного по другому Код: java 1. 2.
вот то же самое ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 23:03 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 так никто и не делает все это делается немного по другому Код: java 1. 2.
вот то же самое asv79 конструкция кода такова есть лист,фильтруем его и если количество элементов 1-кидаем исключение ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 23:14 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT какой жиздец как же это ужасно выглядит. "нельзя создать переменную в оперативке" приводит к таким ужасам. Суп из топора еще варят. Когда ничего нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 23:15 |
|
Stream API
|
|||
---|---|---|---|
#18+
еще докину в коллекцию извращений Код: java 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 23:19 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 Код: java 1. 2.
вот то же самое Это твоя попытка решить задачу? ))) Больше кода и меньше слов. Да прибудет с тобой сила. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 23:21 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 SpringMan Исключительно ради огромной любви к извращениям: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
ты создаешь новый объект - тем самым нарушая условия- то что ты выше написал делается в одну строчку collect(Collections.singletone) Остальное уже написали) Остался только один вопрос: что вообще такое collect(Collections.singletone)? - оно не скомпилируется даже ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 01:26 |
|
Stream API
|
|||
---|---|---|---|
#18+
SpringMan Исключительно ради огромной любви к извращениям: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9.
Круто! Прикол в том, что если заменить Код: java 1.
на Код: java 1.
Как рекомендует IDEA То работать не будет. Точнее исключение не будет только при нуле элементов. :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 06:37 |
|
Stream API
|
|||
---|---|---|---|
#18+
mad_nazgul Прикол в том... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 06:41 |
|
Stream API
|
|||
---|---|---|---|
#18+
Андрей Панфилов mad_nazgul Прикол в том... Точно. Прикольно. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 08:29 |
|
Stream API
|
|||
---|---|---|---|
#18+
И зачем вам нужен parallel? Где в топике хотя-бы 1 информационный повод к тому чтобы его вводить? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 14:48 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton И зачем вам нужен parallel? Где в топике хотя-бы 1 информационный повод к тому чтобы его вводить? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 14:53 |
|
Stream API
|
|||
---|---|---|---|
#18+
Вот мне нравится. Есть 100500 интересных проблем математики (дискретной математики) которые надо решать но программисты любят др0чить Streams. Вот хлебом их не корми - дай пописать безсмысленные конструкции. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 15:01 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton, Ну дак если ТС невменяемый. Кусок код наверно должен выглядеть так: Код: java 1. 2.
После этого можно решать, где проверить переменную колл на размер. Так? Стас же невменяемый молчит. Его проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 15:31 |
|
Stream API
|
|||
---|---|---|---|
#18+
Это даже не к ТС. Я просто смотрю с каким энтузиазмом вы схватились за онанизм под названием исключение внутри Stream и удивляюсь. А затопление острова океаном вам неинтересно? Эта же задача тоже имеет цифровое решение? Может быть reduce? Я-бы попробовал. Всяко лучше чем онанировать исключения. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 19:26 |
|
Stream API
|
|||
---|---|---|---|
#18+
не ну бросить кастомный эксепшен в стриме это в принципе адекватное желание. можно вполне без ифов писать (в явном виде) просто бросая где надо исключения и ловя их ) так же как например, без форов и форычей ) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2020, 19:42 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT, Думаю что исключения внутри стрима и внутри потока это Не адекватно. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 08:50 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp andreykaT, Думаю что исключения внутри стрима и внутри потока это Не адекватно. почему? вот у тебя банальная операция мапа - одного на другое и тут у тебя эксепшен случается. разве это нереальная ситуация? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 13:04 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT вот у тебя банальная операция мапа Такая? Код: java 1. 2.
Исключение ведь планируем мы. Не инопланетяне? andreykaT нереальная ситуация? Дак никто не приводит ситуацию когда исключение САМО возбудилось. Например, в потоках я стараюсь не использовать исключения. Не умеет комп с ними работать). Имхо ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 15:09 |
|
Stream API
|
|||
---|---|---|---|
#18+
andreykaT, Стрим это уже ближе к ФП/реактивному. Поэтому и подходы другие. В обычном программировании я исключения активно использую. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 15:15 |
|
Stream API
|
|||
---|---|---|---|
#18+
По сути если внутри map возникло unchecked - то самое умное что можно сделать - вернуть пустой опционал а следующий элемент конвейера уже должен сам решать что делать с пустышкой. Прерывать работу стрима - глупо. ФП и исключения - не любят друг-друга. А процессинг стримов - это такой кивок в сторону ФП. Дескыть вы пищали. Хотели красивой обработки бесконечных последовательностей. Вот получите. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 17:20 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton По сути если внутри map возникло unchecked ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 17:24 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton По сути если внутри map возникло unchecked Любой парсер дат бросает исключения. Дальше - пускай ваша фантазия сработает где в вашем коде может приходить срока как стрим строк и где может быть маппинг с парсингом. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 17:26 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Любой парсер дат бросает исключения. Я не вскурсе как соединить парсер с Stream. Фантазия не работает. Увы. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 18:28 |
|
Stream API
|
|||
---|---|---|---|
#18+
На этот раз поддержу Петро, кидать исключения в стриме - противоречит самой концепции стримов. Такое случается когда смузеры начинают осваивать новую технологию не разобравшись для чего она. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 18:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
Так и я говорю что в стримах по дизайну не должно быть исключений. Исключение разрывает конвейер. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Что делать с двузначной датой? Отдать на откуп техническому заданию и разработчику. Можно логгировать. Можно игнорить. Можно считать дефектом данных. Но не прерывать процессинг стрима. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 20:40 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Код: java 1. 2. 3. 4. 5. 6. 7.
Согласен. Так и получается, что исключения гасить в самом зародыше. Чтобы наружу ни в потоках, ни в стримах не выползали. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 22:40 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton Код: java 1. 2. 3. 4. 5. 6. 7.
Согласен. Так и получается, что исключения гасить в самом зародыше. Чтобы наружу ни в потоках, ни в стримах не выползали. Да. Большинство языков которые создавались после Java (GoLang) отказались от декларации checked exceptions и вообще постарались не вовлекать программиста в формальный протокол обработки до тех пор пока ОН САМ не решит это сделать явно. Да и вообще. Если есть возможность например парсить дату просто возвращая boolean признак - лучше сделать так. Это будет дешевле с точки зрения накладных расходов на процессинг. Представте что вы парсите CSV-файл из миллиарда строк и в нем в каждой строке идет генерация DateTimeParseException и внутренняя механика каждый раз (!) формирует полный стектрейс (Java объект представляющий стектрейс) независимо от того нужен он нам или нет. По сабжу - не нужен но бох его знает какая механика под капотом уже работает. Софистический пример с парсингом дат - для меня был самый настоящий. И я фиксил перформанс дефект как раз для такого случая когда формат даты был задан неверно но деградация производительности (для JDK 1.6) в то время была так ужасна что выгоднее было сделать строковые проверки и выйти из процедуры раньше чем отработает метод ::parse(). Вобщем Exception - должен быть редким. Исключительным. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2020, 23:25 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Вобщем Exception - должен быть редким. Исключительным. mayton Представте что вы парсите CSV-файл из миллиарда строк и в нем в каждой строке идет генерация DateTimeParseException и внутренняя механика каждый раз (!) формирует полный стектрейс (Java объект представляющий стектрейс) независимо от того нужен он нам или нет. Я при исключении выхожу из стека, на самый верх в ГУИ. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2020, 09:07 |
|
Stream API
|
|||
---|---|---|---|
#18+
Главное чтоб для пользователя это не выглядело как "циклическое" модальное окно. Типа выскакиевает лопух с собщением "Unable to parse date XXXX at position Y", пользователь его внимательно читает. Соглашается. Нажимает ОК. А потом - херак - следующее окно точно такое-же текстом только дата другая. Далее - у пользователя должен быть сердечный приступ... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2020, 13:13 |
|
Stream API
|
|||
---|---|---|---|
#18+
забыл ник На этот раз поддержу Петро, кидать исключения в стриме - противоречит самой концепции стримов. Такое случается когда смузеры начинают осваивать новую технологию не разобравшись для чего она. никто не бросает исключение в стриме List -stream- filtr-findfirst-orElseThrow вот конструкция примерная и все тут ок но мне дали задачу сделать похожую концепцию,но исключение должно выброситься в случае если стрим пустой,Причем сделать это в общей концепции -без ифов и без создания доп.объектов ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2020, 19:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 никто не бросает исключение в стриме asv79 List -stream- filtr-findfirst-orElseThrow вот конструкция примерная и все тут ок ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2020, 20:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79 никто не бросает исключение в стриме asv79 List -stream- filtr-findfirst-orElseThrow вот конструкция примерная и все тут ок аргументы на уровне школьника 3 класса аргументируй ,чем он говно ,очень хочется экспертное мнение услышать) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 00:59 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Аргументы тебе школьник, будут когда юз кейс для вопроса по коду будут. Или научишься Модель представлять для вопросов про архитектуру. А на приеме у врача градусник держать под мышкой. https://www.google.com/search?q=use case это&oq=use case&aqs=chrome.3.69i57j0l3.4238j0j8&client=tablet-android-huawei&sourceid=chrome-mobile&ie=UTF-8 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 07:20 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, ты назвал данный флоу -говном ,при этом ничего не обосновав) Как это не по программистски) но раз тебе нужен юзкейс ,ок это валидатор с сайта прилетает заявка-в джейсоне ,что то валидируется bean validation что то должны проверить мы в данном конкретном случае я должен проверить код страны фактический и регистрации и если код этот не РФ ,то должен кинуть наш кастомный exeption задача не трививиальная- тоесть возьми с джейсона этот лист -пройдись по нему циклом и удали оттуда все что не похоже на код РФ -далее сверь размер-если 2 - то ок,не 2 - кидаем ошибку,которая приатачится к ответу и оператор сможет это увидеть и либо поправить ,либо отказать заемщику-как то так. вот моя задача была стилистически все это сделать в таком флоу как выше-ибо весь валидатор построен в таком плане. без ифов и создания новых обьектов . ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 09:22 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 ты назвал данный флоу -говном ,при этом ничего не обосновав) Как это не по программистски) asv79 это валидатор ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 10:14 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Ну а фраза "мне нужно райзе" не катит. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 10:15 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79 ты назвал данный флоу -говном ,при этом ничего не обосновав) Как это не по программистски) asv79 это валидатор зачем мне давать тебе код,который находится в закрытом контуре) тем более давно уже решили задачку,пока ты щеки тут надувал))) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 10:29 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, 22095724 петро закусывай) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 10:51 |
|
Stream API
|
|||
---|---|---|---|
#18+
Девочки - не ссорьтесь. Вот подумайте лучше можно ли все SQL-опции (агрегирующие GROUP BY и аналитические OVER.. PARTITION BY) заменить на Stream::collect/reduce? Я над этим периодически думаю и вижу что на SQL - красиво а на stream - говнецо выходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 11:01 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Девочки - не ссорьтесь. Вот подумайте лучше можно ли все SQL-опции (агрегирующие GROUP BY и аналитические OVER.. PARTITION BY) заменить на Stream::collect/reduce? Я над этим периодически думаю и вижу что на SQL - красиво а на stream - говнецо выходит. вопрос в том что ты хочешь получить в конечном результате если производительность- я думаю сейчас это уже неактуально - все в облаках,мощностей хватает сделать групинг в сервис слое ну и вообще хибер из коробки это умеет -поэтому если ты пользуешь хибер - то такой вопрос не возникнет если ты юзаешь чистый жидибиси ,то наверно логичней этот функционал оставить на стороне базы ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 11:52 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 мощностей хватает сделать групинг в сервис слое ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:01 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, Ну и с точки зрения архитектуры, стрим это постоянно текущая река. Поэтому вопрос твой странный или из категории кунсткамера. Про терминальные операторы не слышал? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:06 |
|
Stream API
|
|||
---|---|---|---|
#18+
SpringMan В операциях по стримам можно сохранить/передать состояние только через общую переменну, reduce или collect. Если надо сделать на стримах, то подходит вроде только collect. Сделать через него можно, но это то еще извращение. По доке все компоненты в стримах должны быть stateless ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:08 |
|
Stream API
|
|||
---|---|---|---|
#18+
забыл ник На этот раз поддержу Петро, кидать исключения в стриме - противоречит самой концепции стримов. Такое случается когда смузеры начинают осваивать новую технологию не разобравшись для чего она. https://dzone.com/articles/exception-handling-in-java-streams ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:15 |
|
Stream API
|
|||
---|---|---|---|
#18+
questioner PetroNotC Sharp asv79, Ну и с точки зрения архитектуры, стрим это постоянно текущая река. Поэтому вопрос твой странный или из категории кунсткамера. Про терминальные операторы не слышал? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 mayton Девочки - не ссорьтесь. Вот подумайте лучше можно ли все SQL-опции (агрегирующие GROUP BY и аналитические OVER.. PARTITION BY) заменить на Stream::collect/reduce? Я над этим периодически думаю и вижу что на SQL - красиво а на stream - говнецо выходит. вопрос в том что ты хочешь получить в конечном результате если производительность- я думаю сейчас это уже неактуально - все в облаках,мощностей хватает сделать групинг в сервис слое ну и вообще хибер из коробки это умеет -поэтому если ты пользуешь хибер - то такой вопрос не возникнет если ты юзаешь чистый жидибиси ,то наверно логичней этот функционал оставить на стороне базы Мой вопрос звучит пока так. Можно ли? А дальше уже пойдем от перформанса. Я как-то написал запрос с оконной функцией от чего у одного йуного джава юниора полезли глаза на лоб. Он не знал что в SQL есть такие возможности вообще. Вот такие вот неграмотные бородачи будут двигать индустрию через 10 лет. Это знаете. Как эпоха средневековья после античности. Вроде время и идет вперед а люди знания теряют. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:38 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Можно ли? Это знаете. Как эпоха средневековья после античности. Вроде время и идет вперед а люди знания теряют. Ну раз есть такая возможность -почему нельзя? по второму пункту-многие знания лишние в контексте современного программирования тоже самое как для современного городского жителя абсолютно лишние знания - как например поймать животное - разделатьи приготовить его,а ведь еще сколько там немного лет назад без этого бы ты не выжил) а сейчас такая ситуация ,что некоторые даже яичницу делать не умееют - но с голода при этом не умирают микроволновка-готовое блюдо/доставка еды можно быть успешным энтерпрайз программистом вообще не умея делать ни 1 запроса ,но при этом если ты не умеешь конфигурировать приложение ,работать с с средствами коллективной разработки- тебе дадут пинок под зад как пример я неделю назад сел на новую учетку - там ничего не было ,чтобы поднять всю среду и запустить проект - ушла почти неделя мук,это называется совместить несовместимое) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 12:55 |
|
Stream API
|
|||
---|---|---|---|
#18+
questioner По доке все компоненты в стримах должны быть stateless У тебя триггер на слово состояние? К примеру у коллектора Collectors.toList() есть List, который передается между вызовами accumulator, - вот он и есть внутреннее состояние. К stateless это имеет к примерно никакого отношения ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 13:21 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 как пример я ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 13:30 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 как пример я неделю назад сел на новую учетку - там ничего не было ,чтобы поднять всю среду и запустить проект - ушла почти неделя мук,это называется совместить несовместимое) Ну и что? Если эта неделя был заложена в сроки - то нормально. Если инструкции не было или автоматизации поднятия среды - то где был ты? Ты уже должен был это все написать и автоматизировать чтобы следующий разработчик поднимал всю среду через docker compose или еще через черт знает что но в 1 мышкоклик. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 13:33 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton asv79 как пример я неделю назад сел на новую учетку - там ничего не было ,чтобы поднять всю среду и запустить проект - ушла почти неделя мук,это называется совместить несовместимое) Ну и что? Если эта неделя был заложена в сроки - то нормально. Если инструкции не было или автоматизации поднятия среды - то где был ты? Ты уже должен был это все написать и автоматизировать чтобы следующий разработчик поднимал всю среду через docker compose или еще через черт знает что но в 1 мышкоклик. сразу видно что в энтерпрайзе ты не работал)) чтобы среда подымалась ее нужно настроить на каждой удаленной машине,причем на каждой машине одна ссылка может работать коректно ,а на другой нет в итоге у нас около 4 конфигурационных файлов и там около сотни вариантов настройки. учитывая что постоянно кто то что то меняет ,например ту же кафку ,то это занимает дни -чтобы собраться на локальной машине) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 14:14 |
|
Stream API
|
|||
---|---|---|---|
#18+
Это не энтерпрайз. Это результат найма специалистов стоимостью 10 копеек за пучок. Я такое и в организациях из 5 человек видел. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 14:53 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 удаленной машине,причем на каждой машине одна ссылка может работать коректно ,а на другой нет А почему это происходит? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 14:58 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton asv79 удаленной машине,причем на каждой машине одна ссылка может работать коректно ,а на другой нет А почему это происходит? потому что везде бардак доступа к установке и настройке компухтера у нас нет все через службу поддержки,получается ты можешь ждать градл -2-3 месяца я вот жду идею новую 3й месяц) пока работаю на старой -локально ,но собраться уже не могу ибо все подсосы на 6м градле вот так и работаем) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 15:06 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 доступа к установке и настройке компухтера у нас нет Привык на других все валить. Комп без админских прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 15:15 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 mayton пропущено... А почему это происходит? потому что везде бардак доступа к установке и настройке компухтера у нас нет все через службу поддержки,получается ты можешь ждать градл -2-3 месяца я вот жду идею новую 3й месяц) пока работаю на старой -локально ,но собраться уже не могу ибо все подсосы на 6м градле вот так и работаем) Ну смотри. Видно что ты не опытный. У тебя на службу поддержки должен быть заведен реквест. И ты должен его каждый день трекать и докладывать на стендапе что ты заблокирован и работать не можешь. Но ты не должен геройствовать или играть в хакера. Иначе ты будешь скорее всего наказан. Я здесь не вижу проблемы лично для тебя. Можешь пить кофе или играть в онлайн игры. Или лучше возьми другую таску. Но я также вижу потенциальные проблемы рабочих процессов на вашем предприятии. Это как раз относится к ентерпрайзу и стандартам ISO о которых я тебе когда-то писал. Вы еще до них недотягиваете раз у вас нет фидбэка по качеству внутренних процессов. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 15:25 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79 доступа к установке и настройке компухтера у нас нет Привык на других все валить. Комп без админских прав? не комп а удаленная машина) доступ есть только к идее и нескольким коллектив тулзам типо жира и битбакета с тимсити ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 16:46 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Тебе уже ответили. Сиди и кофе пей. Зачем жаловаться "везде бардак". Есть локальный комп - ставь туда. Не нравится комп в домене без доступа к setup.exe - увольняйся. Развел сопли какие то. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 16:55 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, Тебе уже ответили. Сиди и кофе пей. Зачем жаловаться "везде бардак". Есть локальный комп - ставь туда. Не нравится комп в домене без доступа к setup.exe - увольняйся. Развел сопли какие то. петро иди опохмелись ,ты какую то дичь несешь ей богу сопли какие то в отражении и тд) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 16:57 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Знатно ты сегодня тему свою поднял. Рассказами что у тебя на столе происходит. Развлекай дальше. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 17:07 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, Знатно ты сегодня тему свою поднял. Рассказами что у тебя на столе происходит. Развлекай дальше. Как тут уже не раз было замечено,петрушку проще в игнор засунуть ,избавив себя тем самым от общения с пустотой)) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 17:17 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 PetroNotC Sharp asv79, Знатно ты сегодня тему свою поднял. Рассказами что у тебя на столе происходит. Развлекай дальше. Как тут уже не раз было замечено,петрушку проще в игнор засунуть ,избавив себя тем самым от общения с пустотой)) 22096084 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 17:47 |
|
Stream API
|
|||
---|---|---|---|
#18+
Alexander A. Sak Это не энтерпрайз. Это результат найма специалистов стоимостью 10 копеек за пучок. Я такое и в организациях из 5 человек видел. сейчас весь крупный энтерпрайз наверно такой,за редким исключением проще платить 100 людям 10 чем 10 100ку в итоге получается что ты просишь обновить тулз,а вместо этого тебе вообще выпиливают sofware center)))) но раз от такой системы не отказываются -значит выгодно ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 18:50 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 Alexander A. Sak Это не энтерпрайз. Это результат найма специалистов стоимостью 10 копеек за пучок. Я такое и в организациях из 5 человек видел. сейчас весь крупный энтерпрайз наверно такой,за редким исключением проще платить 100 людям 10 чем 10 100ку в итоге получается что ты просишь обновить тулз,а вместо этого тебе вообще выпиливают sofware center)))) но раз от такой системы не отказываются -значит выгодно Не стоит так говорить. 10-тку.. 100-тку. Это разговоры вобщем-то безосновательные. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 18:59 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 можно быть успешным энтерпрайз программистом вообще не умея делать ни 1 запроса Во всех топиках с вакансиями, где ты с улыбкой пишешь, чтобы взяли тебя, требуется опыт работы с базами данных. Думаешь это не подразумевает умение писать запросы? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 19:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
skyANA asv79 можно быть успешным энтерпрайз программистом вообще не умея делать ни 1 запроса Во всех топиках с вакансиями, где ты с улыбкой пишешь, чтобы взяли тебя, требуется опыт работы с базами данных. Думаешь это не подразумевает умение писать запросы? вся эта работа сводиться к одному extends JPARepository) в худщем варианте JOOQ и я сомневаюсь что в этих вакансиях эти базы еще не спроектированы все оюычно сводится к редактированию справочников и последующему рефакторингу мапперов и валидаторов ну и если ты думаешь я зпросы не умею писать ,ты это зря) да конечно я не смогу там проиндексировать базу или написать какой то супер сложный селект все остальное я смогу да и вышенаписаное смогу через пару недель - я не думаю что там прям все так супер сложно - я просто все внимание сосредоточил на джаве и не ошибся,а попросят что то допами я мгновенно изучу ,мне это не впадлу так сказать) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 20:51 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Не стоит так говорить. 10-тку.. 100-тку. Это разговоры вобщем-то безосновательные. вообщем то это так и есть в современных реалиях,добро пожаловать в реальность) компании берут джунов ,по 30 р за штуку ( как я) кто то тянет ,Кто то нет по итогу код пишется по сути бесплатно)) сеньеры смотрят пр - вносят какие то коменты - ты правишь - код готов зачем кому то платить 4тыщи уе) а я за 32 сижу глаза ломаю ,втыкая в с справочники ,попутно 2-3 темы тут и на стаке ,Как шо сделать лучше (зато мой код почти не подвергается коментам-сразу на мердж отправляется) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 21:02 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, иди к Бугаенко. Будешь до 100 тыщ бакинских получать в месяц. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:06 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton asv79, иди к Бугаенко. Будешь до 100 тыщ бакинских получать в месяц. никуда я не пойду уже)) если только к знакомым ,а так буду карьеру строить на галере) хотя конечно тут супер скучно ,развитие закончилось как только я познал все тулзы коллетивной разработки и научилися грамотно с гит работать) и вот та задачка меня обрадовала -запилить стрим -фильтр -редьюс пол рабочего дня я трачу на книгу блинова)) хоть она и содержит местами ошибки ,но очень доступно все доносится,а главно после каждой темы есть задачи и экзамены) меня вот тут поразило его высказывание - он пишет если в вашем коде есть стринг литералы - эта программа говно типо все литералы должны выноситься в проперти файлы и ваш код не долже перекомпилироваться при внесении изменений в константы. вот тут я четсно прифигел-хотя это же верно на 100% ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:26 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 меня вот тут поразило его высказывание - он пишет если в вашем коде есть стринг литералы - эта программа говно типо все литералы должны выноситься в проперти файлы и ваш код не долже перекомпилироваться при внесении изменений в константы. вот тут я четсно прифигел-хотя это же верно на 100% 1) Смотри. Блинов прав в теории. Или в предположении что любой стринговый литерал - это некое внешнее property которое будет подвержено изменению. Но если этого нет - то и экстрактить литералы как переменные не надо. Смотри. Я пишу форматную печать. Код: java 1.
Это - не по Блиновски. Надо экстрактить константу. Пишем. Код: java 1. 2.
И чего мы добились? Код стал толще. И форматирование - неочевидно. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:40 |
|
Stream API
|
|||
---|---|---|---|
#18+
тоесть вот я сдаю проект небольшой заказчику у меня там в пропертях прописаны кастомные настройки при старте приложухи достаточно прописать -Dspring.datasource.username=postgres и тд и взлетит где хочешь я так понимаю блинов клонит к этому - что для старта приложения нужен скрипт со всеми контантами- а если что то изменилось изменится лишь скрипт- по сути это красиво - не нужно передеплоивать приложение - достаточно лишь перезаггрузиться ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:41 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton, немного не так он топит за то чтобы литералов вообще не было в джава коде все должнго выноситься в проперти файлы, и твой код не должен перекомпилироваться при изменении констант я думаю что это очень грамотное решение (в первый раз я с блиновым согласен)))) хочу нашим разрабам такое предложить ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:44 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton И чего мы добились? Код стал толще. И форматирование - неочевидно. ты не понял его мысли ) он хочет все константы выносить в application.properties чтобы при старте приложения при изменннии констант приложение не перекомпилировалось я с ним полностью согласен если сегодня у нас образно заемщик в справочнике написан как borrower а завтра будет как coborrower то придется приложение передеплоить и рефакторить код а в случае с пропертями просто перезапустить с испрвленым скриптом ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:49 |
|
Stream API
|
|||
---|---|---|---|
#18+
2) Java-компиллятору вообще плевать на блиновские рефакторинги и он сводит 2 одинаковых литерала в 1 после компилляции .class файла. Ты можешь это проверить если дизассемблировать. Тоесть внедрение стринговых констант это эстетическое и организационное действие. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:52 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 mayton И чего мы добились? Код стал толще. И форматирование - неочевидно. ты не понял его мысли ) он хочет все константы выносить в application.properties чтобы при старте приложения при изменннии констант приложение не перекомпилировалось я с ним полностью согласен если сегодня у нас образно заемщик в справочнике написан как borrower а завтра будет как coborrower то придется приложение передеплоить и рефакторить код а в случае с пропертями просто перезапустить с испрвленым скриптом Это очень странная крайность - которая побочных эффектом имеет кучу эффорта при разработке. Чтоб константа была полезной как настройка приложения - надо еще доказать что она должна изменяться при рестарте. А доказывать это надо обсуждая с коллегами и с бизнесом эту возможность. Беря во внимание дефицит времени на обсуждение - ябы сказал что коллеги пошлют Блинова нах вместе со всеми кто впадает в такие крайности. Код должен читаться как книга на английском. А чтение .properties и кода это как чтение конституции с поправками. Вроде и читаешь но раздражает постоянние переключения зрения с одного на другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 22:56 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton asv79 пропущено... ты не понял его мысли ) он хочет все константы выносить в application.properties чтобы при старте приложения при изменннии констант приложение не перекомпилировалось я с ним полностью согласен если сегодня у нас образно заемщик в справочнике написан как borrower а завтра будет как coborrower то придется приложение передеплоить и рефакторить код а в случае с пропертями просто перезапустить с испрвленым скриптом Это очень странная крайность - которая побочных эффектом имеет кучу эффорта при разработке. Чтоб константа была полезной как настройка приложения - надо еще доказать что она должна изменяться при рестарте. А доказывать это надо обсуждая с коллегами и с бизнесом эту возможность. Беря во внимание дефицит времени на обсуждение - ябы сказал что коллеги пошлют Блинова нах вместе со всеми кто впадает в такие крайности. Код должен читаться как книга на английском. А чтение .properties и кода это как чтение конституции с поправками. Вроде и читаешь но раздражает постоянние переключения зрения с одного на другое. я и с тобой тоже согласен ,но и он тоже прав- код не должен пекомилироваться если код валюты поменяется с 643 на 810 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:04 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 код не должен пекомилироваться если код валюты поменяется с 643 на 810 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:10 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79 код не должен пекомилироваться если код валюты поменяется с 643 на 810 помоему 196 страница его последней книги,завтра могу точно сказать ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79 код не должен пекомилироваться если код валюты поменяется с 643 на 810 ну и вообще как бы да - что тебе мешает вместо константны прописать value1 и тд в и пропертях указать значение почему кто то должен пересобирать твое приложение если какая то цифа поменяется? обоснуй это ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:18 |
|
Stream API
|
|||
---|---|---|---|
#18+
А когда к примеру приходит json {"lastname": "Иванов"}, а станет приходить {"surname": "Иванов"}. Название lastname тоже надо в конфиги? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:21 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 спроси у блинова,он вроде еще жив) Лучше завтра не надо. ПТ. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:22 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 почему кто то должен пересобирать твое приложение если какая то цифа поменяется? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2020, 23:23 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 тоесть вот я сдаю проект небольшой заказчику у меня там в пропертях прописаны кастомные настройки при старте приложухи достаточно прописать -Dspring.datasource.username=postgres Ну и жестоко заставлять админа расписывать длинные и бессмысленые для него имена: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 06:47 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 я и с тобой тоже согласен ,но и он тоже прав- код не должен пекомилироваться если код валюты поменяется с 643 на 810 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 06:50 |
|
Stream API
|
|||
---|---|---|---|
#18+
SpringMan А когда к примеру приходит json {"lastname": "Иванов"}, а станет приходить {"surname": "Иванов"}. Название lastname тоже надо в конфиги? а ты не видишь разницы между key-value surname/lastname это поля DTO а 643- это значение из справочника- которое неизменно если у нас сейчас предполагается ,что кредитьы будут рублевые -валидируем по 643 - и например я соглсен с блиновым что эти значения нужно выносить в проперти,чтобы если бизнес скажет - теперь выдаем в долларах я просто рестартнул приложение с новым скриптом,без передеплоев и перекомпиляций- согласись в этом есть здавый смысл ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 09:24 |
|
Stream API
|
|||
---|---|---|---|
#18+
А зачем рестарт? Давайте вспомним что есть zookeeper. Есть БД. Есть бины у которых lifecycle короче чем цикл приложения. Блинов устарел на 20 лет со своими вредными советами. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 09:38 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 SpringMan А когда к примеру приходит json {"lastname": "Иванов"}, а станет приходить {"surname": "Иванов"}. Название lastname тоже надо в конфиги? а ты не видишь разницы между key-value surname/lastname это поля DTO а 643- это значение из справочника- которое неизменно если у нас сейчас предполагается ,что кредитьы будут рублевые -валидируем по 643 - и например я соглсен с блиновым что эти значения нужно выносить в проперти,чтобы если бизнес скажет - теперь выдаем в долларах я просто рестартнул приложение с новым скриптом,без передеплоев и перекомпиляций- согласись в этом есть здавый смысл Ты серьезно о такой мелочи решил поговорить? Если... То берем локальную переменную. Если...то берем поле класса. Если... То берем константу. Про это говорить в теме Stream? Тут уже обижаются что уровень упал. Вот из за таких вопросов он и упал. Либо ты делаешь вброс. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 10:02 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton А зачем рестарт? Давайте вспомним что есть zookeeper. Есть БД. Есть бины у которых lifecycle короче чем цикл приложения. Блинов устарел на 20 лет со своими вредными советами. Книга в довольно свежей редакции -2015 помоему) не ну мы же выносим например конекты в проперти и ок- не буду же я каждый раз перекомпилировать приложение если база адрес поменяет ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 10:27 |
|
Stream API
|
|||
---|---|---|---|
#18+
На деле все это, как говорит коллега skyANA, влажные фантазии Блиновых и прочих Ivory Tower Architechts, оторванных от реальности. Бизнес логика редко меняется без изменения кода, поэтому вынесение бизнес констант в конфиги, как правило, неоправданно. А если быстрый цикл CI/CD, то вообще ненужно. Мы, например, деплоим в прод хоть по десять раз на день, если нужно. Что имеет смысл выносить в конфиги, так это фича свитчи, трешхолды, таймауты и прочие "подстроечники", но тогда из нужно делать изменяемыми без перезапуска приложения. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 10:37 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 не ну мы же выносим например конекты в проперти и ок- не буду же я каждый раз перекомпилировать приложение если база адрес поменяет Ты не удивился что солнце круглое? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 10:44 |
|
Stream API
|
|||
---|---|---|---|
#18+
fixxer поэтому вынесение бизнес констант в конфиги, ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 10:45 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 а ты не видишь разницы между key-value surname/lastname это поля DTO а 643- это значение из справочника- которое неизменно если у нас сейчас предполагается ,что кредитьы будут рублевые -валидируем по 643 - и например я соглсен с блиновым что эти значения нужно выносить в проперти,чтобы если бизнес скажет - теперь выдаем в долларах я просто рестартнул приложение с новым скриптом,без передеплоев и перекомпиляций- согласись в этом есть здавый смысл Ты во внешний сервис посылаешь json c lastname. Если бизнес скажет - теперь переходим на новую версию сервиса с surname, то ты просто рестартанул приложение, без передеплоев и перекомпиляции ) На бумаге переходы 643->доллары и lastname->surname могут выглядеть логично. Как правило бизнес параметры нет смысла выносить. Если они как-то меняются, то меняется бизнес логика, а не только константа. Если у вас сбер решит перейти с рубля на доллар, то бизнес процессы поменяются так, что твой сервис вообще исчезнет и появиться что-то новое. PS опять же про передеплой и перекомпиляцию всем как правило не важно. Это может быть только важно девопсам, который конфиги к базе меняют и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 11:07 |
|
Stream API
|
|||
---|---|---|---|
#18+
SpringMan Если у вас сбер решит перейти с рубля на доллар, то бизнес процессы поменяются так, что твой сервис вообще исчезнет и появиться что-то новое. Поэтому обсуждаемый вопрос настолько мелкий в обсуждении. Как экономия на спичках. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 11:13 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 mayton А зачем рестарт? Давайте вспомним что есть zookeeper. Есть БД. Есть бины у которых lifecycle короче чем цикл приложения. Блинов устарел на 20 лет со своими вредными советами. Книга в довольно свежей редакции -2015 помоему) не ну мы же выносим например конекты в проперти и ок- не буду же я каждый раз перекомпилировать приложение если база адрес поменяет Смотри дальше. Если ты разрабатываешь кластерное приложение. Которое будте развернуто на 100 узлов. То сопрвождение пропертей на всех 100 узлах станет технической проблемой. Надо будет держать штат dev-ops. Короче трата денег. У Spring Cloud есть коробочные решения которые опираются либо на Zookeeper либо на другие распределенные и очень отказоустойчивые решения. Вобщем к чему я это. Ты у Блинова услышал рекомендацию - выносить в проперти те настройки которые должны конфигурироваться отделом сопровождения. Рекомендация - верная. Но способ имплементации - старый. И непригодный для облачных систем. И если у тебя в приложении 100500 констант то это не значит что тебе надо создавать properties с простыней настроек. Ведь их надо будет группировать. Документировать и прояснять внутренние зависимости одних пропертей от других. Вобщем там появляется другой технический долг который в совокупности может быть еще хуже чем было раньше. Короче - грумить каждое свойство с командой разработки. И голосовать. Доречі є така українська поговорка - Шо занадто - то не здраво . Очень отражает смысл. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 11:37 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton asv79 пропущено... Книга в довольно свежей редакции -2015 помоему) не ну мы же выносим например конекты в проперти и ок- не буду же я каждый раз перекомпилировать приложение если база адрес поменяет Смотри дальше. Если ты разрабатываешь кластерное приложение. Которое будте развернуто на 100 узлов. То сопрвождение пропертей на всех 100 узлах станет технической проблемой. Надо будет держать штат dev-ops. Короче трата денег. У Spring Cloud есть коробочные решения которые опираются либо на Zookeeper либо на другие распределенные и очень отказоустойчивые решения. Вобщем к чему я это. Ты у Блинова услышал рекомендацию - выносить в проперти те настройки которые должны конфигурироваться отделом сопровождения. Рекомендация - верная. Но способ имплементации - старый. И непригодный для облачных систем. И если у тебя в приложении 100500 констант то это не значит что тебе надо создавать properties с простыней настроек. Ведь их надо будет группировать. Документировать и прояснять внутренние зависимости одних пропертей от других. Вобщем там появляется другой технический долг который в совокупности может быть еще хуже чем было раньше. Короче - грумить каждое свойство с командой разработки. И голосовать. Доречі є така українська поговорка - Шо занадто - то не здраво . Очень отражает смысл. кое что выносится в проперти ,тут блинов прав. То что он говорит,что приложение с литералами в коде говно - я тоже не согласен ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 13:35 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 кое что выносится в проперти ,тут блинов прав. КОЕ ЧТО надо выносить не по указке блинова. Нобелевку ему дайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 13:37 |
|
Stream API
|
|||
---|---|---|---|
#18+
Ну ево в болото этого блинова. Лучше подумайте хором когда последний раз вам нужно было делать операции группировки или аналитики над Stream и вы колебались между выбором где это сделать. На уровне DBMS или Application. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 13:47 |
|
Stream API
|
|||
---|---|---|---|
#18+
чтобы ответить на твой вопрос нужно понять несколько вещей на чем твое приложение построено-чистый jdbs или одна из имплементаций jpa далее уже взять конретнуб имплементацию и залезть под ее капот - выяснив ,как реализована данная функция уже после этого делать выводы какие но наверно правильней те функции,которые умеет база -оставить базе или жпашке вместо наворачиваний в сервис слое мусорных объектов ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 15:08 |
|
Stream API
|
|||
---|---|---|---|
#18+
Я вообще не про то как она реализована внутри. А я про УДОБСТВО ее применения и про фактическую ВОЗМОЖНОСТЬ. Я знаю что алгоритмически любой SQL запрос мы можем реализовать на Java при условии что просто имеет доступ к сырым данным. Но сама реализация его на SQL может быть более выгодной. Кода меньше. А разработчику чем меньше кода - тем лучше. Это лаконично. Это удобно поддерживать. Я подниму отдельный топик. Наверное в ПТ на эту тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 15:13 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Я подниму отдельный топик. Наверное в ПТ на эту тему. Обзови топик просто: "двухзвенка или трехзвенка". ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 15:16 |
|
Stream API
|
|||
---|---|---|---|
#18+
ПТ - это пятница. А не то что ты подумал ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 15:18 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton ПТ - это пятница. А не то что ты подумал ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 15:24 |
|
Stream API
|
|||
---|---|---|---|
#18+
Присоединюсь к клубу извращенцев: работает, если в стриме только 2 элемента и брасает unchekedException. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44.
Тут походу в цепочке операций со стримом в конце нужно вернуть Optional, чтобы иметь возможность выбросить исключение через метод orElseThrow. Но я как то не нашел подходящих операций, которые удовлетворяли бы условиям автора (Не содержать if и не создавать новые объектов). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 16:21 |
|
Stream API
|
|||
---|---|---|---|
#18+
faustgreen условиям автора "Один дурак может задать столько вопросов что и 100 мудрецов не ответят" [(с) В.И. Ленин ПСС том 8 стр.15, работа "Как нам преобразовать РабКрин"] ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 16:48 |
|
Stream API
|
|||
---|---|---|---|
#18+
faustgreen Присоединюсь к клубу извращенцев: работает, если в стриме только 2 элемента и брасает unchekedException. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44.
Тут походу в цепочке операций со стримом в конце нужно вернуть Optional, чтобы иметь возможность выбросить исключение через метод orElseThrow. Но я как то не нашел подходящих операций, которые удовлетворяли бы условиям автора (Не содержать if и не создавать новые объектов). это портянка не подходит ибо содержит в своем теле тернальный оператор,в условии было сказано без ифов с ифом это делается в 1 строчку -зачем городить такой огород было,но у памфилова свое видение видимо)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 17:01 |
|
Stream API
|
|||
---|---|---|---|
#18+
faustgreen Но я как то не нашел подходящих операций, которые удовлетворяли бы условиям автора (Не содержать if и не создавать новые объектов). и не найдешь,эта задача не имеет решения в озвученных условиях. Пришлось втыкать иф ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 17:03 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79, Я как раз изучаю стримы (около недели), вот и решил попробовать свой вариант. Сбрось, если несложно вариант с ифом. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 17:10 |
|
Stream API
|
|||
---|---|---|---|
#18+
faustgreen asv79, Я как раз изучаю стримы (около недели), вот и решил попробовать свой вариант. Сбрось, если несложно вариант с ифом. вот смотри вместо портянки памфилова 2 строчки кода ДТО для теста Код: java 1. 2. 3. 4. 5. 6. 7. 8.
логика Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
если в листе будет не 2 элемента - кинет эксепшн,я кинул нул поинтер для наглядности(так как это анчекед исключение - не нужно трай кетч использовать,чтобы не загромождать код) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 17:46 |
|
Stream API
|
|||
---|---|---|---|
#18+
faustgreen, Код: java 1. 2. 3. 4.
ТС просто дурку включил и упирался до последнего. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 17:57 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 а ты не видишь разницы между key-value surname/lastname это поля DTO а 643- это значение из справочника- ..... Бред какой-то. Если это значение из справочника (в моем понимании справочника, который может дополняться/меняться) - то что оно делает в коде программы? asv79 если у нас сейчас предполагается ,что кредитьы будут рублевые -валидируем по 643 - и например я соглсен с блиновым что эти значения нужно выносить в проперти,чтобы если бизнес скажет - теперь выдаем в долларах я просто рестартнул приложение с новым скриптом,без передеплоев и перекомпиляций- согласись в этом есть здавый смысл Такой же бред Почему валюта кредита не выбирается в лист-боксе на экране и для того, что бы выдать кредит в другой валюте нужно что-то там перезапускать? Давайте тогда и имя клиента, и сумму кредита тоже в проперти хранить! Очень удобно! Нужно бизнесу выдать новый кредит - поменяли проперти - перезагрузили сервер и вуа-ля... кредит выдали! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:17 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Бред какой-то. Если это значение из справочника (в моем понимании справочника, который может дополняться/меняться) - то что оно делает в коде программы? ! про валидаторы и тесты слышал?есть такое в ентерпрайзе)) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:28 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Такой же бред Почему валюта кредита не выбирается в лист-боксе на экране и для того, что бы выдать кредит в другой валюте нужно что-то там перезапускать? на экране чего?мы разрабатываем апи дядя )) мне не важно что там на экране ,Мне важно что мне приходит и что я отдаю,Я никаким боком не знаю и знать не хочу что там на стороне UI валюта кредита у нас одна Рубли,это прописано в спецификации но если нам прилетит другая валюта я должен выдать обратно бизнес еррор ферштейн? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
Мы как-то саппортили систему маркетинг акций для одного моб-оператора. Смена пропертей выглядела так. Мы просто заводили в БД новое проперсти и у него была дата действия from=, to=. Суть этого действия была в том что акция активируется обычно в полночь в 00:00 и после этого маркетинг-система ее делает доступной. Тоесть участия оператора или девопса не надо. И перегружать ничего не надо. Все проперти и даже их иерархии были би-темпоальные. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:41 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 прилетит другая валюта ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:43 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 skyANA пропущено... Во всех топиках с вакансиями, где ты с улыбкой пишешь, чтобы взяли тебя, требуется опыт работы с базами данных. Думаешь это не подразумевает умение писать запросы? вся эта работа сводиться к одному extends JPARepository) в худщем варианте JOOQ и я сомневаюсь что в этих вакансиях эти базы еще не спроектированы все оюычно сводится к редактированию справочников и последующему рефакторингу мапперов и валидаторов ну и если ты думаешь я зпросы не умею писать ,ты это зря) да конечно я не смогу там проиндексировать базу или написать какой то супер сложный селект все остальное я смогу да и вышенаписаное смогу через пару недель - я не думаю что там прям все так супер сложно - я просто все внимание сосредоточил на джаве и не ошибся,а попросят что то допами я мгновенно изучу ,мне это не впадлу так сказать) Так всё-таки откуда ты взял, что "можно быть успешным энтерпрайз программистом вообще не умея делать ни 1 запроса"? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:43 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton, Смена валюты должна быть в Модели. Если там она есть, то все ОК. Если нет, то значит ЭТО НЕ НУЖНО ни в пропертях ни в скриптах, ни в конфигах. Зы. Решение проблемы через задний проход. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:46 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton заводили в БД новое проперсти Там модель и есть проперти) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:48 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 Leonid Kudryavtsev Бред какой-то. Если это значение из справочника (в моем понимании справочника, который может дополняться/меняться) - то что оно делает в коде программы? ! про валидаторы и тесты слышал?есть такое в ентерпрайзе)) если значение "в справочнике", то и валидироваться оно должно по справочнику, а не мифическому проперти или константе разумеется, могут быть исключения, но исключительно подтверждающие правила Оно УЖЕ в справочнике. Нахрена городить какой-то проперти, дублирующий справочник? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:51 |
|
Stream API
|
|||
---|---|---|---|
#18+
Так я и не говорил про смену валюты. Вообще наше представление сейчас о валютах - сейчас поверхностное. Если в наш топик зайдет дата-аналитик то он просто поржет держась за бока. Валют может быть много ОДНОВРЕМЕННО. И они тоже могут иметь свойства ДЕЙСТВИЯ на промежутке времени или иметь открытый интервал действия. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:52 |
|
Stream API
|
|||
---|---|---|---|
#18+
PetroNotC Sharp mayton заводили в БД новое проперсти Там модель и есть проперти) У НАС? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:52 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev asv79 пропущено... про валидаторы и тесты слышал?есть такое в ентерпрайзе)) если значение "в справочнике", то и валидироваться оно должно по справочнику, а не мифическому проперти или константе разумеется, могут быть исключения, но исключительно подтверждающие правила Оно УЖЕ в справочнике. Нахрена городить какой-то проперти, дублирующий справочник? asv79 Я никаким боком не знаю и знать не хочу ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:53 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton PetroNotC Sharp пропущено... вспомнил. У вас бд key value. Там модель и есть проперти) У НАС? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:56 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Вообще наше представление сейчас о валютах - сейчас поверхностное. Но ТС 10 страниц рассказывает как там в энтерпрайзе дядям). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 19:58 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 .... валюта кредита у нас одна Рубли,это прописано в спецификации но если нам прилетит другая валюта я должен выдать обратно бизнес еррор ферштейн? Если брать стандартны, то такая функциональность вроде называется XSD ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:23 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev asv79 пропущено... про валидаторы и тесты слышал?есть такое в ентерпрайзе)) если значение "в справочнике", то и валидироваться оно должно по справочнику, а не мифическому проперти или константе разумеется, могут быть исключения, но исключительно подтверждающие правила Оно УЖЕ в справочнике. Нахрена городить какой-то проперти, дублирующий справочник? еще раз для особо одаренных в справочнике валют банка - все валюты банка с которыми он работает согласно спеки мы должны провести валидацию ,что код валюты в заявке - рубли РФ(643) если нет мы должны выдать бизнес еррор и вернуть заявку на доработку если валюты в справочнике нет - то до валидатора даже дело не дойдет - будет системная ошибка с сообщением что валюты с таким значением нет теперь ферштейн ? Это микросервисная архитектура дядя ,никто под тебя отдельный справочник писать не будет с одним значением валюты))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:26 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, Да. Но он сам себе стандарты. По телефону крикнул клиенту, чтобы в поле json сумма, все писали евро. А начальники сказали проверять - вдруг рубли туда запишут))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:29 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton Так я и не говорил про смену валюты. Вообще наше представление сейчас о валютах - сейчас поверхностное. Если в наш топик зайдет дата-аналитик то он просто поржет держась за бока. Валют может быть много ОДНОВРЕМЕННО. И они тоже могут иметь свойства ДЕЙСТВИЯ на промежутке времени или иметь открытый интервал действия. Если есть справочник, то в этом справочнике, скорее всего, должно было бы быть поле a la Active с возможными значениями 'Y', 'N' ))) Нужна ли историчность для справочника валют - есть сомнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Если брать стандартны, то такая функциональность вроде называется XML_Schema_(W3C)]XSD ну наконец то до тебя начинает доходить) только у нас летает между сервисами джейсон и соотвественно мы его валидируем кастомными валидаторами,Причем на каждый вариант у нас много разных бизнес эророс ,КОТОРЫЕ МЫ Должны вернуть оператору ,который заявку забивал- на каждый случай свои спецификации ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 Это микросервисная архитектура дядя ,никто под тебя отдельный справочник писать не будет с одним значением валюты))) В микросервисной , спрпвочником является пропертиес в комнате админа. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 ....Это микросервисная архитектура дядя.... мы сталевары, мы делаем жесть Заготовки молот бьет, Кровь ликует в теле, Льет горячий жгучий пот - Здесь куют металл ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:36 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 только у нас летает между сервисами джейсон и соотвественно мы его валидируем кастомными валидаторами,Причем на каждый вариант у нас много разных бизнес эророс ,КОТОРЫЕ МЫ Должны вернуть оператору ,который заявку забивал- на каждый случай свои спецификации То есть, кроме вашей хреновены. есть еще хреновена, куда "оператор без проблем забивает НЕ ВЕРНЫЕ заявки" ? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:43 |
|
Stream API
|
|||
---|---|---|---|
#18+
ТС делает так: - приходит json Тип=заявка на кредит Имя=вася Сумма=100000 - далее ТС меняет проперти о чудо без перекомпиляции и всем заявившим выдали кредиты в евро. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:43 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Нужна ли историчность для справочника валют - есть сомнения. это вопрос не ко мне ,нас туда никто не подпускает даже на пушечный выстрел . но про ваши сомнения мы постараемся напрямую сообщить Костину.Я более чем уверен,что к вашим сомннениям прислушаются и снимут с прода весь микросервисный зоопарк ,Пока в справочник не добавится ля актив))) пс.подскажите сразу этим тупицам - а что делать если один микросервис пользуется валютой 643 ,а другой 840? а третий этими двумя и еще 910? ля пассив прикрутить?)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:44 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev asv79 только у нас летает между сервисами джейсон и соотвественно мы его валидируем кастомными валидаторами,Причем на каждый вариант у нас много разных бизнес эророс ,КОТОРЫЕ МЫ Должны вернуть оператору ,который заявку забивал- на каждый случай свои спецификации То есть, кроме вашей хреновены. есть еще хреновена, куда "оператор без проблем забивает НЕ ВЕРНЫЕ заявки" ? еще раз для супер одаренных)) у нас АПИ что такое апи можете ознакомиться вот тут wikipedia.org/wiki/API что и куда оператор или еще кто то мне до лампочки,я получаю джейсон и занимаюсь его валидацией - если там ок - я кидаю его дальше если нет он улетает обратно на доработку с кодом ошибки согласно спецификаций))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:48 |
|
Stream API
|
|||
---|---|---|---|
#18+
22097178 поскольку, как я понимаю, операций много, то табличка/справочник: код-валюты, разрешенная операция, другие поля по вкусу (например даты действия) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:48 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev 22097178 поскольку, как я понимаю, операций много, то табличка/справочник: код-валюты, разрешенная операция, другие поля по вкусу (например даты действия) и еще раз таки попробуем донести до тебя))) справочник валют ОДИН))) микросервисов много) кто то пользует все валюты,кто то только рубли,кто то доллары в соотвествии с этим у каждого адаптера свои спецификации по валидации входящих заявок есть мультивалютные адаптеры например ,там валидация идет как имутейбл сет кодов валют у нас вот только 643 давай леня приди в себя ,перевари инфу ) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:54 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 но про ваши сомнения мы постараемся напрямую сообщить Костину. Ну тогда понятно. Для любовницы: яхта, личный самолет, домик на лазурном берегу. Для сисадминов и ДевОпс Key-Value СУБД имени asv79 на properties Все для блага человека, все во имея человека.... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:56 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 Да я уже переварил. Понял, что наши банки, самые продвинутые банки в мире! Только новые технологии! Микросервисы Key Value No SQL СУБД на properties p.s. Кто может утверждать, что properties это не Key-Value СУБД ? Кто будет утверждать. что properties это не No SQL ? Ну да... любой update рестарта требует, но зато код перекомпилировать не нужно! Прогресс! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 20:59 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev asv79 Да я уже переварил. Понял, что наши банки, самые продвинутые банки в мире! Только новые технологии! Микросервисы Key Value No SQL СУБД на properties p.s. Кто может утверждать, что properties это не Key-Value СУБД ? Кто будет утверждать. что properties это не No SQL ? Ну да... любой update рестарта требует, но зато код перекомпилировать не нужно! Прогресс! лень ну ты чего)у тебя все смешалось в кучу - кони ,люди))) давай по порядку у нас нет никаких кей -велью и пропертей,на которые у тебя так полыхнуло знатно( нет конечно есть,но самые обычные,как и везде) а вот идея - выносить константы в проперти файлы - пришла не мне ,а блинову,о чем я тут и написал блинов ни к нам ,ни к нашему продукту отношения не имеет я лишь сюда перепостил ,то что он написал - мне показалось это интересной идеей в некоторых моментах ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 21:17 |
|
Stream API
|
|||
---|---|---|---|
#18+
а вот идея - выносить константы в проперти файлы - пришла не мне ,а блинову,о чем я тут и написал блинов ни к нам ,ни к нашему продукту отношения не имеет я лишь сюда перепостил ,то что он написал - мне показалось это интересной идеей в некоторых моментах Увы. Когда вам сказали приведите код, вы ответили матом. А про архитектуру, сами видите. Вам доходит через 5 страниц убеждений. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 23:03 |
|
Stream API
|
|||
---|---|---|---|
#18+
asv79 я лишь сюда перепостил ,то что он написал - мне показалось это интересной идеей в некоторых моментах эта идея - была актуальна лет много-много назад (боюсь больше, чем сейчас Блинову) т.к. проперти придумали значительно раньше, чем Блинову "пришла в голову эта мысль" а до этого, были ini файлы а до этого, были просто файлы а тут, блин, Блинову "пришла в голову мысль" asv79 сюда перепостил не надо в форум фотографии каждого забора перепостивать завтра кому нибудь в голову моча ударить .... не надо.... пожалейте форум note: кто такой Блинов, не знаю. В любом случае он мальчик - мне не интересен. Небось еще и без бороды и на Евровидение не выступает.... но в любом случае - мне не интересен. asv79 пропертей,на которые у тебя так полыхнуло знатно( нет конечно есть,но самые обычные,как и везде) )))) Я просто весь топик сдерживался. Т.к. в стримах не сильно разбираюсь. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 23:32 |
|
Stream API
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Я просто весь топик сдерживался. Т.к. в стримах не сильно разбираюсь. У него давно цель топиков чтобы "полыхнуло")))) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2020, 23:37 |
|
Stream API
|
|||
---|---|---|---|
#18+
Топик протух. Его надо закрыть чтоб не тхнул. И по случаю пятницы надо поднять новый. Топик свежих Stream-идей без Блинова. Плюсаните кто согласен. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2020, 15:14 |
|
Stream API
|
|||
---|---|---|---|
#18+
mayton, Не без блинова, а с обязательным кодом. Без него только шарписты себя хорошо чувствуют. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.03.2020, 16:47 |
|
|
start [/forum/topic.php?all=1&fid=59&tid=2120851]: |
0ms |
get settings: |
3ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
48ms |
get topic data: |
3ms |
get forum data: |
0ms |
get page messages: |
2643ms |
get tp. blocked users: |
0ms |
others: | 292ms |
total: | 2996ms |
0 / 0 |