Чашечка Java
8.57K subscribers
3.88K photos
13 videos
56 files
6.33K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
Нативные библиотеки для Android

В этой статье мы рассмотрим работу с нативными библиотеками, которые могут содержаться в приложениях для Android. Нативные библиотеки — это код, который разработчик написал, а затем скомпилировал для конкретной архитектуры компьютера. Чаще всего этот код написан на C или C++. Наиболее распространенными причинами, по которым разработчик может это сделать, являются математически сложные или требующие больших затрат времени операции, такие как работа с графическими библиотеками.

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

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


Читать: https://habr.com/ru/companies/otus/articles/844110/?utm_campaign=844110

@a_cup_of_java | Другие наши каналы
Spring News Roundup: Milestones for Spring Boot, Auth Server, Integration, Modulith, Batch

There was a flurry of activity in the Spring ecosystem during the week of September 16th, 2024, highlighting point and milestone releases of: Spring Boot, Spring Security, Spring Authorization Server, Spring Integration, Spring Modulith, Spring Batch, Spring AMQP and Spring for Apache Pulsar.
By Michael Redlich

Read: https://www.infoq.com/news/2024/09/spring-news-roundup-sep16-2024/

@a_cup_of_java | Другие наши каналы
Java News Roundup: JDK 23, GraalVM for JDK 23, Jakarta EE 11 Update, Micronaut GraalPy, Azul

This week's Java roundup for September 16th, 2024 features news highlighting: the release of JDK 23 and GraalVM for JDK 23; an update on Jakarta EE 11 and plans for Jakarta EE 12; introducing Micronaut GraalPy; and Azul Zing Builds of OpenJDK 24.08.
By Michael Redlich

Read: https://www.infoq.com/news/2024/09/java-news-roundup-sep16-2024/

@a_cup_of_java | Другие наши каналы
Взлом JVM-приложения с помощью отладчика IntelliJ IDEA

Что если мы скажем вам, что отладчик может стать не просто инструментом для поиска ошибок, а настоящим "режимом бога" в мире кода?

В новом переводе от команды Spring АйО рассматривается, как можно исследовать память приложения и изменить его функциональность, при этом не затрагивая исходного кода, а используя только лишь отладчик IntelliJ IDEA.


Читать: https://habr.com/ru/companies/spring_aio/articles/845554/?utm_campaign=845554

@a_cup_of_java | Другие наши каналы
🔥5👍42
О том как я генератор Brainfuck кода писал

Разбираемся в Brainfuck, Пишем для него генератор кода и интерпретатор

Или рассказ о том, как я решал легкую C задачку

Однако я решил что решать эту задачу привычным методом будет скучно и я решил слегка усложнить себе задачу, чтобы поинтереснее было. Так и появилась идея написать этот код на brainfuck, а на C интерпретатор для него.

Естественно делать это голыми руками будет больно и не приятно, поэтому я решил написать генератор brainfuck кода на Java.


Читать: https://habr.com/ru/articles/846076/?utm_campaign=846076

@a_cup_of_java | Другие наши каналы
2
Образы БД для юнит-тестирования, опять

В прошлой статье был предложен вариант для создания docker образов БД для последующего использования в разработке и тестирования приложений в пайплайнах гитлаба.

Из-за перехода на новую инфрастуктуру k8s 1.30 (restricted psp) и новый гитлаб 17.3 все это ломается. Поэтому придется исправлять ситуацию!
Запускай

Читать: https://habr.com/ru/articles/846172/?utm_campaign=846172

@a_cup_of_java | Другие наши каналы
Как я разочаровался в юнит тестах и решил, что единственный вариант получить от них пользу — 100% покрытие

Когда-то я писал код и предполагал, что с хорошим тестовым покрытием станет намного проще ловить баги. Мы сделали высокое покрытие тестами, и в итоге стали ловить баги еще и в тестах. (с)


Читать: https://habr.com/ru/articles/846212/?utm_campaign=846212

@a_cup_of_java | Другие наши каналы
ByteWeaver в Open Source: инструментирование байт-кода во имя великого блага

Про байт‑код написано уже немало. Он везде, и никого этим не удивить: его генерирует компилятор, переупаковывает система сборки, «портит» обфускатор и изредка читают программисты. Естественно, для работы с байт‑кодом есть немало инструментов, которые используются в разных областях и на разных платформах. Среди них и ByteWeaver — инструмент для патчинга байт‑кода во время сборки, который может быть полезен разработчикам под Android.

Меня зовут Александр Асанов. Я Android‑разработчик в OK, Tracer, ByteWeaver. В этой статье я разберу, что такое байт‑код, как и зачем с ним работать, расскажу о ByteWeaver и покажу примеры работы с байт‑кодом.


Читать: https://habr.com/ru/companies/vk/articles/845872/?utm_campaign=845872

@a_cup_of_java | Другие наши каналы
Лучшие курсы по изучению NLP в 2024 году

