Java. Сортировки
Java. Сортировка пузырьком.
Java. О сортировке выбором.
Java. Быстрая сортировка. Объяснение на пальцах)
Java. Оценка сложности алгоритмов сортировки.
Java. Сортировка слиянием.
Java. Сортировка подсчетом.
Java. Сортировка вставками.
Java. Сортировка расческой. От пузырька до расчески.
👉@BookJava
Совет по Spring Boot 💡
Если вы используете DTO в Spring Data/JPA, вы можете автоматизировать отображение между сущностями и DTO с помощью библиотеки Blaze Persistence (https://persistence.blazebit.com). Тогда вы сможете воспользоваться преимуществами, например, паттерна Spring repository.
👉@BookJava
Как бы изменились наши будни, если бы создание программного кода стало легким и непринужденным? Представьте язык, созданный для удобства именно человека, а не машины, его синтаксис прост и понятен.
Такая мечта жила в умах разработчиков Microsoft, и в результате для нас разработали C#.
Итак, основные причины продолжить изучение C# уже на профессиональном уровне:
✔️C# занимает ведущую позицию среди языков программирования для создания компьютерных игр.
- Только C# официально совместим с движком Unity, одной из самых востребованных и надежных платформ для разработки игр.
⁃ Какой доход вы можете ожидать, изучив C# для разработки игр? При усердной работе можно рассчитывать на заработок от 200 000 рублей в месяц!
✔️C# - основной язык для разработки приложений под Windows:
- Изначально C# создан Microsoft для использования в своих продуктах.
- Они также разработали среду разработки Visual Studio, где поддержка C# реализована на высшем уровне. В Visual Studio есть инструменты Windows Forms, позволяющие создавать интерфейсы для приложений с использованием C# за считанные минуты.
✔️C# и .NET: идеальный тандем.
- C# тесно связан с платформой .NET от Microsoft. Несмотря на то, что они разные, они гармонично дополняют друг друга.
C# — это язык программирования, а .NET — это набор библиотек и функций, к которым C# предоставляет доступ. Раньше программы на C# могли работать только в Windows, но с выпуском .NET Core в 2016 году стало возможным разрабатывать программное обеспечение на C# для различных операционных систем.
🎉А теперь главная причина: выгода 12750 рублей на обучение на курсе C# Developer. Professional до 28.11.2024 по ссылке: https://vk.cc/cF5ZzvРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
⁉️ Хотите понять, как работают потоки ввода/вывода в Java? Готовы создать свой первый сетевой чат?
Приглашаем на бесплатный вебинар 4 декабря в 20:00 мск., который пройдет в рамках курса «Java-разработчик».
Мы покажем, как с нуля создать консольный сетевой чат на Java, освоить работу с сетью и разобраться в потоках ввода/вывода.
Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.
Получите практический опыт работы с java. io, разберитесь, как работает сеть, и начните свой путь в мир профессиональной разработки на Java!
👉 Регистрируйтесь на вебинар прямо сейчас: https://vk.cc/cEZSlH
🎁 Только в "Черную пятницу", скидки на курс до 15%! Подробности у менеджеров.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Уже сегодня собеседование на Middle Java с разработчиком из МТС
20 ноября (уже сегодня) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.
Как это будет:
1. Мария Ядерцова ведущий Java-разработчик в МТС Диджитал и ex. Сбербанк-Технологии будет задавать реальные вопросы и задачи разработчику-добровольцу
2. Мария будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
3. В конце можно будет задать любой вопрос Марии
Что узнаешь на прямом эфире от ШОРТКАТ:
• Чего ждут от кандидатов на Middle позиции в Java-разработке
• Какие вопросы задают на интервью и зачем
• Как подготовиться к собесу, чтобы получить оффер
Это бесплатно? Бесплатно
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqvFh2Fp
Addressing Fragmentation in ZGC through Custom Allocators
Исследование направлено на уменьшение фрагментации в ZGC с помощью пользовательских распределителей. Цель исследования — уменьшить необходимость перемещения объектов в ZGC за счет использования распределителя на основе свободного списка.
https://inside.java/2024/06/19/thesis-zgc-fragmentation/
👉@BookJava
Как готовить свой код к виртуальным потокам
Олег Естехин
Виртуальные потоки в релизе с осени прошлого года. Все их очень ждали, а после релиза информации о том, что кто-то на них перешел, не так уж и много. То ли все очень просто, и все (кроме нас) уже давно переключились, и там нечего рассказывать. То ли все очень сложно, и все просто стесняются рассказать о своих фейлах. А нам бы очень не помешали подсказки — что и зачем менять в коде, чтобы он мог работать на виртуальных потоках.
Разобираемся, почему надо что-то менять, с какими проблемами можно столкнуться и как их диагностировать. Подсматриваем, что делали в JDK и известных фреймворках и библиотеках, чтобы их можно было использовать с виртуальными потоками. Примеряем эти решения на свой код.
Решаем, надо ли вообще что-то менять.
https://www.youtube.com/watch?v=dVh88WVS6NU
👉@BookJava
How to Use LazyConnectionDataSourceProxy with Spring Data JPA
Небольшая заметка о LazyConnectionDataSourceProxy — инструменте, который позволяет получать коннект к БД в Lazy-режиме, то есть в момент непосредственного выполнения запроса, что улучшает утилизацию коннектов и позволяет увеличить пропускную способность приложения.
https://vladmihalcea.com/lazyconnectiondatasourceproxy-spring-data-jpa/
👉@BookJava
👩💻 Java — один из самых востребованных языков, но не каждый разработчик умеет использовать его возможности по максимуму.
На курсе «Java Developer. Professional» вы научитесь создавать современные Java-приложения, освоите Spring WebFlux и Kafka, а также разберётесь в работе JVM изнутри.
Вас ждёт практическая работа с кодом, детальные разборы, ревью от экспертов и подходы, позволяющие писать эффективный и чистый код.
Начните свой путь к уровню Middle+! Используйте Java на 100%.
➡️ Пройти вступительный тест курса: https://vk.cc/cEUQh1
🎁 Только в "Черную пятницу", скидки на курс до 15%! Подробности у менеджеров.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Совет по Java 💡☕️
Как легко просуммировать все числа в Java-списке? Для этого мы можем использовать метод Java Stream reduce
👉@BookJava
RESOURCE_LOCAL JPA Transaction Type
Небольшая статья от Vlad Mihalcea, посвященная типу транзакции RESOURCE_LOCAL в JPA. Тип транзакции RESOURCE_LOCAL используется как стандартный в Spring Data JPA. Советуем ознакомится со статьей, если еще не слышали про такой тип транзакции.
https://vladmihalcea.com/resource_local-jpa-transaction-type/
👉@BookJava
Podlodka Java Crew возвращается с новой темой — Асинхронной архитектурой, чтобы помочь Java-разработчикам освоить самые востребованные подходы и инструменты.
Полезный нетворкинг, пять дней насыщенной программы, сессии утром и вечером.
Погружаемся в асинхронность вместе:
- Рулетка кейсов: "Spring, Micronaut, Quarkus и Helidon" — Григорий Кошелев и Андрей Когунь о плюсах и минусах каждого фреймворка 🛠️
- "Проектирование Event Driven-систем с DDD и Event Storming" — Кирилл Ветчинкин расскажет, как создавать масштабируемые и управляемые системы 📈
- Воркшоп "Apache EventMesh на практике" — Павел Бодячевский поможет внедрить Event Mesh в проект 🎯
- "Debezium: окно в асинхронный мир данных" — Евгений Ефименко раскроет секреты работы с данными в реальном времени 🔄
Присоединяйтесь, чтобы освоить асинхронность на практике: https://podlodka.io/javacrew
👩💻 Мечтаете научиться программировать на Java? Пора начинать!
🗓 20 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java-разработчик» от Otus.
Приходите на открытый урок, где мы шаг за шагом создадим игру «Угадай число» с нуля.
Вы познакомитесь с основами языка, поймете, как изменять код и менять функционал программы, освоите первые блоки, которые нужны для старта.
Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.
Хотите научиться создавать приложения? Узнать, как строятся программы на Java? Этот урок — ваш первый шаг в IT!
🔗 Ссылка на регистрацию: https://vk.cc/cEARfVРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Jextract — The Native Library Binding Extraction Tool
Проект Panama разработан для поддержки доступа к нативным библиотекам на Java. Foreign Function and Memory API (FFM API) упрощает взаимодействие между JVM и чужими API-интерфейсами. FFM API добавлена в JDK 22 для поддержки доступа к внешней памяти и вызова внешних функций. Инструмент Jextract анализирует заголовочные файлы нативных библиотек и генерирует Java-код для использования внешних функций и API памяти. О том, как использовать этот инструмент, подробно в гайде.
https://dev.java/learn/jvm/tools/complementary/jextract/
👉@BookJava
Java Language Futures - Fall 2024 Edition
0:00 - Intro
3:54 - Records
9:14 - Sealed classes
11:22 - Pattern matching
20:00 - Data Oriented Programming
29:00 - Implicitly declared classes & instance main methods
33:20 - with Expressions
38:20 - Flexible constructor bodies
48:10 - What's next
50:53 - Conclusion
https://www.youtube.com/watch?v=NNPN5tvjzqA
👉@BookJava
👩💻 Начали путь в программировании и хотите практики?
На вебинаре 4 декабря в 20:00 мск вы создадите свой первый сетевой чат на Java!
Вместе разберем, как работать с сетью, потоками и java .io.
Этот вебинар — отличная практика для начинающих.
Это ваш шанс выйти за рамки теории и сделать реальный проект, который отлично подойдет для портфолио.
Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.
➡️ Регистрируйтесь на вебинар, погружайтесь в мир Java и получайте скидку на большое обучение «Java-разработчик»: https://vk.cc/cFk5ZBРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Hibernate WITH RECURSIVE query
Небольшая статья Vlad Michalcea посвящена запросам WITH RECURSIVE в Hibernate. Описано, как они работают и как могут быть использованы для иерархических структур данных.
https://vladmihalcea.com/hibernate-with-recursive-query/
👉@BookJava
Hibernate JAVA_TIME_USE_DIRECT_JDBC setting
Небольшая статья Vlad Mihalcea о настройке в Hibernate, которая позволяет маппить типы времени из java.time напрямую, без прослойки в виде объекта Timestamp. А еще рассматривается то, какими драйверами для популярных БД это поддерживается.
https://vladmihalcea.com/hibernate-type-java_time_use_direct_jdbc/
👉@BookJava
🚀 Совет Spring 🚀
SSEEvent от Spring для плавных обновлений в реальном времени в ваших приложениях 🔥
👉@BookJava
Hack a Java application with the debugger
В статье автор рассматривает использование дебаггера для взаимодействия и изменения поведения JVM-приложений в режиме реального времени. Автор демонстрирует примеры изменения значений переменных и вызова методов приложения через отладчик, что позволяет вносить изменения в приложение без его перезапуска.
https://foojay.io/today/debugger-godmode-hacking-a-jvm-application-with-the-debugger/
👉@BookJava
🔥 Как сократить баги и ускорить релизы с помощью безопасной разработки
Ты создаешь крутые приложения, но баги и уязвимости продолжают отнимать драгоценное время, особенно когда горят дедлайны? 😬
Представь, что ты можешь защитить свой код на каждом этапе разработки и при этом сэкономить нервы и время! Мы разработали новый курс «Безопасность приложений для разработчиков», чтобы показать, что безопасность — это не про сложности, а про качество и экономию времени.
🎯 Почему стоит записаться?
· Ты научишься строить защиту ещё на этапе планирования, минимизируя уязвимости.
· Безопасность не замедлит процесс — мы покажем, как сохранять темп и укладываться в дедлайны.
· Меньше проблем на проде — ты будешь предотвращать уязвимости на ранних стадиях, избегая лишних правок.
👨💻 Авторы курса — эксперты Positive Technologies, одной из лидирующих компаний на рынке кибербезопасности. Ты будешь учиться у профессионалов, которые ежедневно работают над безопасностью приложений.
⏰ Старт курса 25 ноября, длительность — 3 недели, формат — онлайн. Учись в любое время и из любой точки.
Не трать время на исправления багов — записывайся на курс и учись предотвращать их заранее!
👉 [Забронировать место на курсе]
👩💻 Приглашаем вас принять участие в открытом уроке, который посвящён теме «Интернационализация и локализация в приложениях Spring». Вы узнаете, как эффективно реализовать процесс локализации в Spring-приложениях.
Мы рассмотрим работу с классом Locale, использование MessageSource в Spring Boot и без него, способы хранения и смены локали в веб-приложениях, а также локализацию в шаблонах Thymeleaf и сообщений Bean Validation.
Более того, обсудим, почему не стоит локализовывать исключения, и проанализируем исходный код для лучшего понимания процессов.
🗓 25 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Разработчик на Spring Framework» от Otus.
Программа вебинара:
✔️ Основы локализации в Spring.
✔️ Инициализация и конфигурация MessageSource.
✔️ Управление локалью в веб-приложениях.
✔️ Практические аспекты локализации.
Этот урок будет полезен Java-разработчикам с опытом 1–3 года, а также Kotlin-разработчикам.
🔗 Ссылка на регистрацию: https://vk.cc/cEWrao
🎁 Только в "Черную пятницу", скидки на курс до 15%! Подробности у менеджеров.Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Null Object Pattern to Avoid Null Pointer Exception with JEP-45
Небольшая заметка об использовании Null Object Pattern в контексте добавления поддержки примитивных типов в Pattern Matching в JEP-455.
https://foojay.io/today/exploring-new-features-in-jdk-23-null-object-pattern-to-avoid-null-pointer-exception-with-jep-455/
👉@BookJava
CompletableFuture Example: Crawler
Статья посвященная использованию Completable Future и содержит интересный пример его использования. Описана реализация веб-сканера (web crawler), который, начиная с Reddit/r/Java, будет по ссылкам искать новости, посвященные хакингу.
https://concurrencydeepdives.com/java-completablefuture-example/
👉@BookJava
👩💻 Открытый урок «Знакомство с виртуальными потоками Java»
🗓 21 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Advanced» от Otus.
Легковесные потоки были введены во многих языках программирования, таких как Go, Kotlin и другие. Теперь Java догнала другие языки по этой функциональности.
На вебинаре разберем:
✔️что такое виртуальные потоки;
✔️ чем они отличаются от обычных потоков;
✔️в чём плюсы и минусы их использования.
🔗 Ссылка на регистрацию: https://vk.cc/cEEAfJРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Илья Спицын, X5 Tech — jOOQ. Лекарство от Hibernate?
Поговорили об SQL-driven работе с БД. Спикер кратко сравнил инструменты и рассказал о преимуществах jOOQ для построения сложных запросов. Показал несколько примеров, где jOOQ может пригодиться разработчику.
Доклад будет полезен разработчикам, которые задумываются о поиске альтернативных инструментов для работы с БД.
https://youtu.be/SCSLoi4iiXA?si=D3Ez3kFFKFLB4zmK
👉@BookJava
Five Ways to Speed up Your Maven Builds
Как ускорить ваши Maven-сборки? «Поставить Gradle», — скажет кто-то. Ребята из Gradle считают иначе и даже подготовили статью на эту тему. По их мнению, в случае проблем со скоростью ваших сборок стоит присмотреться к профилям: возможно, некоторые плагины сильно замедляют сборку. С помощью профилей можно отключить часть плагинов для локальной или CI-сборки в зависимости от того, что вам нужно ускорить.
https://gradle.com/blog/five-ways-to-speed-up-your-apache-maven-builds/
👉@BookJava
Advancing AI by Accelerating Java on Parallel Architectures
Статья рассказывает про эволюцию платформы Java в контексте растущих требований к машинному обучению и параллельной обработке. Java, известная своей надежностью и масштабируемостью, адаптируется для создания высокопроизводительных, ориентированных на данные приложений. Это подробное исследование предназначено для опытных разработчиков Java, архитекторов программного обеспечения и энтузиастов, которые заинтересованы в использовании возможностей Java для внедрения инноваций в быстро растущих областях искусственного интеллекта и высокопроизводительных вычислений.
https://inside.java/2024/10/23/java-and-ai/
👉@BookJava
⁉️ Открытый урок «Интернационализация и локализация в приложениях Spring»
🗓 25 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Разработчик на Spring Framework» от Otus.
Узнайте, как эффективно реализовать интернационализацию и локализацию в Spring-приложениях.
На вебинаре разберем:
✔️работу с классом Locale, использование MessageSource в Spring Boot и без него;
✔️ способы хранения и смены локали в веб-приложениях;
✔️ локализацию в шаблонах Thymeleaf и сообщений Bean Validation;
✔️ обсудим, почему не стоит локализовывать исключения;
✔️ проанализируем исходный код для лучшего понимания процессов.
🔗 Ссылка на регистрацию: https://vk.cc/cEyGrBРеклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Т-Банк ищет Java-разработчиков уровня middle и senior
23 и 24 ноября можно пройти собеседование за выходные и получить оффер, если всем все понравится.
Вот что вас ждет в компании:
— Выстроенный процесс разработки и запуска проектов.
— Современный стек технологий — здесь быстро внедряют новое в работу.
— Разработка на актуальной версии Java.
— Баланс между использованием самописных и стандартных инструментов.
— Сильное комьюнити и обмен опытом на конференциях и митапах.
Узнайте больше и оставьте заявку до 20 ноября