|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton dakeiras Код: java 1.
Не понимаю проблемы. Сделай себе функцию и пользуйся. Код: java 1.
да. Так и сделаю. Но это получается уже API над API. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 00:49 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
dakeiras mayton пропущено... Не понимаю проблемы. Сделай себе функцию и пользуйся. Код: java 1.
да. Так и сделаю. Но это получается уже API над API. Я последние 20 лет этим и занят. Делаю API над API. А ты как хотел? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 00:54 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
dakeiras Код: java 1. 2. 3. 4. 5. 6. 7.
Я посмотрел. Это внутренние приватные методы. Тебе их вызывать не надо. Ты же знаешь что такое инкапсуляция? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 01:02 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton dakeiras Код: java 1. 2. 3. 4. 5. 6. 7.
Я посмотрел. Это внутренние приватные методы. Тебе их вызывать не надо. Ты же знаешь что такое инкапсуляция? так и у меня это внутренние методы. Это не отменяет кривизны. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 11:07 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
Во что ты предлагаешь это переименовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 11:35 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton Во что ты предлагаешь это переименовать? Тут проблема не переименовании. А в интерфейсах и null. И ещё большая проблема в интерфейсах самого Slf4j. В общем криво спроектировано да так что вообще никак это не исправить сохраняя обратную совместимость. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 13:11 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
dakeiras mayton Во что ты предлагаешь это переименовать? Тут проблема не переименовании. А в интерфейсах и null. И ещё большая проблема в интерфейсах самого Slf4j. В общем криво спроектировано да так что вообще никак это не исправить сохраняя обратную совместимость. Подожди подожди! Ты меня совсем запутал. То мы обсуждали LogBack. То ты говоришь про null в интерфейсах. Это баг? Он существует в их bug-tracker? И ты теперь переключаешся на Slf4j, который вообще не логгер а просто некий адаптер или мост сразу ко ВСЕМ логгерам. В этом его идея. Может ты не понял идею для чего создавался Slf4j? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 13:27 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
Ох, какие тут дискуссии насчет кода. А мой говнокод безработного недоджуна-trainee уровня сможете оценить, как допилю? Проблему циклических зависимостей решил путем того, что из всяких handler'ов теперь возвращаю значение/сообщение, которое отправляется уже в главный класс бота. Т.о. нет необходимости инжектить бота в каждый обработчик. ИМХО, стало меньше гибкости, но в принципе терпимо. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:15 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton dakeiras пропущено... Тут проблема не переименовании. А в интерфейсах и null. И ещё большая проблема в интерфейсах самого Slf4j. В общем криво спроектировано да так что вообще никак это не исправить сохраняя обратную совместимость. Подожди подожди! Ты меня совсем запутал. То мы обсуждали LogBack. То ты говоришь про null в интерфейсах. Это баг? Он существует в их bug-tracker? И ты теперь переключаешся на Slf4j, который вообще не логгер а просто некий адаптер или мост сразу ко ВСЕМ логгерам. В этом его идея. Может ты не понял идею для чего создавался Slf4j? Проблема в Slf4j: Throwable можно передать только без других аргументов: (org.slf4j.Logger) Код: java 1.
Похоже это попытались обойти в Logback расчитывая что сработает следующее: (ch.qos.logback.classic.Logger) Код: java 1. 2. 3. 4. 5. 6.
(иначе я не знаю как объяснить этот загадочный код) Но не сработало. Потому что в Яве это так не работает! :) Тогда эти гениальные разработчики сделали что? Правильно. Они сделали следующее: (ch.qos.logback.classic.spi.LoggingEvent) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Типа если последний аргумент в массиве Throwable - то его обрабатывать как Throwable. Это систематические проблемы дизайна, которые даже не пытаются устранять или обсуждать. Ну и как результат - непонятный код\интерфейсы и наименования методов. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:17 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
Это возможно. Только ради всех святых (Тьюринга и Дейкстры) не надо сюда печатать простыни. Кидай ссылку в гитхаб и кто-то посмотрит. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:18 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
miroooha Ох, какие тут дискуссии насчет кода. А мой говнокод безработного недоджуна-trainee уровня сможете оценить, как допилю? Проблему циклических зависимостей решил путем того, что из всяких handler'ов теперь возвращаю значение/сообщение, которое отправляется уже в главный класс бота. Т.о. нет необходимости инжектить бота в каждый обработчик. ИМХО, стало меньше гибкости, но в принципе терпимо. Ты уже оценил его (и правильным образом). У тебя проблема не с кодом, а с того что ты не набрав опыта Core Java сразу делаешь на Spring. Это вызовет неправильные привычки. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:20 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton Это возможно. Только ради всех святых (Тьюринга и Дейкстры) не надо сюда печатать простыни. Кидай ссылку в гитхаб и кто-то посмотрит. Нет проблем, я с гитом дружу :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:20 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
dakeiras miroooha Ох, какие тут дискуссии насчет кода. А мой говнокод безработного недоджуна-trainee уровня сможете оценить, как допилю? Проблему циклических зависимостей решил путем того, что из всяких handler'ов теперь возвращаю значение/сообщение, которое отправляется уже в главный класс бота. Т.о. нет необходимости инжектить бота в каждый обработчик. ИМХО, стало меньше гибкости, но в принципе терпимо. Ты уже оценил его (и правильным образом). У тебя проблема не с кодом, а с того что ты не набрав опыта Core Java сразу делаешь на Spring. Это вызовет неправильные привычки. Не соглашусь. У меня нет опыта в построении архитектуры приложения, потому что не было проектов. А Java Core я изучал прошлой осенью и этой зимой и чувствую себя там довольно комфортно (за исключением реальной многопоточки типа Fork Join Pool'a) для своего уровня. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:23 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
miroooha mayton Это возможно. Только ради всех святых (Тьюринга и Дейкстры) не надо сюда печатать простыни. Кидай ссылку в гитхаб и кто-то посмотрит. Нет проблем, я с гитом дружу :) Где ссылка? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:29 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
авторFork Join Pool Что? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:29 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
miroooha dakeiras пропущено... Ты уже оценил его (и правильным образом). У тебя проблема не с кодом, а с того что ты не набрав опыта Core Java сразу делаешь на Spring. Это вызовет неправильные привычки. Это и хорошо. Представь каких дров ты там наломаешь если тебе дать задание с взаимодейтсвием более чем 1 потока. И модульные тесты кстати не доказывают правильность мультипоточи. Вообще не доказывают даже на кейсах. И все равно синьоры за тебя будут все переделывать поэтому давать тебе многопоточное задание нет смысла. Поживи спокойно так. Реальное понимание многопоточки только с опытом приходит. Т.к. кроме Java надо еще копнуть в архитектуры железа. Без этого просто не будет понимания. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:32 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton miroooha пропущено... (за исключением реальной многопоточки типа Fork Join Pool'a) для своего уровня. Это и хорошо. Представь каких дров ты там наломаешь если тебе дать задание с взаимодейтсвием более чем 1 потока. И модульные тесты кстати не доказывают правильность мультипоточи. Вообще не доказывают даже на кейсах. И все равно синьоры за тебя будут все переделывать поэтому давать тебе многопоточное задание нет смысла. Поживи спокойно так. Реальное понимание многопоточки только с опытом приходит. Т.к. кроме Java надо еще копнуть в архитектуры железа. Без этого просто не будет понимания. с многопоточности надо начинать. Это самые фундаментальные основы любого программирования, особенно веб приложений. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:34 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
dakeiras mayton пропущено... Это и хорошо. Представь каких дров ты там наломаешь если тебе дать задание с взаимодейтсвием более чем 1 потока. И модульные тесты кстати не доказывают правильность мультипоточи. Вообще не доказывают даже на кейсах. И все равно синьоры за тебя будут все переделывать поэтому давать тебе многопоточное задание нет смысла. Поживи спокойно так. Реальное понимание многопоточки только с опытом приходит. Т.к. кроме Java надо еще копнуть в архитектуры железа. Без этого просто не будет понимания. с многопоточности надо начинать. Это самые фундаментальные основы любого программирования, особенно веб приложений. А ты попробуй на джунские вопросы по мультипоточке ответить. Там будет сразу анекдот про то как 1 глупец 100 мудрецов закопает. И спор про указатели С++ на массивы покажется просто детским мультиком по сравнению с мультипоточкой. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:41 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
dakeiras с многопоточности надо начинать. Это самые фундаментальные основы любого программирования, особенно веб приложений. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:45 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton miroooha пропущено... Нет проблем, я с гитом дружу :) Где ссылка? Позже на днях скину сюда, там надо допилить ещё код. dakeiras авторFork Join Pool Что? Что? Ну вот, из первого попавшегося поста на stackoverflow: - ExecutorService имеет общую очередь задач и некоторое количество потоков, которые забирают по очереди таски и выполняют их. - ForkJoinPool имеет некоторое количество потоков, но при этом еще имеет очередь тасков для каждого потока. Поток в процессе работы может дробить задачу на несколько тасков, одну он добавляет к себе в очередь а другую выполняет и это может рекурсивно повторяться. Если другой поток опустошил свою очередь, то он может взять задачи у другого потока, с конца очереди. Описанный механизм называется work-stealing. Это и является ключевым моментом различающим данные thread-pool'ы. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:49 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
Благослави Господь стековерфлоу. И зачем нам кастомер еще доллары платит? Пускай пишет туда вопросы и ИИ ему выдает готовые артифакты.... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 14:51 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
Андрей Панфилов dakeiras с многопоточности надо начинать. Это самые фундаментальные основы любого программирования, особенно веб приложений. хорошо что помните. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 15:44 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
miroooha mayton пропущено... Где ссылка? Позже на днях скину сюда, там надо допилить ещё код. dakeiras пропущено... Что? Что? Ну вот, из первого попавшегося поста на stackoverflow: - ExecutorService имеет общую очередь задач и некоторое количество потоков, которые забирают по очереди таски и выполняют их. - ForkJoinPool имеет некоторое количество потоков, но при этом еще имеет очередь тасков для каждого потока. Поток в процессе работы может дробить задачу на несколько тасков, одну он добавляет к себе в очередь а другую выполняет и это может рекурсивно повторяться. Если другой поток опустошил свою очередь, то он может взять задачи у другого потока, с конца очереди. Описанный механизм называется work-stealing. Это и является ключевым моментом различающим данные thread-pool'ы. Round robin что-ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 15:44 |
|
Не получается поднять бота на Spring Boot
|
|||
---|---|---|---|
#18+
mayton Кидай ссылку в гитхаб и кто-то посмотрит. Собственно, решил не затягивать. Вот сам проект: https://github.com/vonoriMMM/SpringBot-test Где-то на время оставил заглушки (типо return null), буду дорабатывать. Если кто-то посмотрит, буду благодарен за конструктивную критику. Это первый небольшой, но полноценный проект (до этого были только задачки javarush/codewars/leetcode) в моей пока еще не начавшейся карьере. И вообще что-то первое с использованием Spring'a. Можно улучшать и увеличивать функциональность, потенциал есть, но и сейчас это полностью работающая версия. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2020, 22:27 |
|
|
start [/forum/topic.php?fid=59&msg=39971340&tid=2120769]: |
0ms |
get settings: |
8ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
30ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
417ms |
get tp. blocked users: |
1ms |
others: | 302ms |
total: | 769ms |
0 / 0 |