bookjava | Unsorted

Telegram-канал bookjava - Библиотека Java разработчика

11248

Библиотека Java разработчика. Java, Spring, Maven, Hibernate По всем вопросам @evgenycarter № 4880864218

Subscribe to a channel

Библиотека Java разработчика

🚀 Изменения API в Java 23 🚀

https://javaalmanac.io/jdk/23/apidiff/22/

👉@BookJava

Читать полностью…

Библиотека Java разработчика

🏓 Знакомимся с Java на примере пинг-понга

Хотите узнать, как создавать программы на Java, даже если никогда не программировали?

Ждем вас на открытом вебинаре 24 сентября в 20:00 мск, где мы разберем:

- что такое программирование и язык Java;
- как создать игру пинг-понг с нуля на Java;
- как работать с двумерной графикой в Java.

Урок полезен для тех, кто хочет начать изучать Java с нуля и увидеть на практике, как создаются приложения.

Спикер Александр Фисунов — Senior Kotlin Developer в SSP Software на проекте ВТБ, опытный Java-разработчик и кандидат технических наук.

Встречаемся в преддверии старта курса «Специализация Java-разработчик».
Все участники вебинара получат специальную цену на обучение!

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cASXTf

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Библиотека Java разработчика

Совет

show-sql - это самый простой (но не самый лучший!) способ увидеть SQL, сгенерированный Hibernate. Вы можете немного улучшить его, включив форматирование, показ JPQL-запроса, сгенерировавшего запрос, и включив подсветку, которая добавляет некоторый цвет к выводу.

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Java

Урок 1. Java Start | Java для начинающих | Java с нуля
Урок 2. Java переменные | Java типы данных | Java для автоматизаторов | Урок 2
Урок 3. Java комментарий | Java как вывести сообщения в консоль | Java конкатенация строк | Урок 3
Урок 4. Java арифметические операции | Java для автоматизаторов | строк | Урок 4
Урок 5. Java библиотеки классов | Java Scanner | строк | Урок 5
Урок 6. Java String | Класс String и его методы
Урок 7. Условный оператор if в Java | Оператор switch | Конструкция if-else |

источник

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Как создавать код, который легко модифицировать и поддерживать?

Узнайте на открытом вебинаре «Практическое руководство по применению SOLID-принципов» 16 сентября в 20:00 мск, где мы разберем:

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

Урок для backend и fullstack-разработчиков, архитекторов ПО и начинающих программистов.

Встречаемся в преддверии старта курса «Архитектура и шаблоны проектирования». Все участники вебинара получат специальную цену на обучение!

Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие https://vk.cc/cANrIx.

Читать полностью…

Библиотека Java разработчика

Совет по SpringFramework 💡

В SpringFramework есть класс DataSize, который может помочь вам с преобразованием между единицами размера от байтов до терабайтов. Сумма должна быть типа long. Дробные числа не поддерживаются.

https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/util/unit/DataSize.html

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Совет по Spring Boot💡

Spring Boot Custom Bean Validations с Jakarta Constraint Validator, группировка ограничений проверки, последовательность групп и i18n

https://gist.github.com/aoudiamoncef/9eeece142d1ef0faa4d06216a41282a2

👉@BookJava

Читать полностью…

Библиотека Java разработчика

📚 Пройди тест на знание Java и получи доступ к 6️⃣🔤 открытым урокам курса «Разработчик на Spring Framework».

Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса необходимо пройти входное тестирование: ответить на 21 вопрос и уложиться в тайминг.

➡️ НАЧАТЬ ТЕСТИРОВАНИЕ

А еще, приглашаем посетить наш бесплатный открытый урок «Как эффективно использовать OAuth 2 в Spring-приложениях?», который пройдет онлайн, 13 сентября в 20:00 мск.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Библиотека Java разработчика

JDK 23: Чего ожидать?

JDK 23, выпуск которого запланирован на 17 сентября 2024 года, принесет множество значительных улучшений и усовершенствований в язык программирования Java и его поддерживающую экосистему. Этот выпуск станет второй подряд версией JDK без долгосрочной поддержки (non-LTS), после предыдущего LTS-релиза JDK 21.

Стоит отметить, что следующий запланированный LTS-релиз комплекта для разработки Java — JDK 25, который ожидается в сентябре 2025 года и, как предполагается, будет следовать той же модели долгосрочной поддержки, что и предыдущие LTS-версии.

