Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.86K photos
38 videos
42 files
2.64K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
Весь HTML-код рекомендуется писать в нижнем регистре: это относится к названиям элементов, названиям атрибутов, значениям атрибутов (кроме текста/CDATA), селекторам, свойствам и их значениям (кроме текста).

Не рекомендуется

<A HREF="/">Домой</A>

Рекомендуется

<img src="forest.jpg" alt="Лес">
26 июля пройдет онлайн-митап о хакатоне CRM Hack

Российский ИТ-разработчик - Т1 Консалтинг готовится к запуску CRM нового поколения. Участникам хакатона нужно предложить MVP самостоятельных решений, которые в будущем смогут стать функциональными модулями системы. Призовой фонд хакатона 500 000 руб, прием заявок до 5 августа.

На митапе эксперты Т1 Консалтинг подробнее расскажут о функционале будущей CRM и технологической платформе, на которой будет строиться система.

Митап будет интересен как участникам, которые уже зарегистрировались на хакатон, так и тем, кто только думает об участии или слышит о CRM Hack впервые.

Для чего участвовать: узнать подробнее о задачах хакатона и задать вопросы по участию

📆 Регистрируйся и добавляй в календарь: crmhack.ru
📣📣📣 Java Hiring Week
26-30 июля, 2021 | онлайн

Мы приглашаем Java разработчиков уровня Middle/Senior/Lead/Architect с опытом работы от 2 лет стать частью нашей команды экспертов EPAM Anywhere.

Пройди техническое интервью и в течение 48 часов получи предложение присоединиться к EPAM Anywhere и бонус до 375 000 руб!
Сумма бонуса фиксирована независимо от оклада.

Хочешь узнать больше? Заполни регистрационную форму и узнай о платформе EPAM Anywhere и Java Hiring Week!
📌Зарегистрироваться -> https://epa.ms/1ZkHcl
Semaphore – это новый тип синхронизатора: семафор со счётчиком, реализующий шаблон синхронизации Семафор. Доступ управляется с помощью счётчика: изначальное значение счётчика задаётся в конструкторе при создании синхронизатора, когда поток заходит в заданный блок кода, то значение счётчика уменьшается на единицу, когда поток его покидает, то увеличивается. Если значение счётчика равно нулю, то текущий поток блокируется, пока кто-нибудь не выйдет из защищаемого блока. Semaphore используется для защиты дорогих ресурсов, которые доступны в ограниченном количестве, например подключение к базе данных в пуле.
#вопросы_с_собеседований SQL
Что лучше использовать: JOIN или подзапросы?
Java — один из популярнейших языков программирования. От программ для пылесоса и смартфона до серверных приложений в больших корпорациях — технологии Java есть практически везде.

Узнай больше о возможностях применения языка на онлайн-лекции «Зачем изучать Java и как делать это эффективно» — и создавай IT-решения в сфере fintech, big data и для других сфер бизнеса.

Когда: 28 июля в 16:00
Где: на YouTube-канале NIX
Спикер: Елена Хацько, Java Developer Lead в NIX

В программе:
● Java: актуальность, перспективы и популярность направления;
● где и как используется Java;
● как проходит учеба в NIX и как попасть на бесплатную программу обучения по Java.

Присоединяйся по ссылке.


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

Java — твой идеальный путь к успеху в IT!
Обычно лучше использовать JOIN, поскольку в большинстве случаев он более понятен и лучше оптимизируется СУБД (но 100% этого гарантировать нельзя). Так же JOIN имеет заметное преимущество над подзапросами в случае, когда список выбора SELECT содержит столбцы более чем из одной таблицы.

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

Команда практикующих безопасников школы HackerU приглашает вас на новый интенсив «RED, BLUE & APPSEC»

Что будет на интенсиве?

— 3 дня практических занятий онлайн по трем направлениям ИБ
— Разбор основных инструментов и техник анализа безопасности кода
— CTF-турнир
— Расскажем о карьерных лайфхаках на рынке ИБ и существующих программах обучения

