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

13 марта 2018 года прошла первая в этом сезоне встреча московского сообщества Java-разработчиков jug.msk.ru. Алексей Рагозин провёл мастер-класс по использованию Java Mission Control. Как прошла встреча, что именно на ней рассказывалось, как приняли доклад участники — обо всём этом далее.

Алексей Рагозин о Java Mission Control на jug.msk.ru - 1
Читать полностью »

Хардкорные Java-JVM задачки - 1Перформансные задачи от Контура уже были, настала и наша очередь: представляем хардкорные задачи с Java-конференции JBreak 2018, aka «ад от Excelsior».

Задачи даны в оригинальных формулировках, в каждой задаче может быть несколько правильных ответов, и к каждой задаче дано решение под спойлером.

Задача 1

Ваш коллега начитался Java Language Specification и написал следующее:

void playWithRef() {
    Object obj = new Object();
    WeakReference<Object> ref = new WeakReference<>(obj);
    System.out.println(ref.get() != null);
    System.gc();
    System.out.println(ref.get() != null);
}

А разгребать вам: какие результаты исполнения возможны?

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

Привет, друзья! 19-20 апреля мы устраиваем Open Day в Москве. Оказалось, ещё не все знают, что в столице у JetBrains тоже есть офис. Недавно он увеличился в три раза, и теперь там много места не только для митапов, но и для новых сотрудников.

Вы узнаете, как у нас всё устроено и что мы делаем нового прямо сейчас. Помимо технических докладов, расскажем, как нам удается оставаться компанией, успех которой — это не результат скучных процессов, а сумма личных достижений.
Читать полностью »

Добрый день, читатели Хабра. Хотел бы поделиться своим опытом разработки приложения для Android TV на примере DetailsFragment.

Google leanback — забота большого брата - 1

Есть официальные примеры тут и официальная документация тут. Что сподвигло меня выразить свое мнение? Это то, что официальные примеры не отвечают современным требованиям к разработке, например, модульности и расширяемости. Иногда создается некая двойственность при использовании того или иного механизма. Рассмотрим более подробно DetailsFragment.

Для того чтобы начать разрабатывать ваше приложение для платформы android, на мой взгляд, вам следует принять 2 основные истины:

  • Плохая идея отходить от официальных рекомендаций и разрабатывать кастомизированное приложение. Гугл позаботился о том, чтобы сделать это было крайне сложно.
  • Single Activity Architecture также не совсем подходит, это чревато утечками памяти, связанной с внутренними реализации библиотеки leanback.

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

5 Установка значений атрибутов

В этой главе мы объясним, как можем установить (или изменить) значения атрибутов в разметке.
Читать полностью »

11 февраля состоялся релиз новой мажорной версии 4.0 Apache JMeter. Поскольку мы используем этот инструмент для нагрузочного тестирования на многих проектах, мы не могли оставить данное событие без внимания.

Предыдущий мажорный релиз (версия 3.0) был выпущен чуть меньше двух лет назад (для сравнения, версия 2.0 вышла аж в 2004-м!). Также за последние 2 года было выпущено несколько минорных релизов (версии 3.1-3.3). Это показывает нам, как JMeter развивается, чтобы шагать в ногу с новыми технологиями и соответствовать нуждам разработчиков.

Похоже, что в новой версии JMeter акцент прежде всего сделан на улучшении пользовательского интерфейса (UX). Процесс навигации и создания тестов стал проще, элементы — дружественней и удобней, а система оповещения пользователя о проблемах с тестами переработана.

JMeter 4.0. Что нового? - 1

Под катом самые важные изменения в JMeter 4.0, о которых вам нужно знать.
Читать полностью »

Все мы имеем какие-то ожидания от конференций. Обычно мы идём на вполне конкретную группу докладов, вполне конкретной тематики. Набор тем отличается от платформы к платформе. Вот что сейчас интересует джавистов:

  • Производительность
  • Виртуальные машины и особенности рантаймов
  • JDK 9/10/...
  • Фреймворки
  • Архитектура
  • Enterprise
  • Большие данные и машинное обучение
  • Базы данных
  • JVM-языки (включая Kotlin)
  • DevOps
  • Разные мелкие темы

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

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

Масштабирование, кластеры и всё такое рассматривать тут не будем, достаточно сказать, что оно есть (Christopher Batey из Lightbend расскажет про Akka, Виктор Гамов из Confluent расскажет про Kafka, и так далее).

Производительность и рантаймы на конференции JPoint 2018 - 1Читать полностью »

Java и Project Reactor - 1

Всем привет! Меня зовут Лёха, и я работаю бэкенд-разработчиком в FunCorp. Сегодня мы поговорим про реактивное программирование, библиотеку Reactor и немного про веб.

Реактивное программирование часто «подвергается упоминанию», но если вы (как и автор статьи) всё ещё не знаете, что это такое — устраивайтесь поудобнее, попробуем разобраться вместе.

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

Оглавление

4 Стандарт синтаксиса Выражений/Standard Expression Syntax

Мы сделаем небольшой перерыв в развитии нашего виртуального магазина бакалейных товаров, чтобы узнать об одной из наиболее важных частей Стандартного диалекта Thymeleaf: Стандарте синтаксиса выражений Thymeleaf.

Мы уже видели два типа допустимых значений атрибутов, выраженные в этом синтаксисе: сообщения и переменные:

<p th:utext="#{home.welcome}">Welcome to our grocery store!</p>

<p>Today is: <span th:text="${today}">13 february 2011</span></p>

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

Оглавление

3 Использование Text

3.1 Мультиязычное «Добро пожаловать»

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

Первая версия страницы будет предельно проста: просто заголовок и приветственное сообщение. Это наш /WEB-INF/templates/home.html файл:
Читать полностью »


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