💡 JDK 23 сейчас находится на стадии кандидата в релизы, что означает, что его функции завершены. Новые JEP больше не будут добавляться в этот выпуск.

💡 Кандидат в релизы (Release Candidate, RC) в контексте JDK — это как финальная версия программного обеспечения перед его официальным выпуском. Оно почти готово для публичного релиза, но проходит последний этап тестирования, чтобы выявить любые мелкие проблемы или ошибки, которые могли быть пропущены. Если серьезные проблемы не обнаружены, именно эта версия RC будет выпущена для всех. Это финальный шаг, чтобы убедиться, что программное обеспечение стабильно и готово для широкого использования.

https://www.unlogged.io/post/jdk-23-what-to-expect

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Что находится внутри класса Math?

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Java varargs

Java varargs (variable arguments) — это механизм, предоставляемый Java, который позволяет методу принимать переменное количество аргументов одного типа. Он позволяет передавать любое количество аргументов заданного типа в метод, без явного указания массива аргументов.

Для объявления переменного количества аргументов в Java используется троеточие (...) после типа данных аргумента в определении метода.

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Подборка Telegram каналов для программистов

Системное администрирование 📌

/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux

1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus

Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах

GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
/channel/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
/channel/game_devv Все о разработке игр

Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов

БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста

QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика

Шутки программистов 📌
/channel/itumor Шутки программистов

Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров

Английский 📌
/channel/UchuEnglish Английский с нуля

Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике

Excel лайфхак📌
/channel/Excel_lifehack

/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)

Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT

Читать полностью…

Библиотека Java разработчика

Гринатом, ИТ-интегратор Росатома, в поиске Java-разработчика в команду по проектированию и разработке отраслевой системы электронного документооборота. Человека, знакомого с Java от и до и работающего с языком программирования не менее 3 лет.

Приветствуется знание SQL, GraalVM, библиотек и фреймворков, а также опыт написания юнит- и интеграционных тестов и понимание работы в CI/CD.

Если это про вас, откликайтесь на вакансию по ссылке: https://voronezh.hh.ru/vacancy/105691838

Читать полностью…

Библиотека Java разработчика

👩‍💻 Как эффективно использовать OAuth 2 в Spring-приложениях?

Ждем вас на открытом вебинаре 13 сентября в 20:00 мск.

где мы разберем:

✔️ что такое OAuth 2 и как он работает в Spring-приложениях;
✔️ какие роли и процессы задействованы в фреймворке авторизации;
✔️ его расширения;
✔️ ответы на все возникающие вопросы.

Урок идеально подходит для Java- и Kotlin-разработчиков.

Встречаемся в преддверии старта курса «Разработчик на Spring Framework».
Все участники вебинара получат специальную цену на обучение!

📌 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cAmmWP

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Библиотека Java разработчика

Amplicode учит вашу IDE говорить на языке Spring Boot! 

Amplicode – многофункциональный плагин для IntelliJ IDEA Community и Ultimate, упрощает и ускоряет работу с технологиями Spring Boot, JPA, Docker, Kafka, Liquibase, MapStruct и т.д.

Основные возможности: 

⚡ Навигация по проекту согласно архитектуре Spring приложения  
⚡ Создание объектов сразу в терминах фреймворка вместо Java классов: контроллеры, репозитории, сервисы, сущности, события, DTO, мапперы и т.д.
⚡ Палитра и инспектор, позволяющие видеть опции, доступные разработчику в текущем контексте
⚡ Умные инжекции, подсказки и исправление ошибок

Это малая часть того, на что способен Amplicode. В настоящий момент возможности доступны абсолютно бесплатно!

Сделано с любовью к разработчикам командой, создавшей суперпопулярный плагин JPA Buddy ❤️

Попробовать Amplicode

Посмотрите как Amplicode помогает разрабатывать на Spring Boot в IntelliJ IDEA!

Читать полностью…

Библиотека Java разработчика

Разрешаем фронту подписаться на бэкенд. Server Sent Events на Java Spring Boot.

Простой способ избежать постоянного опроса сервера. Событийный способ работы.

источник

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Зачем используется Serial Version UID? Что если не определить его?

Сериализуемый класс явно или неявно, но всегда имеет serialVersionUID. Это число типа long, которое представляет собой «версию» сериализационной формы класса. Если при сериализации/десериализации значения serialVersionUID не совпадают – будет выброшено InvalidClassException.

