• Как написать generic фабрику?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Если я правильно понял задачу то что то типа такого.
    public interface Handler<T> {
      Object handle(T obj);
    }
    class FordHandler implements Handler<Ford>{...}
    /// в фабрику
    Map<Class<T>, Handler<T>> registry = new HashMap<>();
    public void registerHandler(Class<T> carType, Class<? extends Handler> handlerType) {
        registry.put(carType, handlerType);
    }
    public <T> Handler<T> getHandler(Class<T> clazz) {
      return registry.get(clazz).newInstance();
    }
    ///наполняешь фабрику
    factory.registerHandler(Ford.class, FordHandler.class);
    factory.registerHandler(Audi.class, AudiHandler.class);
    ///
    List<Car> carList;
    List<Object> result;
    carList.forEach((car) -> {
        result.add(factory.getHandler(car.getClass()).handle(car));
    })
    Ответ написан
    Комментировать
  • С помощью чего можно организовать локальную аудио конференцию?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Через pulseaudio можно попробовать все завернуть.
    Ответ написан
    Комментировать
  • Как повысить отзывчивость обработки нажатий на клавиши навигации?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    %тролейбус_из_буханки_хлеба.жпг%
    Javafx совсем для другого сделана, в т.ч. и реализация 3д в ней. В играх все максимально предсказуемо реализовано, простой цикл в котором все крайне последовательно происходит и отрезано абсолютно все что ненужно.
    Конкретно тут надо сначала читать как работает цикл в javafx, что за чем следует и т.д.. Дальше в любом случае javafx тащит за собой тонны абсолютно ненужного кода. Кроме того для правильной реализации всего и вся нужно учитывать дельту времени от которой пляшет вообще все в реалтайме. В общем я даже не знаю как это описать. Ну попробуйте представить что вы забиваете гвозди микроскопом, а теперь что гвоздей надо забить тысяч пять. Можно? можно! Удобно? не совсем. Практично? абсолютно нет.

    В общем если хотите в реалтайм игры то смотрите на jmonkey engine, libgdx, если по хардкорнее то JOGL, LWJGL.

    PS, как вариант попробуйте рисовать в canvas, но опять же львиную долю проблем это не решит никак. Если прям игра и javafx то что то более размеренное но не реалтайм где вот такие проблемы будет видно.
    Ответ написан
  • Как правильно сделать маршрут к удалённой сети по VPN?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    В обоих тикак прописать полное разрешение хождения трафика в фаирволах между подсетями дом\работа. Так же на обоих прописать маршруты до подсетей и где их искать.
    Ответ написан
  • Возможно ли десктопное приложение на java подключить к онлайн базе данных?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Теперь задайте себе пару вопросов:
    1) При чем тут javafx и каким боком она связано с сутью вопроса?
    2) У вас есть рабочее приложение которое работает с БД, Логично что приложение ваше и вы его писали, следовательно гдето в таком явном месте есть самая обычная строка подключения к БД в которой написано "localhost". Так вот это не намекает на место с которого стоило начать и попробовать вписать тут ссылку удаленного сервера?
    3) Вы хотя бы думали о абсурдности и глупости своего вопроса?
    Ответ написан
    Комментировать
  • Как получают координаты faces?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    А что тут непонятно, даже коментарии все объясняют. А в первоисточнике так вообще с рисуночками все есть.
    Ответ написан
  • Чем писать действия пользователя в Linux?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Если надо скриншотами то вперед писать скрипт, тут ничего сложного.
    Другой вопрос что за данные такие, если это некая программа то может порезать права пользователя и не загружая dm сразу запускать эту программу?
    Если же dm нужен то можно сделать отдельного пользователя для работы этой программы и связанных с ней каталогов. У юзверя ярлык на запуск проги, сам скрипт запуска только на чтение и выполнение, текущему пользователю полный запрет на rwx в каталоге програмки.

    Логи включить можно, их много разных и в каждой отдельной программе. В общем поподробнее бы что нужно уберечь от вынеса, и собственно как подрузамевается вынес, есть ли на виртуалке выход в инет, можно ли пробросить usb и т.д.
    Ответ написан
  • Может ли коммутатор/роутер mikrotik работать по 802.1x или MAC-based Access Control(MAC) для локальных клиентов?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Эта фича уже лет 5 у них висит если не больше. С огромной долей вероятности значит ее так и не появилось. Т.е. в r-os я ее не наблюдал.
    НО возможно что всеже эта фича есть именно в sw-os , вот ее я очень давно не щупал а тут у вас оная и будет. Нужен человек с железкой на sw-os и уже он точно скажет есть или нет там.
    Ответ написан
    Комментировать
  • Есть ли хорошие, грамотные материалы по Asterisk?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Как такового общего нет в принципе, от версии к версии он довольно сильно меняется. Но для възда в тему:
    1) Обязательно стоит начать с прочтения "Asterisk: будущее телефонии", да она устарела но стоит начинать именно с нее т.к. захватите процентов 60-70% всего необходимого. Возможно даже и остановитесь на версиях подходящих под книгу.
    2) Документация к каждой версии.

    Всякие видокурсы\туториалы это лютая хрень. Прочтите книгу, станет понятна документация а дальше уже ничего и не надо. Если что то будет надо сделать то сядете и сделаете без подсказок.

    PS вспомнил еще момент. Ни одна книга и ни один туториал не даст грамотного понимания о всяких связных вещах типа dhcp\dns\tftp\приколах сети и связанного с ними, которые не обязательны но могут быть очень важны, по ним уже любая хорошая книжка по общему устройству unix\linux либо для конкретного диструбутива bsd like\debian\centos-rhel и т.д. . В каждой это отличается в т.ч. тонкости сборки астериска из изходников и особенностей.
    Ответ написан
    Комментировать
  • Где брать бесплатные модели для Unreal Engine?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Тут как в поговорке "Чай с сахаром либо руки с мылом." Ищите просто бесплатные(а если еще и на игре заработать хотите то обязательно бесплатную для комерческого использования) модели и конвертируйте с адаптацией под ue4.
    Если и это сложно то довольствуйтесь теми которые вообще есть под ue4 и бесплатные.
    А вот если нужно что то конкретное то делайте сами\покупайте\заказывайте на фрилансе.
    Ответ написан
    1 комментарий
  • Как зарабатывают мессенджеры?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    По разному. Если брать например WhatsUp то они зарабатывают на продаже стикеров и т.д. К этому продажа бизнес аккаунтов, показ рекламы и т.д.
    Ответ написан
    Комментировать
  • Сколько нужно swap разделов для нескольких Linux систем?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Я могу предложить другие варианты. ОС одна но вот варианты:
    -в арчеподобных дистрах есть крутая штука под названием ramroot. Не знаю точно но уверен что подобное есть в других дистрибутивах. Штука крайне удобная для огромного числа ситуаций.
    -есть такая штука как overlayfs. Такая же крутая как и первый вариант и даже в некоторых ситуациях круче и незаменима.
    -есть такая фс как btrfs или zfs, тоже крутые но уже еще круче и нужно быть в теме.
    -есть chroot, для многих ситуаций подходит.
    -swap вообще не особо и нужен если уверены что оперативки хватит
    -swap может быть не только разделом но и файлом как в windows!
    -как выше писали, виртуалки
    -еще уйма вариантов но не вспомню все.

    В общем может почитайте и выбирайте что Вам больше подойдет для конкретно вашей задачи, а ставить несколько систем ну это на мой взгляд совсем край, линукс очень гибок и он легко подстраивается под нужды.
    Ответ написан
    Комментировать
  • Как сравнить данные объектов в двух ArrayList?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    В вашем случае все просто, но это не совсем правильно т.к. сложность вырастает в обсчетах.
    Нужен просто вложенный цикл.
    Цикл астероид_итератор астероиды{
    цикл монета_итератор монеты{
    если монета_итератор.колизия(астероид_итератор.coords) удалить обоих
    }
    }

    Но опять же это не совсем правильно и если объектов много то вообще неприменимо так вот в лоб.
    Ответ написан
  • Как анимировать рандомный символ в label в JavaFX приложении?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Готовое врядли что то есть но сделать такое не проблема. Пишите свой компонент. Логика предельно простая и реализовать можно несколькими способами. Честным но тяжелым или легким но обманом
    Тяжелый по честному крутить массив, по легкому заранее отрендренную анимацию пускать.
    Ответ написан
  • CommFort, есть ли альтернатива?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Jabber\xmpp, реализаций серверов тьма, клиентов тьма вообще под любую платформу. Расширяется под нужды так же довольно просто.
    Еще можно развернуть asterisk+sip message. Но это такое.
    Ответ написан
    1 комментарий
  • Выбор и разработка сервера для игр типа 2D стратегий на android( клиентская часть на unity)?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    У вас уже самая простая задача раз нет реалтайма. Тупо пихаете любым удобным способом запрос на сервер и получаете результат, тут даже обычного http\post запроса хватит с сериализацией в удобный вам формат(к примеру json если размеры существенные то за gzипеть его). В роли бэкенда даже пышка(php) прекрасно справится.
    Ответ написан
    Комментировать
  • Java реализация метода?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Дженерики.
    Ответ написан
    Комментировать
  • Как использовать Vulkan API для собственного движка?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Раз вопрос поставлен таким боком то правильное решение будет не использовать вулкан. Очень вероятно что и чистый opengl поставит в ступор поэтому ищите готовые библиотеки по opengl в которых все максимально абстрагировано и завернуто в более удобный api.
    Ответ написан
    Комментировать
  • Как упростить написанный код?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Легко,
    во первых как отвечал в прошлом вопросе НЕ ИСПОЛЬЗУЙ Scene Builder, пиши все руками можно даже без fxml.
    во вторых оберни весь кошмар с анимацией и кнопочками в отдельный класс компонент, код уже сократится в разы. Деактивацию\активацию других элементов также легко уместить до единого места путем получения у родительского контейнера всех дочерних и выставления в них setDisable
    Ответ написан
    Комментировать