Найти тему
🎉🎉🎉 Релиз: Java 24 Сегодня вышел релиз Java 24 – очередная не-LTS версия с важными улучшениями в производительности, многопоточности и API. Вот основные нововведения, вошедшие в состав новой версии: ✅ Примитивные типы в паттернах (JEP 488): Позволяют использовать примитивные типы в конструкциях instanceof и switch. Теперь можно проводить проверки диапазонов и безопасное приведение типов без дополнительных проверок. ✅ Импорт модулей (JEP 494): Улучшен механизм импорта модулей: при импорте агрегирующего модуля java.se автоматически подтягиваются классы из java.base, а импорт со звёздочкой теперь может перекрывать импорт модулей. ✅ Простые исходные файлы и instance‑main (JEP 495): Теперь можно запускать Java-программы без явного объявления класса, а также использовать нестатический метод main(). Это упрощает написание скриптов и способствует более постепенному обучению языку. ✅ Гибкие тела конструкторов (JEP 492): Разрешается выполнение инструкций до вызова super(), что позволяет проводить предварительную инициализацию и проверки до передачи управления родительскому конструктору. Изменения в API: ✅ Stream Gatherers (JEP 485): Новая точка расширения для Stream API, позволяющая создавать произвольные промежуточные операции (например, fold, scan, оконные операции) для более гибкой обработки данных. ✅ Class-File API (JEP 484): Введено стандартное API для парсинга, генерации и трансформации class‑файлов, которое заменяет устаревшую библиотеку ASM и лучше соответствует современным требованиям Java. Уведомления при использовании ✅ Unsafe (JEP 498): При вызове методов доступа к памяти из sun.misc.Unsafe теперь выводятся предупреждения, что стимулирует переход на более безопасные альтернативы (например, VarHandle и MemorySegment). ✅ Подготовка к ограничению JNI (JEP 472): При загрузке нативных библиотек через JNI теперь выводятся предупреждения. Разработчикам предлагается явно указывать разрешение на нативный доступ через командную строку (с помощью опций вроде --enable-native-access), что соответствует философии «Integrity by Default». 📌 Релиз: https://openjdk.org/projects/jdk/24 📌Java 24 Launch: https://www.youtube.com/watch?v=mk_2MIWxLI0
2 часа назад
👩‍💻 kotlin-math — набор API в Kotlin, предназначенных для упрощения выполнения математических операций, связанных с графикой! 🌟 Эти API в основном моделируются по аналогии с GLSL (OpenGL Shading Language), что облегчает перенос кода в шейдеры и обратно. Предоставляемые типы данных предназначены для использования в качестве значимых типов, а большинство API представлены в виде функций верхнего уровня, а не методов. 🔐 Лицензия: Apache-2.0 🖥 Github @javarush
6 часов назад
🖥 Java interview это богатый ресурс для подготовки к собеседованиям на позицию Java-разработчика. В нём собраны вопросы, ответы и примеры по ключевым аспектам разработки на Java, включая основы языка, работу JVM, многопоточность, коллекции, паттерны проектирования и многое другое. Репозиторий помогает структурировать знания, выявить слабые места и подготовиться к реальным интервью, предлагая подробные разъяснения и примеры кода. ▪ Подходит для всех: Независимо от уровня подготовки, будь вы начинающим или опытным специалистом, здесь можно найти полезную информацию для самообразования и повторения материала. Этот репозиторий станет отличным помощником для тех, кто хочет уверенно пройти собеседование и закрепить свои знания по Java. 📌 Github @javarush
1 день назад
🖥 segmantix — это библиотека для Java, предназначенная для управления многоуровневым доступом к данным на уровне пользователей, ролей и арендаторов! 🌟 Основанная на JPA и slf4j-api, она обеспечивает детализированный контроль доступа, позволяя настраивать разрешения для операций, таких как чтение, запись и удаление. 🔐 Лицензия: Apache-2.0 🖥 Github @javarush
2 дня назад
✔️ "Top 5 Microservice Courses for Java" представляет собой подробное руководство по выбору лучших курсов для изучения микросервисной архитектуры на Java. ⚫ Обзор курсов: Автор анализирует пять различных программ, каждая из которых фокусируется на разработке и внедрении микросервисов. ⚫ Целевая аудитория: Рекомендуемые курсы подходят как для начинающих, так и для опытных разработчиков, стремящихся углубить свои знания в области распределённых систем. ⚫ Содержание и преимущества: В статье подробно описаны ключевые темы каждого курса – от основ проектирования микросервисов до продвинутых инструментов для разработки, тестирования и развертывания. ⚫ Практические рекомендации: Автор делится мнением о плюсах и минусах каждого курса, что помогает читателям сделать осознанный выбор и подобрать оптимальное обучение для повышения квалификации. В итоге, материал служит полезным ориентиром для разработчиков, ищущих качественные образовательные ресурсы по микросервисам на Java. ▪ Читать @javarush
4 дня назад
👩‍💻 FlexibleBottomSheet — мощный и настраиваемый компонент для работы с нижними листами (bottom sheets) в Jetpack Compose, включая мультиплатформенную поддержку! 🌟 Он позволяет использовать сегментированные размеры, настраивать модальные и немодальные типы листов, а также обеспечивает взаимодействие с элементами позади листа, как в Google Maps. Библиотека поддерживает три уровня расширения (полное, промежуточное и слегка открытое состояние), а также гибкие параметры для управления состояниями и анимацией. 🔐 Лицензия: Apache-2.0 🖥 Github @android_its
5 дней назад
🖥 В этой статье автор объясняет, как структурировать Spring Boot-приложения для масштабируемых микросервисов, разделяя их на модули с отдельной функциональностью! Рассматриваются настройка Maven для управления зависимостями и взаимодействие модулей, упрощающее поддержку и масштабирование. 🔗 Ссылка: *клик* @javarush
6 дней назад
🖥 В этой статье обсуждается случай аномально высокой загрузки процессора (3,200%), возникшей из-за неконтролируемого конкурентного доступа к структуре данных TreeMap в Java-приложении! 🌟 Автор описывает, как отсутствие синхронизации при одновременном доступе нескольких потоков к TreeMap привело к повреждению структуры данных и бесконечным циклам, что, в свою очередь, вызвало полную загрузку всех 32 ядер процессора. ​ 🔗 Ссылка: *клик* @javarush
1 неделю назад
🖥 Java Version Almanac — это сайт, который предоставляет подробные данные о каждом выпуске Java, включая новые функции, изменения в API и сравнения между версиями! 🔗 Ссылка: *клик* @javarush
1 неделю назад
🖥 JDBG — это мощный инструмент для динамической отладки и реверс-инжиниринга Java-приложений! 🌟 Он использует внедрение динамической библиотеки (DLL) вместе с JNI и JVMTI для предоставления глубокого анализа работающих Java-программ. 🔐 Лицензия: Apache-2.0 🖥 Github @javarush
1 неделю назад
🖥 Caffeine — это Java-библиотека для кэширования в памяти, обеспечивающая высокую производительность и оптимальный уровень попаданий в кэш! 🌟 Она предоставляет гибкий и настраиваемый API, позволяющий разработчикам эффективно управлять кэшированием данных в своих приложениях. 🔐 Лицензия: Apache-2.0 🖥 Github @javarush
2 недели назад
🖥 DataMelt — это программное обеспечение для численных вычислений, статистического анализа и научной визуализации! Оно поддерживает языки Python (Jython), Groovy, Ruby (JRuby) и Java, предлагая доступ к более чем 50 000 Java-классов. 🔗 Ссылка: *клик* @javarush
2 недели назад