Хотите освоить обработку естественного языка (NLP) и ищете топовые онлайн-курсы? В статье представлены лучшие курсы на Udemy, Coursera и Pluralsight. Изучите передовые техники и создавайте свои чат-боты и NLP-приложения. Отличная возможность для тех, кто хочет развиваться в области искусственного интеллекта!

Подробности: http://www.java67.com/2020/07/top-5-courses-to-learn-natural-language-processing-NLP.html

#en

@a_cup_of_java | Другие наши каналы
🥰2
🎓 Бесплатные курсы для изучения Microsoft Azure в 2024 году

Если вы хотите освоить Microsoft Azure и ищете бесплатные курсы, спешим поделиться! В статье собраны 6 лучших бесплатных курсов от Udemy, Coursera, Pluralsight и YouTube, которые дадут вам полное представление о платформе Azure и помогут начать карьеру в облачных технологиях. Лучшие курсы для изучения востребованных технологий

Ищете курсы по современным технологиям? В статье представлены лучшие бесплатные и платные курсы по JUnit, HTML и CSS, блокчейну, React, C++, Ruby on Rails, Selenium, Oracle, SQL, Linux, Maven, Jenkins, JavaScript и Python. Узнайте, где можно прокачать свои навыки!

Подробности: http://www.java67.com/2020/07/5-free-courses-to-learn-microsoft-azure-cloud.html

#en

@a_cup_of_java | Другие наши каналы
😁2
5 БЕСПЛАТНЫХ КУРСОВ ДЛЯ ЭКЗАМЕНА AWS SOLUTION ARCHITECT PROFESSIONAL

Готовитесь к экзамену AWS Certified Solution Architect Professional 2024? В статье описаны 5 бесплатных онлайн-курсов, которые помогут вам успешно сдать экзамен и построить карьеру в облачной индустрии. Узнайте, какие курсы следует пройти для достижения цели! Утопите в онлайн-обучении: Лучшие курсы 2024

Хотите повысить свои навыки в JavaScript, Python или веб-дизайне? Открывайте подборки лучших бесплатных онлайн-курсов по Scikit-Learn, Adobe Premiere Pro, Azure и другим платформам. Погрузитесь в мир знаний и выберите подходящий курс для вас!

Подробности: http://www.java67.com/2020/10/5-free-courses-for-aws-solution-architect-professional-exam.html

#en

@a_cup_of_java | Другие наши каналы
Основы Docker: контейнеризация, Dockerfile и Docker Compose. Часть 2

Привет, Хабр! Меня зовут Толя, я лидер компетенции Java в Цифровом СИБУРе. Наш прошлый материал о Docker собрал классный фидбэк, поэтому мы решили развить тему и подготовить ещё несколько статей, двигаясь от простого к сложному.

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


Читать: https://habr.com/ru/companies/sibur_official/articles/846350/?utm_campaign=846350

@a_cup_of_java | Другие наши каналы
👍1
Вот здесь точно нужен рефакторинг, есть идеи?

Бывают пет-проекты, а у нас получился проект с наработками, которые вроде бы могут быть полезны например студентам технических специальностей и просто всем кому интересно поразбираться с возможностями визуализации на C# + WPF, например, или с системой избыточного кодирования.

Мы со студентами сделали приложение для анализа характеристик LDPC кодов изначально на Java (Java код тоже присутствует в репозитории) потом я переписал его в виде проекта C# + WPF, чтобы добавить возможность конфигурации статистических экспериментов через визуальный интерфейс, а главное чтобы иметь возможность визуализации результатов экспериментов в виде графиков (обычных, в X, Y осях). Я как раз для работы сделал библиотеку для рисования обычных математических графиков по массивам значений с возможностью масштабирования области просмотра мышкой.

Думаю студентам любых технических направлений может пригодиться такая библиотека при том, что весь ее достаточно компактный исходный код (5-7 файлов) локализован в проекте и доступен как для изучения так и для любых изменений и доработок.

Под катом ссылка на Гит-репозиторий с исходным кодом и обзор реализованной функциональности со скриншотами.


Читать: https://habr.com/ru/articles/846204/?utm_campaign=846204

@a_cup_of_java | Другие наши каналы
🥰3
Что расскажут на Joker 2024: безумие в хорошем смысле слова

Пока многие ждут фильм «Джокер: Безумие на двоих», Java-разработчиков сильнее волнует приближающаяся конференция Joker 2024.

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

А кто-то из небольшой компании скажет: «По нашим меркам в VK Видео безумные масштабы и нагрузки». И на конференции можно будет заглянуть под капот этого проекта — в докладе о собственной реализации HTTP(S)-сервера для быстрой раздачи видеоконтента.

Отдельная история — «кейноуты», общие открывающие/закрывающие доклады. Они могут отходить от Java-специфики, так что один из них будет посвящён использованию ИИ современными художниками. И судя по описанию «ИИ сегодня — главный Джокер», там без некоторого безумия тоже не обойдётся.

