Есть ли в Android Studio 3.0 что-то революционно новое? В чем основной недостаток Java 9 и каковы плюсы Kotlin? Про это, а также про профайлеры, компиляторы, IoT и многое другое — в нашем интервью с Денисом Неклюдовым — первым разработчиком из России, получившим статус GDE.
Рубрика «java» - 137
Android Oreo: чего ждать разработчикам?
2017-11-08 в 9:47, admin, рубрики: android, Android Oreo, android profiler, android studio, android studio 3.0, instant apps, java, kotlin, mobius, mobius2017, mobius2017moscow, Блог компании JUG.ru Group, Разработка под androidПошаговое руководство работы с Antlr4 с Maven проектом для Java через Intellij Idea
2017-11-07 в 8:31, admin, рубрики: antlr, intellij idea, java, java 8, maven, oracle, системы сборкиANTLR — это генератор парсеров, который позволяет создавать парсер по описанию грамматики на одном из основных языков программирования. Он сам написан на java и прекрасно работает с Java.
Пошаговое руководство:
1) Поставить Oracle Java JDK и Intellij Idea, (можно пропустить этот шаг, если они уже поставлены), и запустить Intellij Idea
2) File-Setting-Plugins
Generic исключения в лямбда-функциях
2017-11-07 в 6:26, admin, рубрики: exception, generic, java, stream api, обработка исключений, функциональные интерфейсыКак известно из функциональных интерфейсов в Stream API нельзя выбрасывать контролируемые исключения. Если по каким-то причинам это необходимо (например, работа с файлами, базами данных или по сети), приходится оборачивать их в RuntimeException. Это неплохо работает если ошибки игнорируются, но если их необходимо обрабатывать, то код получается громоздкий и трудночитаемый. Я заинтересовался можно ли объявлять интерфейсы и методы с generic исключениями и неожиданно для себя узнал, что можно.
Зададим такой функциональный интерфейс, от стандартного интерфейса Function<A, B> он отличается только наличием третьего generic-типа для бросаемого исключения.
public interface ThrowableFunction<A, B, T extends Throwable>{
B apply(A a) throws T;
}
И объявим простенький метод, который преобразует коллекцию используя этот интерфейс, у этого метода также объявлен generic-тип для бросаемого исключения (совпадающий с типом исключения которое может выбросить функциональный интерфейс).
public static <A, B, T extends Throwable> Collection<B> map(Collection<A> source, ThrowableFunction<A, B, T> function) throws T {
Collection<B> result = new ArrayList<>();
for (A a : source) {
result.add(function.apply(a));
}
return result;
}
Посмотрим, как будет выглядит обработка исключений с ними в разных случаях.
Читать полностью »
Стриминг и анализ логов Java приложений в MS Azure с использованием Log4j и Stream Analytics
2017-11-06 в 9:51, admin, рубрики: azure, event hubs, java, logs, Microsoft Azure, SaaS / S+S, stream analytics, ПрограммированиеВ этой статье я покажу несколько работающих решений задачи передачи и анализа логов из Java приложений в MS Azure. Мы рассмотрим решения как для windows, так и для linux виртуальных машин, находящихся как в облаке, так и on-premise. В качестве подсистемы логирования для Java будем использовать log4j2.
Для анализа логов будем использовать Azure Stream Analytics.

Моделирование планеты маргариток
2017-11-05 в 19:00, admin, рубрики: java, гипотеза Геи, маргаритковый мир, моделирование, планета маргаритокМоделирование планеты маргариток
- Лирика
- Описание интерфейса
- Декомпозиция
- Модель
- Логика
1. Лирика
Давным-давно, не помню где, я узнал об одном удивительном эксперименте, начало описания было такое: Представьте себе планету, примерно такую, как Земля, которая вращается вокруг звезды примерно такой, как Солнце. На планете есть жизнь, но не очень разнообразная — всего два вида маргариток — черные и белые. Представили? Какой заход! Автор красавчик, почти Экзюпери.
Читать полностью »
Тестирование debian пакетов в Travis-CI
2017-11-04 в 10:51, admin, рубрики: Debian, devops, docker, java, systemd, travis-ci, тестирование, Тестирование IT-системВозникла передо мной такая задача: тестирование debian пакета. И требования:
- пакет устанавливает и стартует systemd сервис.
- используются native armhf библиотеки
Тестирование должно включать в себя:
- установка пакета на чистую систему: проверка наличия зависимостей
- запуск: проверка зависимостей в рантайме
- тестирование запущенного приложения: проверка prod конфигурации

