Неделю назад, 25-26 октября 2019 года, в Санкт-Петербурге прошла Java-конференция Joker 2019. Что на ней происходило, какие доклады были, что показалось интересным — обо всём этом дальше.
Рубрика «java» - 57
Joker 2019: триумф года
2019-11-03 в 14:25, admin, рубрики: java, jetbrains, jfrog, jpoint, jug.ru, oracle, spring, teavm, testcontainers, конференцииРеализация шлюза P2P операций перевода с карты на карту
2019-11-02 в 18:59, admin, рубрики: java, p2p-платежи, processing, платежные системы, платежный шлюзДля своего проекта мне потребовалось реализовать возможность перевода с карты на карту. Для официального подключения к интерфейсу любого банка необходимо заключение договора и выполнение ряда условий. Поэтому было принято решение сделать шлюз к публичной странице банка. Для этих целей были выбраны два банка Тинькофф и БИН Банк предоставляющие возможность перевода на “свои” карты без комиссии. Подробней о тарифах и ограничениях на перевод вы можете ознакомиться на соответствующих страницах банков. В этой статье краткое описание работы шлюза, реализующего функциональность приема платежей на карту.
Требуется реализовать перевод с любой карты на заранее выбранную карту, с поддержкой процедуры авторизации 3DSecure. 3DSecure это защищенный протокол авторизации пользователей для CNP-операций (без присутствия карты). Подробней вы можете почитать на специализированных сайтах, ниже на схеме приведена упрощенная схема, как это работает с точки зрения пользователя.
Привет! Представляю вашему вниманию перевод статьи «JavaFX Tutorial: Getting started» автора Vojtech Ruzicka.
Как настроить и начать работать с JavaFX, с помощью Maven, Gradle или JavaFX SDK.
Читать полностью »
Внедряй, масштабируй: опыт применения автотестов в ВТБ
2019-10-31 в 12:57, admin, рубрики: cucumber, java, maven, selenoid, Блог компании ВТБ, втб, тестирование, Тестирование IT-систем, финансы в ITНаше подразделение создает полностью автоматические пайплайны для вывода новых версий приложений в прод-среду. Разумеется, для этого требуются автоматизированные функциональные тесты. Под катом — история о том, как, начав с тестирования в один поток на локальной машине, мы дошли до многопоточного запуска автотестов на Selenoid в пайплайне сборки с Allure-отчетом на GitLab pages и в итоге получили крутой инструмент для автоматизации, который смогут использовать будущие команды.
Чем нам запомнилась последняя JokerConf
2019-10-31 в 8:01, admin, рубрики: funcorp, java, joker 2019, jokerconf, jugru, Блог компании FunCorp, конференцииНа прошлой неделе в Санкт-Петербурге прошла международная Java-конференция Joker. Мы попросили наших ребят, которые её посетили, рассказать немного об организации и самых интересных, по их мнению, выступлениях. Кто-то отметил самые хайповые и весёлые, кто-то — самые актуальные и полезные. Впрочем, читайте об этом «из первых рук».