Для совпадающих версий работает мощная поддержка эволюции класса – совместимые изменения, такие как добавление или удаление полей, не приводят к InvalidClassException.

Неявное значение вычисляется автоматически в рантайме, и включает в себя информацию о имени типа, списке родителей и полей (с точностью до коллизии). По смыслу это похоже на хэш-сумму класса. Соответственно, при любом изменении класса значение изменится, и поддержка эволюции окажется бесполезной.

Всегда лучше явно указывать любое значение serialVersionUID, и изменять только в тех редких случаях, когда требуется сломать совместимость с предыдущими версиями. Стандартная утилита JDK serialver умеет «угадывать» авто-генерированное значение. Она используется чтобы зафиксировать значение для включения поддержки эволюции созданного ранее класса.

Явное значение устанавливается в переменную static final long serialVersionUID.

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Станьте AI-разработчиком на Python и зарабатывайте от 150.000₽ в месяц 🔥🔥🔥

Мы научим вас создавать и тренировать нейронные сети, и вы сможете:

1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тыс. ₽ в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тыс. ₽ за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате

На интенсиве будет много практики: создадим 9 нейросетей за 1 вечер:

🧬 Прогноз стоимости золота
🧬 Сегментация изображения для робота доставщика
🧬 Трекинг людей на видео

Ведущий интенсива - Senior AI-разработчик и основатель Университета искусственного интеллекта

🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайшую среду

Читать полностью…

Библиотека Java разработчика

Подборка Telegram каналов для программистов

Системное администрирование 📌

/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux

1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах

Программирование Python 📌
/channel/pythonofff Python академия. Учи Python быстро и легко🐍
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python Rus

Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах

GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub

Базы данных (Data Base) 📌
/channel/database_info Все про базы данных

Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin

Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано

Разработка игр 📌
/channel/game_devv Все о разработке игр

Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
/channel/books_reserv Книги для программистов

БигДата, машинное обучение 📌
/channel/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/coddy_academy Полезные советы по программированию
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста

QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика

Шутки программистов 📌
/channel/itumor Шутки программистов

Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_1 Статьи из "Хакера"

Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров

Английский 📌
/channel/UchuEnglish Английский с нуля

Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике

Excel лайфхак📌
/channel/Excel_lifehack

/channel/tikon_1 Новости высоких технологий, науки и техники💡
/channel/mir_teh Мир технологий (Technology World)

Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT

Читать полностью…

Библиотека Java разработчика

Amplicode Launch Event – конвейер для Spring-приложений прямо в IntelliJ IDEA

На прошлой неделе команда Amplicode провела митап, который длился целых 3,5 часа! За это время состоялось шесть докладов, затрагивающих все аспекты разработки приложений на Spring — от настройки окружения до создания бизнес-логики и внедрения админки на React Admin.

https://habr.com/ru/companies/haulmont/articles/842770/

👉@BookJava

Читать полностью…

Библиотека Java разработчика

👩‍💻 Освойте Java-разработку с нуля и станьте востребованным специалистом!

Ждём вас на онлайн-курсе «Специализация Java-разработчик». Только живые вебинары, вы освоите самые востребованные инструменты и лучшие практики.

Ознакомится с курсом можно на бесплатном открытом уроке «Знакомимся с Java на примере пинг-понга».

📌 Урок пройдет 24 сентября в 20:00 мск.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cAEVwX

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Читать полностью…

Библиотека Java разработчика

Java Core

Коллекции в Java: List, Set и Map
Коллекции в Java: очередь и стек
Полезные советы по работе с BigDecimal в Java
SequencedCollection и SequencedSet в Java 21
SequencedMap в Java 21
Java 21: Pattern matching в switch
Интерфейсы Iterator и Iterable в Java
Интерфейсы Comparable и Comparator в Java

источник

👉@BookJava

Читать полностью…

Библиотека Java разработчика

JSpecify 1.0.0 и nullability в Java

Рады сообщить, что JSpecify 1.0.0 теперь доступен в Maven Central: четыре аннотации, связанные с nullability — @Nullable, @NonNull, @NullMarked и @NullUnmarked — стали официальными, и, что немаловажно, обратная совместимость с ними будет гарантирована.

Проекты и группы, входящие в консенсус, включают:

