Size: a a a

2021 January 26

PC

Pavel Churzin in pro.jvm
Denis Chikanov
Каст чего к чему?
Скажем у меня класс

class VersionImpl implements Version {
 
private int v;

VersionImpl(int v) {
  this.v = v;
}

compareTo(Version other) {
 return Integer.compare(v, ((VersionImpl)other) .v)
}
}


Прошу прощения за форматирование, с телефона не очень
источник

AK

Andrey Karepin in pro.jvm
Pavel Churzin
Скажем у меня класс

class VersionImpl implements Version {
 
private int v;

VersionImpl(int v) {
  this.v = v;
}

compareTo(Version other) {
 return Integer.compare(v, ((VersionImpl)other) .v)
}
}


Прошу прощения за форматирование, с телефона не очень
источник

DC

Denis Chikanov in pro.jvm
Pavel Churzin
Скажем у меня класс

class VersionImpl implements Version {
 
private int v;

VersionImpl(int v) {
  this.v = v;
}

compareTo(Version other) {
 return Integer.compare(v, ((VersionImpl)other) .v)
}
}


Прошу прощения за форматирование, с телефона не очень
Ыэээ, ну естественно в интерфейсе-то так не получится.
источник

PC

Pavel Churzin in pro.jvm
Ок, спасибо
источник

NG

Nikita Gryzlov in pro.jvm
Pavel Churzin
interface Version extends Comparable<Version>
Разве через Comparable<? extends Version> это не получится решить?
источник

PC

Pavel Churzin in pro.jvm
Nikita Gryzlov
Разве через Comparable<? extends Version> это не получится решить?
Version extends Comparable<? extends Version>
?

Так wildcard не поставить.
источник

А

Антон in pro.jvm
если мне в apache beam надо считать данные из гугловской BigQuery за какой-то промежуток времени. то мне нужно самому пагинацию делать или бим сам там все организует и не будет выгружать сразу все данные, а кусками?
в доках как-то про пагинацию ни слова https://beam.apache.org/documentation/io/built-in/google-bigquery/#reading-from-bigquery
источник

VP

Vladimir Petrakovich in pro.jvm
Nikita Gryzlov
Разве через Comparable<? extends Version> это не получится решить?
Если Version должен быть Comparable, то любая его реализация должна уметь сравнить себя с любой другой реализацией.
Эту "проблему" игрой с дженериками не решить.
источник

B

Balas in pro.jvm
Pavel Churzin
Скажем у меня класс

class VersionImpl implements Version {
 
private int v;

VersionImpl(int v) {
  this.v = v;
}

compareTo(Version other) {
 return Integer.compare(v, ((VersionImpl)other) .v)
}
}


Прошу прощения за форматирование, с телефона не очень
Так этот код упадёт если передать другую имплементацию, нужно будет добавлять тогда instanceof, что будет нарушать принцип в дальнейшем, решиться только методом в интерфейсе а-ля int getCompareValue
источник

А

Артём Курилко... in pro.jvm
возможно не сюда, но все же, вопрос по архитектуре. Я хочу сохранять у себя самые недавние новости в реальном времени из сайта coindesk.com (но у него нет вебхуки)
источник

А

Артём Курилко... in pro.jvm
Я думал над бесконечным циклом в котором есть одна переменная дата публикации, и если последняя новость имеет другую дату публикации тогда сохранять эту новость и обновить значение переменной даты публикации
источник

А

Артём Курилко... in pro.jvm
или это плохое архитектурное решение?
источник

A

Artjom Kalita in pro.jvm
Бесконечный цикл всегда звучит как не очень
источник

A

Artjom Kalita in pro.jvm
почему не настроить шедулер который дергает раз в какое-то время и сверяет время публикации
источник

А

Артём Курилко... in pro.jvm
Artjom Kalita
почему не настроить шедулер который дергает раз в какое-то время и сверяет время публикации
но это вроде тоже самое что и бесконечный цикл с задержкой
источник

PC

Pavel Churzin in pro.jvm
Balas
Так этот код упадёт если передать другую имплементацию, нужно будет добавлять тогда instanceof, что будет нарушать принцип в дальнейшем, решиться только методом в интерфейсе а-ля int getCompareValue
Согласен, вот думаю какие варианты. Не хочется просто инт использовать. Хочется ограничить типом Version. Может не стоит для этого интерфейс делать, а просто ограничиться value-классом с интом внутри...
источник

VP

Vladimir Petrakovich in pro.jvm
Pavel Churzin
Согласен, вот думаю какие варианты. Не хочется просто инт использовать. Хочется ограничить типом Version. Может не стоит для этого интерфейс делать, а просто ограничиться value-классом с интом внутри...
Так если у вас нет идей, какие ещё могут быть реализации кроме какой-то одной, то интерфейс и не нужен
источник

A

Alex in pro.jvm
я не знаю какая там логика дальше, но в теории можно предложить такую реализацию, если нужно следить за версиями каких-то сущностей
источник

A

Alex in pro.jvm
например есть Customer, Client, у них версии
источник

A

Alex in pro.jvm
тогда может быть интерфейс Version<T> extends Comparable<T> { int getVersion(); } что-то такое
источник