План подготовки к собеседованию на позицию Java разработчика
2019-10-30 в 17:04, admin, рубрики: java, интервью, карьера, Карьера в IT-индустрии, подготовка, собеседованиеКаждый раз, готовясь к собеседованиям на позицию «Java разработчик», я понимаю, что мне бы очень помог конкретный план подготовки. Поэтому все свои записи, накопившиеся в ходе прохождения собеседований, было решено структурировать и опубликовать. Надеюсь, кому-то этот план будет полезен.
И я намеренно не пишу, для кого предназначен этот план подготовки: для senior, middle или junior разработчика — все зависит от конкретной вакансии и от требований работодателя. Поэтому опирайтесь на этот план, но фильтруйте и в то же время не воспринимайте его как исчерпывающее руководство.
- Java core. Здесь можно ориентироваться например на книгу «OCP: Oracle Certified Professional Java SE 8 Programmer II Study Guide: Exam 1Z0-809» для подготовки к Java сертификации уровня Professional. Есть подобная книга «OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808» для уровня Associate — на нее тоже можно взглянуть. Пройдитесь по оглавлению и выделите для себя, что можно повторить. Конечно же, не стоит пускаться во все тяжкие и читать книгу от корки до корки — многие темы из этой книги можно обойти стороной, например форматирование дат. Выделите самое основное. Например для меня это были следующие темы: коллекции (стандартные вопросы «Как устроена HashMap?» или «Чем отличается LinkedList от ArrayList?» все также часто задают на собеседованиях), дженерики, функциональные интерфейсы, многопоточность (тут тоже фильтруйте — не нужны вам cyclic barrier и fork join framework).
Также не забывайте проецировать знания на свой опыт. Например, когда вам приходилось использовать многопоточное программирование? Какие проблемы вы решали? Какие блокировки использовали? - Многопоточность. Читать полностью »
Android Camera2 API от чайника, часть 3. Media Codec и стрим видео по UDP
2019-10-28 в 9:22, admin, рубрики: Camera API, camera2 api, Camera2 API Android, Google API, guide Camera2 API Android, java, live streaming to JAVA, live streaming to VLC, MediaCodec Camera2 API Android, tutorial Camera2 API, VLC udp streaming, пример работы с камерой Android, Программирование, работа с камерой в Android, Разработка под android, руководство по Camera2 API Android, Электроника для начинающихИтак, со съемками фоточек и записью видео при помощи Camera2 API мы вроде бы, разобрались. Осталось только научиться передавать видеопоток c Android устройства страждущим получателям извне. Конечной целью, как уже неоднократно ранее говорилось, является интеллектуализация роботелеги — ставим на неё смартфон и так сказать, превращаем обезьяну в человека. В этом нам поможет Media Codec. И конечно, новое Camera2 API.

Кому интересно, прошу под кат.
Читать полностью »
Прощай HTML, привет QML
2019-10-27 в 13:22, admin, рубрики: c++, html, java, QML, qt, spring boot, web, Разработка веб-сайтов
Как можно создать web приложение без использования HTML? Для этого нам понадобится: новый браузер, QML и back-end на Java.
SonarQube и IntelliJ IDEA: правильная интеграция
2019-10-25 в 11:34, admin, рубрики: checkstyle, fingbugs, IDE, idea, java, pmd, sonarlint, sonarqube, SpotBugs, static code analysis, static code analyzer, Блог компании НПО «Криста»
SonarQube — отличный инструмент для внедрения статического анализа кода в процесс разработки ПО. Он поддерживает как используемую у нас в компании Java, так и большое количество других языков программирования.
На данный момент этот инструмент плотно вошёл в нашу жизнь, следя за единым стилем кода и уберегая от самых разных видов ошибок. Поиск ошибок происходит при сборке на CI или перед принятием pull request в версионное хранилище. Все найденные ошибки отображаются в Web-интерфейсе, где можно изучать их и управлять ими.
Однако беда в том, что удобный Web-интерфейс не означает удобство по устранению найденных замечаний в коде проекта. Для того, чтобы внести исправление, приходится сначала смотреть, в каком именно файле это замечание обнаружено, потом открывать этот файл и только затем вносить исправление. Так-же это приводит к тому, что разработчик узнает о проблеме с очень большим отставанием (иногда анализ в SonarQube может занимать десятки минут), что не способствует поддержанию чистоты кода.
Для того, чтобы облегчить жизнь разработчикам нашей компании, использующим IntelliJ IDEA, я составил инструкцию. А в дальнейшем понял, что она может быть полезной более широкому кругу специалистов, и решил выложить её в публичный доступ.
Как мы пишем микросервисы и почему не делаем этого быстро
2019-10-25 в 11:04, admin, рубрики: Erlang/OTP, java, RBKmoney, микросервисы, платежные системы, Разработка под e-commerce, распределенные системы
Истории по распиливанию монолита часто похожи одна на другую. Был у команды здоровенный неповоротливый монолит, решили его распилить на россыпь правильных и шустреньких микросервисов, все стало круто. Отличаются истории лишь степенью ужаса “до”, радости “после” и рядом вторичных характеристик.
У нас в RBK.money тоже микросервисы. Но пришли мы к ним немного не так, как большинство. У нас все было даже хуже монолита — у нас на старте просто все было хреново.
Под катом о том, как мы, собственно, и строили микросервисы, почему OpenSource — это не только здорово в принципе, но еще и работает как мотивационная составляющая писать хороший код.