Но для тех, кому безумия не хочется, есть и много «обычных», но полезных докладов: о Spring, хранении данных, популярных инструментах… Публикуем всю программу конференции — смотрите, что в ней интересно для вас.
Программа Joker 2024

Читать: https://habr.com/ru/companies/jugru/articles/845372/?utm_campaign=845372

@a_cup_of_java | Другие наши каналы
👍2🎉2
Лучшие бесплатные курсы по изучению NumPy в 2024 году

Ищете бесплатные курсы по NumPy? В этой статье представлены 5 лучших курсов для начинающих. Эти курсы помогут освоить одну из самых важных библиотек Python для Data Science и Machine Learning. Все курсы созданы экспертами и доступны на таких платформах, как Udemy и Coursera. Не упустите возможность прокачать свои навыки! Лучшие курсы для освоения Google Cloud и Python

Ищете бесплатные курсы для подготовки к сертификатам Google Cloud или изучения Python? В статье представлены подборки лучших курсов, которые помогут вам быстро и эффективно освоить востребованные навыки в 2024 году. Начните свой путь к успеху сегодня!

Подробности: http://www.java67.com/2021/11/top-5-free-courses-to-learn-numpy-for.html

#en

@a_cup_of_java | Другие наши каналы
👍1
# Лучшие курсы по AWS на 2024 год

Хотите освоить AWS в 2024 году? Статья на Java67 предлагает подборку из пяти лучших курсов, охватывающих основные и продвинутые концепции AWS. В списке представлены курсы с таких платформ, как Udemy, Coursera, Pluralsight и LinkedIn Learning. Узнайте больше, перейдите по ссылке и начните обучение!

Подробности: http://www.java67.com/2021/12/5-best-amazon-web-service-aws-courses.html

#en

@a_cup_of_java | Другие наши каналы
Впечатления от доработки Telegram Android

Я являюсь давним и последовательным пользователем Telegram, никакие Whatsapp-ы не заменят мне белый самолетик на фоне чистого голубого неба. Не то, чтобы я был большим поклонником Дурова или адептом тайны частной переписки, просто так исторически сложилось. И естественно, поскольку я постоянно пользуюсь Telegram на десктопе и на телефоне, у меня со временем появились желания некоторых дополнительных фичей и возможностей, отсутствующих в официальных и распространенных неофициальных клиентах. Ждать милостей от природы занятие бесперстпективное, поэтому я решил реализовать доработки самостоятельно. Начал с десктоп версии, о чем уже писал на Харб. Сейчас закончил первый этап доработок Android версии, и решил поделиться впечатлениями с сообществом.


Читать: https://habr.com/ru/articles/842618/?utm_campaign=842618

@a_cup_of_java | Другие наши каналы
👏2👍1
А что если можно научиться программировать по голливудским фильмам?

Кто-то предлагает освоить популярную веб-профессию за 6 месяцев. Кто-то даже предлагает оплатить курсы после трудоустройства. Может все вокруг врут, все намного проще и достаточно посмотреть десяток голливудских фильмов? Давайте разбираться.


Читать: https://habr.com/ru/articles/846664/?utm_campaign=846664

@a_cup_of_java | Другие наши каналы
3🥰2👍1
Spring patterns. Fluent interface

Spring Patterns. Fluent interface.

В этой статье я хочу поделиться опытом создания Fluent Interface, но не классического шаблона из GOF, а с использованием Spring. Классическим примером шаблона Fluent Interface в Java является Stream API. Я покажу, как можно написать нечто подобное, используя Spring.


Читать: https://habr.com/ru/articles/846864/?utm_campaign=846864

@a_cup_of_java | Другие наши каналы
👍1
Java News Roundup: Proposed Schedule for JDK 24, SecurityManager Disabled, Commonhaus Foundation

This week's Java roundup for September 23th, 2024 features news highlighting: the proposed release schedule for JDK 24; JEP 475, Late Barrier Expansion for G1, promoted from Candidate to Proposed to Target for JDK 24; JEP 486, Permanently Disable the Security Manager, promoted from its JEP Draft 8338625 to Candidate status; and Quarkus joining the Commonhaus Foundation.
By Michael Redlich

Read: https://www.infoq.com/news/2024/09/java-news-roundup-sep23-2024/

@a_cup_of_java | Другие наши каналы
👏2🎉2👍1
Паттерны применения многопоточности на коммерческом проекте (на примере Java)

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

Список рассмотренных паттернов:

- Запуск асинхронного процесса по сигнал
- Параллельное выполнение задач без ожидания результата
- Ограничение количества потоков для вызова внешнего сервиса
- Выполнение Scheduled задач
- Параллельное обращение к разным источникам, с последующим объединением результатов
- Контекст
- Ожидание асинхронного ответа


Читать: https://habr.com/ru/articles/838402/?utm_campaign=838402

@a_cup_of_java | Другие наши каналы
👏1