Рубрика «java» - 215

image
Вышел небольшой open-source построитель пешеходных маршрутов для людей с ограниченными возможностями.

Сразу ссылка на исходники: https://github.com/korifey/Smooth

Читать полностью »

image

Привет, ГТ!

Меня зовут Денис Цыплаков, я — Solution Architect в DataArt.
В конце февраля этого года команда DataArt участвовала в travel-хакатоне THack 2015 Berlin и выиграла главный приз для больших команд. Проводил хакатон онлайн-журнал Tnooz.
Ниже расскажу, как это было. И почему мы выиграли.

Коротко о конкурсе.

Tnooz — один из крупнейших информационных ресурсов, посвященных технологиям в сфере туризма.

Он существует с 2009 года. Основная тематика издания — travel-технологии. Эксперты, пишущие для Tnooz о трендах и перспективах индустрии, живут по всему миру. Кевин Мэй, редактор и один из создателей ресурса, до этого около четырех лет был редактором в известном английском журнале Travolution.

Кроме онлайн-новостей и аналитики, Tnooz ведет серию успешных проектов: хакатоны THack, презентации TLabs, серия встреч Appy Hour и различные вебинары.
Читать полностью »

Некоторое время назад я анонсировал курс по Scala. Он стартовал и выкладывается на MOOC-платформу UDEMY — «Scala for Java Developers». Больше о курсе вы можете прочитать в конце статьи.

Сейчас я бы хотел представить материал по одной из тем курса — перегрузке операторов в Scala.

Читать полностью »

Одной из многих причин, почему мне нравится работать именно с функциональным программированием, является высокий уровень абстракции. Это связано с тем, что в конечном итоге мы имеем дело с более читаемым и лаконичным кодом, что, несомненно, способствует сближению с логикой предметной области.

В данной статье большее внимание уделяется на четыре вещи, представленные в Java 8, которые помогут вам овладеть новым уровнем абстракции.

Java 8: Овладейте новым уровнем абстракции - 1
Читать полностью »

Итак, вчера мы с вами поиграли в джавовский вариант «Интеллектуальное казино против знатоков», и при этом, при всем уважении кам, телезрители выиграли! Если же я вдруг упустил знатоков, решивших вчера хотя бы три задачи — пишите мне в личку, и награда найдет своего героя!

Вчера нас с телезрителями обвинили в том, что большинство вчерашних задач были связаны с Java весьма косвенно. Мы принимаем это обвинение, и поэтому сегодня у нас вариант на чистой Java! никаких спрингов, эксэмэлей и паттернов. Это будет настоящее испытание для истинных любителей хардкора!

Под катом — ответы на вчерашний раунд и суперблиц! Против знатоков сегодня играет телезритель из Петербурга Андрей apangin Паньгин.

Новый суперблиц по Java-хардкору - 1

Читать полностью »

Пролог

Сегодня в веб-интерфейсе одного из используемых мною продукта на месте джавовских апплетов я обнаружил уродливые заглушки с надписью «Плагин не поддерживается». Ну мало ли, может джава устарела, пойду-ка обновлю.

Зашёл на java.com, скачал апдейт, поставил, а там…

image

Читать полностью »

Простые задачи на Java. Слабо решить все? - 1

Привет! Мы тут собрали тусовку одних из самых крутых русскоязычных Java-практиков и попросили их дать по задаче, чтобы вы сломали зубы, мозг и бились об стену, пытаясь понять, как это работает. Собственно, мы поспорили на бутылку Хеннеси, что за 12 часов после публикации никто не пришлёт все правильные ответы. Я уверен, что кто-то сможет. Поэтому если вы это сделаете первым – с меня бутылка.

Первая задача простая, она от телезрителя Николая Гарбузова, специалиста по скалкам, любящего рекурсию, паттерн-матчинг и магию компиляции:

Скомпилируется ли следующий аспект AJC компилятором?
Если да — то что он выведет на консоль при компиляции?

public aspect QuizAspect {
    public static int count(int i) {
        return i++;
    }

    before (int n) : execution(public int QuizAspect.count(int)) 
            && args(n) && if(QuizAspect.count(1)>1) {
        System.out.println("QuizAspect " + n);
    }
}

Пока просто, правда?Читать полностью »

Вместо дисклеймера

На Хабре уже есть множество статей на тему работы с Hibernate, однако, как мне показалось, все они довольно сложные для новичков. Эта статья направлена на разъяснение основ работы с ORM и будет полезна в первую очередь тем, кто только начинает разрабатывать собственные приложения и имеет мало опыта работы с базами данных в общем, и с инструментами, вроде Hibernate, в частности. Матерые разработчики вряд ли найдут в статье для себя что-то новенькое; всех остальных прошу под кат.
Читать полностью »

На днях появилась статья 5nw Два способа быстрого вычисления факториала, в которой приводится идея ускорения подсчёта факториала с помощью группировки перемножаемых чисел в дерево по принципу «разделяй и властвуй». Взглянув на это, я сразу понял, что тут параллельные потоки Java проявят себя во всей красе: ведь они делят задачу на подзадачи с помощью сплитераторов именно таким образом. Получается, что быстрая реализация будет ещё и красивой:

public static BigInteger streamedParallel(int n) {
    if(n < 2) return BigInteger.valueOf(1);
    return IntStream.rangeClosed(2, n).parallel().mapToObj(BigInteger::valueOf).reduce(BigInteger::multiply).get();
}

Читать полностью »

RSA — это алгоритм шифрования с открытым ключем. Шифрование с открытым ключем весьма полезная вещь. RSA позволяет создать два ключа: открытый и закрытый. Разместить открытый ключ где-то и им шифровать, а расшифровать сможет только обладатель закрытого ключа.

Например, мы можем сделать веб магазин на ПХП, который будет принимать заказы с данными кредитных карт. Магазин на ПХП будет шифровать данные кредитных карт открытым ключем. Сам пхп-магазин расшифровать эти зашифрованные данные уже не сможет. Хорошее решение, хакер неожиданно так взломает веб магазин (написанный на ПХП), а карты зашифрованы.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js