Библиотека джависта | 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
加入频道
Ответ на пост

Reader - абстрактный класс, описывающий символьный ввод;
BufferedReader - буферизованный входной символьный поток;
CharArrayReader - входной поток, который читает из символьного массива;
FileReader - входной поток, читающий файл;
FilterReader - абстрактный класс, предоставляющий интерфейс для классов-надстроек;
InputStreamReader - входной поток, транслирующий байты в символы;
LineNumberReader - входной поток, подсчитывающий строки;
PipedReader - входной канал;
PushbackReader - входной поток, позволяющий возвращать символы обратно в поток;
StringReader - входной поток, читающий из строки.
Состояние гонки (race condition) - ошибка проектирования многопоточной системы или приложения, при которой эта работа напрямую зависит от того, в каком порядке выполняются потоки. Состояние гонки возникает, когда поток, который должен исполнится в начале, проиграл гонку и первым исполняется другой поток: поведение кода изменяется, из-за чего возникают недетерменированные ошибки.
Всем привет!
Программа лояльности "Мультибонус" для клиентов ВТБ и Почта Банка существует с 2013 года. С 2019 года ВТБ создало дочернюю компанию "Мультибонус", для того чтобы собрать отдельную команду, которая сделает прорыв в этом напралении. Никакого легаси и атмосфера стартапа под крылом большого банка.
Сейчас мы набираем в команду backend специалистов

Lead Backend Developer (Java)

Senior Backend developer (Java)
CSS, Cascading Style Sheets (каскадные таблицы стилей) - формальный язык описания внешнего вида документа, написанного с использованием языка разметки, который применяется к элементам web-страницы для управления их видом и положением.

Основной целью разработки CSS являлось разделение описания логической структуры web-страницы, которое производится с помощью HTML или других языков разметки от описания внешнего вида этой web-страницы, которое производится с помощью CSS.
#вопросы_с_собеседований
Как создать собственный протокол сериализации?
🍃 В сентябре многие родители задумываются о будущем детей: хочется увлечь ребёнка тем, что пригодится в жизни. Таким ответственным родителям мы рекомендуем модульные курсы GeekSchool, где ученики тренируют логику, развивают творческое мышление, навыки решения практических задач и привычку работать на результат. Такой опыт пригодится в любой отрасли и на любой должности.

👩‍🏫 Занятия – это живые вебинары с преподавателями, в любой момент можно задать вопрос и получить ответ. После урока – практическое задание, преподаватель проверяет результат и даёт обратную связь. В конце каждого курса ученики создают финальный проект: например, готовый сайт или компьютерную игру.

За один учебный год можно освоить три направления и решить, что нравится больше. Все подробности здесь:
https://proglib.io/w/5ddca3c6
Для создания собственного протокола сериализации достаточно реализовать интерфейс Externalizable, который содержит два метода:

 void writeExternal(ObjectOutput out) throws IOException;
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException;
Неизменяемость (immutability) помогает облегчить написание многопоточного кода. Неизменяемый объект может быть использован без какой-либо синхронизации. К сожалению в Java нет аннотации @ Immutable, которая делает объект неизменяемым, для этого разработчикам нужно самим создавать класс с необходимыми характеристиками. Для этого необходимо следовать некоторым общим принципам: инициализация всех полей только конструкторе, отсутствие методов setX() вносящих изменения в поля класса, отсутствие утечек ссылки, организация отдельного хранилища копий изменяемых объектов и т.д.
Хотите работать в IT-сфере и получать достойную зарплату? Изучайте Java! Присоединяйтесь к бесплатному интенсиву, где вы познакомитесь с основами популярного языка и напишете своё первое приложение всего за три дня.

Бесплатная регистрация по ссылке: 👉 https://clc.am/k1vzRg

Почему Java — отличный выбор?
Имеет дружественный синтаксис.
Один написанный код будет работать на Windows, Linux и macOS.
3 млрд устройств работают на Java, в том числе Android.

💣 Спикер интенсива — специалист с опытом более 15 лет в сфере Java-разработки, директор центра SymbioWay Даниил Пилипенко.

🎁 Проявите себя, напишите лучший проект и получите грант на обучение в онлайн-университете Skillbox!
JDBC, Java DataBase Connectivity (соединение с базами данных на Java) — промышленный стандарт взаимодействия Java-приложений с различными СУБД. Реализован в виде пакета java.sql, входящего в состав Java SE.

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

Поговорим про микросервисную архитектуру, рассмотрим применение Java 11 в контейнерной среде, сделаем тесты на примере Spring Boot и посмотрим на частые ошибки при проектировании Java-приложений.

Наши спикеры:
Дмитрий Чуйко, Senior Performance Architect в BellSoft, участник OpenJDK
Маргарита Богданова, Team Lead, Architect, DataArt
Александр Линьков, Tech Lead, Leroy Merlin

Комментарии от экспертов:
Алексей Картынник, .NET-разработчик и автор ютуб-канала АйТиБорода
Евгений Нестеров, System Architect в МВидео

Когда: 24 сентября в 18:00
Регистрация и подробности докладов
Чат митапа
Потоки-демоны работают в фоновом режиме вместе с программой, но не являются неотъемлемой частью программы. Если какой-либо процесс может выполняться на фоне работы основных потоков выполнения и его деятельность заключается в обслуживании основных потоков приложения, то такой процесс может быть запущен как поток-демон с помощью метода setDaemon(boolean value), вызванного у потока до его запуска. Метод boolean isDaemon() позволяет определить, является ли указанный поток демоном или нет. Базовое свойство потоков-демонов заключается в возможности основного потока приложения завершить выполнение потока-демона (в отличие от обычных потоков) с окончанием кода метода main(), не обращая внимания на то, что поток-демон еще работает.
23 сентября в 19:00 (МСК) мы будем проводить вебинар “Зачем нужна математика в Data Science”.

Спикеры вебинара:
Алексей Никитин.
Кандидат физико-математических наук, доцент факультета ВМК МГУ. Читает лекции по математическому анализу первых двух курсов на факультете ВМК МГУ и ФКН ВШЭ.
Леонид Крицков. Кандидат физико-математических наук, доцент факультета ВМК МГУ. Автор задачника "Алгебра и аналитическая геометрия: теоремы и задачи", используемого в преподавании на факультете ВМК МГУ.
Татьяна Захарова. Кандидат физико-математических наук, доцент факультета ВМК МГУ. Имеет опыт преподавания теории вероятностей и математической статистики более 28 лет.

На этом вебинаре мы расскажем:
• Data Science и математика: почему одно без другого невозможно
• Пример. Как математика описывает нейронную сеть
• Области Data Science и связанные разделы математики
• Где этому можно научиться

Ведущим будет Артём Дрёмов, CEO Proglib
Будет полезно всем, кто хочет стать специалистом в анализе данных.