OpenJDK
EISOP
PMD
Android, Error Prone, Guava (Google)
Kotlin, IntelliJ (JetBrains)
Azure SDK (Microsoft)
Sonar
Spring

https://www.infoq.com/news/2024/08/jspecify-java-nullability/

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Уже завтра тестовое собеседование на Middle Java-разработчика

Завтра, 11 сентября в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.

Как это будет:
1. Алексей Ушаровский, старший разработчик в немецкой Deutsche Boerse с опытом работы в Oracle, Сбертех, ePam и NCR будет задавать реальные вопросы и задачи разработчику-добровольцу
2. Алексей будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
3. В конце можно будет задать любой вопрос Алексею

Что узнаешь на прямом эфире от ШОРТКАТ:
- Чего ждут от кандидатов на Middle позиции в Java-разработке
- Какие вопросы задают на интервью и зачем
- Как подготовиться к собесу, чтобы получить оффер

Это бесплатно?
Бесплатно

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot

Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2Vtzqvjx4Xh

Читать полностью…

Библиотека Java разработчика

👩‍💻 Как правильно использовать области действия переменных в Java и как этот навык поможет вам при подготовке к сертификации?

🔌 Ждем вас на открытом вебинаре 16 сентября в 20:00 мск.

Где мы разберем:

✔️ обзор областей действия переменных;
✔️ практические примеры: как области действия переменных влияют на поведение программы и как их правильно использовать;
✔️ подготовку к сертификации: как знание областей действия переменных может помочь вам при подготовке к экзаменам, таким как OCAJP.

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

🎙 Спикер Дмитрий Коган — опытный разработчик, председатель совета предприятия в DXC, публицист, спортивный журналист и блогер.

Встречаемся в преддверии старта курса «Углубленное изучение языка Java».
Все участники вебинара получат специальную цену на обучение!

🎁 Подарок личная консультация с руководителем курса Дмитрием Коганом, всем купившим курс после открытого урока.

➡️ Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cAAQDa

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Библиотека Java разработчика

Вопросы с реального собеседования Senior Java Developer

00:00 Приветствие
01:34 Введение
02:23 Разбор вопросов и ответов
03:10 Может ли разработчик управлять памятью в Java?
03:40 Как потоки связаны с памятью?
07:28 Spring Context и зачем он нужен?
08:10 Как работает аннотация @ Transactional?
09:45 Как работает транзакция?
10:30 Как работает TDD?
14:17 Выводы

https://www.youtube.com/watch?v=sMGYAucH9yY

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Подборка из 10 репозиториев GitHub для изучения Java

1. Awesome Java: https://github.com/akullpp/awesome-java
2. Modern Java - A Guide to Java 8: https://github.com/winterbe/java8-tutorial
3. Java Design Patterns: https://github.com/iluwatar/java-design-patterns
4. Spring Framework: https://github.com/spring-projects/spring-framework
5. Algorithms: https://github.com/TheAlgorithms/Java
6. Spring Boot Tutorial: https://github.com/RameshMF/spring-boot-tutorial
7. Baeldung Java and Spring Tutorials: https://github.com/eugenp/tutorials
8. Google Style Guides: https://github.com/google/styleguide
9. Netflix - Open Source Java Projects: https://github.com/Netflix
10. Ultimate Java Resources: https://github.com/dubesar/Ultimate-Java-Resources

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Есть ли в Java goto?

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

На низком же уровне, от него никуда не деться, и в этом нет ничего плохого. Операция goto присутствует и в байткоде JVM. Компилятор заботится о её разумном использовании. В неё компилируются циклы, операторы ветвления, обработчики исключений.

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

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

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Интересные приёмы, взятые из исходников Android

В процессе чтения исходников Android SDK я замечал интересные механики и приёмы написания кода, какие-то из них до сих пор используются при создании новых библиотек, другие, напротив, заменены более логичными и понятными конструкциями. В этой статье я постараюсь перечислить всё, что смог заметить сам при изучении исходников Android'а. Сразу отмечу: эта статья не претендует на полноту материала и возможно вы нашли даже больше интересных моментов при чтении кода, ладно, погнали, короче!

https://habr.com/ru/companies/ruvds/articles/838330/

👉@BookJava

Читать полностью…

Библиотека Java разработчика

Совет по Java💡

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

👉@BookJava

Читать полностью…
Subscribe to a channel