Pull to refresh
14
0
Игорь @iik_812

Team Lead / Java developer

Send message

Создание и использование оберток (wrappers) в Java: подробный разбор

Level of difficultyEasy
Reading time5 min
Views3.3K

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

Читать далее

Интеграция предобученных нейросетей в Java-проектах: практический пример

Level of difficultyEasy
Reading time6 min
Views2.3K

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

В данной статье я привожу практический пример интеграции с предобученной моделью, так рассмотрим задачу извлечения именованных сущностей (NER) — автоматического определения имен, мест или дат из текста. Мы будем использовать предобученную модель BERT, выполненную через библиотеку ONNX Runtime.

Вообще существует множество предобученных моделей для извлечения именованных сущностей (NER) и других задач NLP. Вот некоторые из них:

Читать далее

Хэши: виды, применение и примеры на Java

Reading time7 min
Views6.4K

Хэширование — это фундаментальный процесс в программировании, который применяется везде: от защиты паролей до ускорения поиска данных в структурах. Эта статья поможет разобраться в основных видах хэшей, их применении, а также покажет, как их использовать на практике с примерами на Java.

Читать далее

Применимость Java в искусственном интеллекте: 7 библиотек для нейросетей, которые стоит изучить

Level of difficultyEasy
Reading time12 min
Views3.4K

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

Читать далее

Войти и не выйти из IT: советы для начинающих разработчиков

Level of difficultyEasy
Reading time4 min
Views1.5K

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

Читать далее

Генетический алгоритм: природа в действии для оптимизации сложных задач (c примером на java)

Level of difficultyEasy
Reading time7 min
Views2.7K

Генетические алгоритмы (ГА) — это мощный инструмент для решения задач оптимизации, вдохновленный процессами эволюции в природе. Они применяются в таких областях, как маршрутизация, машинное обучение, финансовая аналитика, проектирование и многие другие. В этой статье я разберу принцип работы ГА и приведу пример решения, одной из самых популярных задач в алгоритмах на языке Java.

Алгоритм основан на модели эволюции Дарвина. Его ключевые компоненты:

Читать далее

От подвала до облака: как обучить нейросеть в домашних условиях

Level of difficultyEasy
Reading time5 min
Views4.9K

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

Читать далее

Создание плагина для IntelliJ IDE с подключением GigaChat для проверки качества кода

Level of difficultyEasy
Reading time5 min
Views3.9K

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

Читать далее

Пишем простую нейронку для адаптивного управления JVM: обучение и применение многослойной нейронной сети на Java

Level of difficultyEasy
Reading time5 min
Views1K

Данная статья является описанием моего эксперимента передать управление ресурсами JVM нейронной сети, которая будет предсказывать необходимость управления ресурсами на основе текущих данных, таких как загрузка CPU и память.

Читать далее

Подключение к GigaChat API на Java: пошаговое руководство

Level of difficultyEasy
Reading time5 min
Views3.9K

Подключение к GigaChat API на Java: пошаговое руководство.

В этой статье я расскажу о том, как подключиться к API GigaChat в IntelliJ IDEA на Java и настроить безопасное соединение с использованием SSL-сертификатов, чтобы получать ответы от GigaChat в своем приложении.

Читать далее

Почему я стал использовать Алгоритмические собеседования при подборе команды

Level of difficultyEasy
Reading time3 min
Views22K

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

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

Объективно, где мы используем в работе алгоритмы?

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

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

Читать далее

Собственные исключения в Java: как управлять ошибками в вашем приложении

Level of difficultyEasy
Reading time7 min
Views18K

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

Читать далее

Parallel Stream — не панацея или используй с умом (tutorial для начинающих)

Level of difficultyEasy
Reading time5 min
Views23K

Данная статья может быть интересна тем, кто только изучает Stream API, либо набирает практический опыт их использования. В ней раскрывается функционал, плюсы и минусы использования Parallel Stream, но не касаемся использования последовательных Stream API в целом.

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

Читать далее

Information

Rating
Does not participate
Registered
Activity

Specialization

Backend Developer
Java
PostgreSQL
Spring Boot
Hibernate
Kubernetes
CI/CD
Apache Kafka