Size: a a a

2020 December 14

AB

Andrey Belyaev in pro.jvm
Vladimir Alexeev
Всем спасибо за ответы. Действительно, идея с большей вероятностью нецелесообразная.
А кстати, расскажите, насколько подробно у вас все задокументировано? 😊
источник

VA

Vladimir Alexeev in pro.jvm
Andrey Belyaev
А кстати, расскажите, насколько подробно у вас все задокументировано? 😊
Вообще никак. Нет ни документации, ни тестов, никакой справочной информации. Проект писался в основном «на коленке». Качество кода и схемы БД соответствующее.
источник

AB

Andrey Belyaev in pro.jvm
Vladimir Alexeev
Вообще никак. Нет ни документации, ни тестов, никакой справочной информации. Проект писался в основном «на коленке». Качество кода и схемы БД соответствующее.
@Loljeene Или это не кровавай тырпрайз, а так, полукровка, или одно из двух :-)
источник

b

borsch in pro.jvm
источник

В

Влад in pro.jvm
Andrey Belyaev
А кстати, расскажите, насколько подробно у вас все задокументировано? 😊
А почему на вашей аватарке, Openjdk символ прикрывает хозяйство черным квадратом?
источник

L

Loljeene in pro.jvm
Andrey Belyaev
@Loljeene Или это не кровавай тырпрайз, а так, полукровка, или одно из двух :-)
:) это грустно на самом деле. Я конечно не архитектор, но я бы задумался над этой ситуацией. Просто у такого проекта зачастую нет будущего. Особенно если команда начнет уходить. А вместе с ней и знания
источник

AB

Andrey Belyaev in pro.jvm
Влад
А почему на вашей аватарке, Openjdk символ прикрывает хозяйство черным квадратом?
Это вопрос к JUG.RU - это их баннер
источник

AB

Andrey Belyaev in pro.jvm
И, кстати, это Duke - он не только про OpenJDK. Ему уже очень много лет: https://www.oracle.com/java/duke.html#:~:text=Back%20in%20the%20early%20days,a%20cartoon%20character%20named%20Duke.
источник

AB

Andrey Belyaev in pro.jvm
Влад
А почему на вашей аватарке, Openjdk символ прикрывает хозяйство черным квадратом?
Кстати, вот более полная версия этого баннера: https://jug.ru/about-us/ Если вдруг что 😊
источник

A

Artjom Kalita in pro.jvm
Loljeene
Про 42, вообще такой код просто не пройдет ревью. Даже на самом жутком проекте
Код может пройти код ревью если код ревью нету =)
источник

AB

Andrey Belyaev in pro.jvm
Artjom Kalita
Код может пройти код ревью если код ревью нету =)
Как можно пройти что-то, чего нет? 😁
источник

В

Влад in pro.jvm
Andrey Belyaev
И, кстати, это Duke - он не только про OpenJDK. Ему уже очень много лет: https://www.oracle.com/java/duke.html#:~:text=Back%20in%20the%20early%20days,a%20cartoon%20character%20named%20Duke.
Cпасибо за информацию. Встречал периодически, не знал как его называют
источник

A

Artjom Kalita in pro.jvm
Loljeene
:) это грустно на самом деле. Я конечно не архитектор, но я бы задумался над этой ситуацией. Просто у такого проекта зачастую нет будущего. Особенно если команда начнет уходить. А вместе с ней и знания
А вот это уже риски бизнеса
источник

E

Evgeniy ♎️ in pro.jvm
Loljeene
Про 42, вообще такой код просто не пройдет ревью. Даже на самом жутком проекте
пфффф....легко, потому что как пример из другой системы вам приходит массив...ну я хз, например акций для пользователя
и скажем для акции с id=42 вам не надо писать какоенибудь соообщение или например, надо написать что-то дополнительной
в итоге это 42 у вас гдето всё равно будет вбито, константой,настройкой...массивом) ведь вы умный и сделали с заделом на будущее, ведь бизнес уже завтра после выкатки в прод прибежит и скажет что они забыли что ещё одна почти такая же акция есть
источник

L

Loljeene in pro.jvm
Evgeniy ♎️
пфффф....легко, потому что как пример из другой системы вам приходит массив...ну я хз, например акций для пользователя
и скажем для акции с id=42 вам не надо писать какоенибудь соообщение или например, надо написать что-то дополнительной
в итоге это 42 у вас гдето всё равно будет вбито, константой,настройкой...массивом) ведь вы умный и сделали с заделом на будущее, ведь бизнес уже завтра после выкатки в прод прибежит и скажет что они забыли что ещё одна почти такая же акция есть
в чем проблема не писать if (id==42) а вынести в метод, с читающимся названием
Плюс внести в доку (но это у кого как принято)
источник

L

Loljeene in pro.jvm
// WARNING - before changing this method - check test case from ***
       // previous Diana refactoring caused blocker
Иван Иваныч в действии (
источник

E

Evgeniy ♎️ in pro.jvm
Loljeene
в чем проблема не писать if (id==42) а вынести в метод, с читающимся названием
Плюс внести в доку (но это у кого как принято)
аа..вам не нравится кокнкретно if (id=42)..ну это конечно дичь бесспорно

я просто к тому что гдето вы всёравно напишите blabla=42 (и именно там надо сделать явный комментарий почему 42, а не 68), о чём и написал выше)
источник

ВК

Владимир Краснов... in pro.jvm
Всем привет, прошу совет, есть сервис отчетов в этом сервисе есть метод:
public Report getReportByName(String reportName) {
       return reportRepository.findOneByName(reportName)
               .orElseThrow(() -> new EntityNotFoundException("Report with name " + reportName + " was not found"));
   }
Вызывающему коду нужно из отчета получить его id для дальнейшей работы.
Правильно ли в случае отсутствия отчета в базе выкидывать эксепшен?
Или сервис должен в этом случае вернуть вызывающему коду null обернутый в Optional?
источник

AB

Andrey Belyaev in pro.jvm
Владимир Краснов
Всем привет, прошу совет, есть сервис отчетов в этом сервисе есть метод:
public Report getReportByName(String reportName) {
       return reportRepository.findOneByName(reportName)
               .orElseThrow(() -> new EntityNotFoundException("Report with name " + reportName + " was not found"));
   }
Вызывающему коду нужно из отчета получить его id для дальнейшей работы.
Правильно ли в случае отсутствия отчета в базе выкидывать эксепшен?
Или сервис должен в этом случае вернуть вызывающему коду null обернутый в Optional?
Как договоритесь в команде и как у вас стандарты кода прописаны. Можете возвращать Optional<Report> из метода и пусть тот, кому отчет нужен, с ним и разбирается.
Можете кидать исключение, тогда лучше явно договориться, что все поиски в базе данных у вас кидают исключение, если данных нет.
Можете возвращать null, тогда тот, кому нужен отчет, должен его обрабатывать

Я бы, наверное, возвращал Optional, а в вызывающем коде писал бы optionalReport.ifPresent(//запустить отчет)

Но, ещё раз повторю, лучше договориться в команде о таких ситуациях и занетсти в стандарты кода
источник

YA

Yuriy Artamonov in pro.jvm
А если ещё null результаты всегда сопровожать @Nullable (плюс использовать @NotNull или лепить на классы @NonNullApi ), то IDE вам поможет не ошибаться.
источник