Насколько  известно существует много языков, использующих JVM. В одном из интервью  мы как раз говорили о таком —   JRuby.

Сюда можно отнести такие языки как Scala, Groovy и Kotlin.

А что вы знаете о Whiley? Ничего? Хм…

Тогда предлагаю посмотреть инфу по ссылкам.

Информация о языке на wikipedia.

Сам сайт Whiley.

Обратите внимание, что он является open source проектом и кто знает, может за ним будущее.

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

Основная причина связана с проектом с Jigsaw — модулярная система(о котором я уже неоднократно писал и было большое интервью на эту тему).

Mark Reinhold, chief architect of the Java сказал, что достигнут прогресс, но этого явно недостаточно сейчас. Было получено много негативных  отзывов и они(команда) были мотивированы для изменения  системы экспорта пакетов из-за этого.

Еще прозвучала фраза о том, что число открытых багов сейчас в девятке гораздо больше, чем было в 8 версии.

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

binary-code

Насколько нам известно, память — одна из самых главных составляющих при работе JVM. Часто происходят ситуации когда ее не хватает, особенно при больших вычислениях и больших объемах данных. Совсем недавно и я сам столкнулся с такой проблемой, но не об этом речь.

Сегодня вышла небольшая статья о инструменте по поиску проблем с моделью памяти. Конечно он (инструмент)  предназначен не для крутых  гуру, т.к. возможно  использование способа с помощью просмотра  дампа  «кучи»,который  в принципе позволяет видеть, какой объект держит ссылку на коллекции. Второй способ — это использование дампа кучи и профайлера (например, JConsole – это встроенный профайлер Java, будет время сделаю статью по нему), возможно, что такая связка даст вам больше информации.

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

В любом случае пишите комментарии, присылайте ваши примеры.

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

Например, нужно быстро протестировать без изменения логики программы. Как это сделать? Есть выход. Подойдет следующий пример.

У вас есть коллекция, например, testList — коллекция строк из БД.

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

Создаем   Set doubleCount = new HashSet(), которым, как видно далее из примеры ограничим попадание в условия обработки дубликатов.

Вот такое несложное действие часто упрощает  жизнь и разработку.

Если у вас ест свои варианты, пишите, присылайте, опубликуем.

Недавно я выкладывал интервью с CHARLES NUTTER где был затронут интересный вопрос, связанный с появлением нового интерфейса в Java 9 под названием JVMCI. Буквально с неделю назад  я прочитал про  проект, который как связан с этим интерфейсом. Речь идет вот об этой статье. Суть в том, что  будет доступна интересная штуковина(библиотеки AOT — Ahead-of-time compilation)   в Java 9(не факт, что выйдет именно в девятке) за авторством Владимира Козлова.

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

Будет ли у вас интерес к AOT?

Предлагаю высказаться по данному поводу в комментариях.

image

Всем привет. Давно хотел добавлять новости. Видимо, время пришло. Первая интересная ссылка будет  про битву за  sun.misc.Unsafe и ближайшие планы по ее удалению в Java 9.

Если рассказать кратко, то  интересная штуковина(sun.misc.Unsafe) является утилитарным классом. Попробуйте например,  добавить ее к себе в программу и обратите внимание на сообщения компилятора. Возможно, что предупреждение «warning: sun.misc.Unsafe is Sun proprietary API and may be removed in a future release»  вас не напугает, а возможно,  наоборот. В любом случае мы можем увидеть функции работы с памятью, чтении и записи значений в методах этого класса.

Разговоры  и споры около Unsafe присутствуют небезосновательно, штука действительно нужная в определенных условиях. В статье рассказано про мнение   Rafael Winterhalter, про его понимание важности  sun.misc.Unsafe, описывается его точка зрения.

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

sunbeam-76825_640

Читайте новое интервью с  Charles Nutter  из Red Hat.

Обсудили многие моменты работы JVM, такие как JIT компиляторы и GC. Немного затронули тему изменений в Java 9, таких как проект Jigsaw и API под названием JVMCI. В ближайшем будущем проекты, такие ка Graal будут нуждаться в данном интерфейсе для проведения качественного тестирования.

Статья получилось интересной с точки зрения не изучения отдельной темы, а всестороннего обзора начинки JVM. Плюсом конечно  будет интересный рассказ от участника и разработчика проекта JRuby.

Для чтения жмем сюда.

2222222

Всем добро утро.

Наткнулся на  забавный мини-комикс про спасение принцессы не нескольких языках программирования.

Вариант спасения на Java не самый плохой…

Для просмотра жмем сюда———>

 

jigsaw

Всем привет.

Читайте новое интервью с Иваном Крыловым на тему грядущей модулярности в Java 9. Ждать осталось не долго!

Обсудили многие вопросы будущих изменений с учетом проекта Jigsaw как раз описывающего все тонкости и взаимосвязи модулей. Рассмотрели вопросы OSGi и Gigsaw. Обсудили возможные плюсы и минусы модулярности.

Чтение Будет интересным. Заинтересовал? Тогда  жми сюда!

w_w

Класс  для работы с датами  в Java.  Позволяет добавлять, вычитать, обрезать дату от текущей и т.п..  Если вам требуется прибавить или вычесть один день от  вашей даты, то вам точно пригодятся методы описанные в данном материале.

Читать далее →