Документируем и тестируем REST API с помощью SpringRestDocs
2017-11-03 в 12:02, admin, рубрики: api, java, rest java spring springrestdocs apiДобрый день, хочу затронуть тему документирования REST API. Сразу же оговорюсь, этот материал будет ориентирован на инженеров работающих в Spring экосистеме.
На нескольких последних проектах я использовал фреймворк SpringRestDocs, он успешно закрепился в портфолио, был показан знакомым, которые также начали успешно его применять и теперь я хочу поделиться с Вами в статье о его возможностях и преимуществах. Статья позволит разобраться с применением SpringRestDocs и начать его использовать.
Читать полностью »
«В ЕЕ всегда есть альтернатива» — Дмитрий Александров (T-Systems) о Java EE – EE4J
2017-11-02 в 14:02, admin, рубрики: eclipse foundation, ee4j, java, java ee, java ee 8, joker, T-Systems, Блог компании JUG.ru Group, Дмитрий Александров
В последнее время вокруг Java EE много шумихи: сначала выход восьмой версии, затем новость о переходе в Eclipse Foundation и о переименовании. Но многие обсуждения новостей сводятся к тому, что люди думают о новом названии EE4J. Мы решили этим не ограничиваться и расспросить Дмитрия Александрова (ведущего эксперта-программиста в T-Systems): он и имеет дело с Java EE в своей работе, и активен в EE-сообществе, и выступает с EE-докладами на конференциях. Так что вопросы мы ему задали и с точки зрения «применимость в вашей работе», и с точки зрения «что думает сообщество в целом», и заодно про доклады: он как раз уже завтра выступит у нас на Joker.
Читать полностью »
Google MAPs API в android или как работать с картами быстрее
2017-11-02 в 12:21, admin, рубрики: android, api, directions api, Google API, google map, java, Maps API, Разработка под androidПро использование Google MAPs API написано много статей, но основная часть из них устарела на столько, что глазам становится просто больно. Здесь хочу рассказать про замечательную библиотеку для работы со всеми MAPs API в частности Directions API, а так же о том как все это встроить в приложение.
Читать полностью »
Не ждем, а готовимся к переходу на новые стандарты криптографической защиты информации
2017-11-02 в 8:15, admin, рубрики: digital security, digital signature, java, open source, public key, public key infrastructure, Блог компании «Альфа-Банк», гост, ГОСТ 34.10-2012, ГОСТ 34.11-2012, информационная безопасность, криптография, криптопро, криптопровайдер, электронная подпись, электронные сертификатыВ информационном мире и Digital-Банке само собой разумеется – Digital Security и Digital Signature.
Криптография позволяет нам защитить информацию от подмены и однозначно установить ее правообладателя посредством усиленной электронной подписи.
Криптография дает возможность закрыть для посторонних глаз информацию конфиденциального характера с помощью шифрования.
Как применять криптографию в соответствии с законодательством и ладу с регуляторами?
Речь пойдет о правовых аспектах и об организационно-технических мероприятиях в рамках официального перехода на национальные стандарты в области криптографической защиты информации ГОСТ Р 34.11-2012 «Функция хэширования» и ГОСТ Р 34.10-2012 «Процессы формирования и проверки электронной цифровой подписи».
Переход осуществляется в средствах электронной подписи, применяемых для информации, не содержащей сведений, составляющих государственную тайну, в случаях, подлежащих регулированию со стороны ФСБ России в соответствии с действующей нормативной правовой базой.
Читать полностью »