Для всех участников интенсива будут доступны бонусы % на курсы по кибербезопасности от HackerU!

Записывайтесь на интенсив по ссылке и начните свой путь в кибербезопасности: https://is.gd/MbjdQn
Автор курса в Skypro

Мы в Skypro хотим сделать качество жизни лучше через доступное и высокооплачиваемое образование.

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

Что можно будет делать?

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

Что мы ждем?

- опыт разработки Java 8 и выше.
- знание Spring Framework.
- опыт работы с базами данных.
- понимание трендов Java разработки.

Что предлагаем:

- опыт в создании образовательных продуктов.
- совершенствования навыка публичных выступлений.
- рост личного бренда.
- возможность вырастить сотрудников себе в команду.
- взаимодействие с командой Java разработчиков из других компаний (интересные холивары).
- научитесь объяснять сложные вещи – просто.
- 10-40 часов занятость в неделю, можно совмещать с основной работой.
- платим вторую ЗП, обсуждаем индивидуально.

Можете писать в телеграмм @gavrilovalova и [email protected].
Библиотека джависта | Java, Spring, Maven, Hibernate
#вопросы_с_собеседований Как принудительно запустить поток?
Никак. В Java не существует абсолютно никакого способа принудительного запуска потока. Это контролируется JVM и Java не предоставляет никакого API для управления этим процессом.
Проектирование голосовых интерфейсов - новое направление в разработке

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

О том, как нужно и как не нужно проектировать голосовые интерфейсы 28 июля на онлайн-митапе расскажет Михаил Пайсон, директор по b2b2c-продуктам, SberDevices. Вы узнаете о частых ошибках при разработке голосовых интерфейсов и почему стандартные подходы разработки не подходят для создания сценариев с виртуальными ассистентами.

Хотите узнать больше? Регистрируйтесь на митап от SberDevices и присоединяйтесь к трансляции 28 июля. Ссылка: developers.sber.ru
Learn Microservices with Spring Boot (2020)
Автор: Moisés Macero García
Количество страниц: 444

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

Скачать книгу
#вопросы_с_собеседований
Какие классы поддерживают чтение и запись потоков в компрессированном формате?
☕️ DeflaterOutputStream - компрессия данных в формате deflate.
☕️ Deflater - компрессия данных в формат ZLIB.
☕️ ZipOutputStream - потомок DeflaterOutputStream для компрессии данных в формат Zip.
☕️ GZIPOutputStream - потомок DeflaterOutputStream для компрессии данных в формат GZIP.
☕️ InflaterInputStream - декомпрессия данных в формате deflate.
☕️ Inflater - декомпрессия данных в формате ZLIB.
☕️ ZipInputStream - потомок InflaterInputStream для декомпрессии данных в формате Zip.
☕️ GZIPInputStream - потомок InflaterInputStream для декомпрессии данных в формате GZIP.
Какова роль equals() и hashCode() в HashMap?

hashCode позволяет определить корзину для поиска элемента, а equals используется для сравнения ключей элементов в списке корзины и искомого ключа.
☕️ Пример проекта Java Backend: DDD, микросервисы, Spring Cloud и AWS (Часть 3)

Domain Driven Design дает большие возможности по созданию крупных проектов, которые в будущем становятся надежными и легко масштабируемыми. Как пройти полный проектный цикл, от бизнес-модели до AWS?

https://proglib.io/sh/EJjfvX67Z3
Как и когда происходит увеличение количества корзин в HashMap?

Помимо capacity у HashMap есть еще поле loadFactor, на основании которого, вычисляется предельное количество занятых корзин capacity * loadFactor. По умолчанию loadFactor = 0.75. По достижению предельного значения, число корзин увеличивается в 2 раза и для всех хранимых элементов вычисляется новое «местоположение» с учетом нового числа корзин.