Библиотека джависта | 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
加入频道
☕️ Адаптер (Adapter) - Объект, обеспечивающий взаимодействие двух других объектов, один из которых использует, а другой предоставляет несовместимый с первым интерфейс.
☕️ Мост (Bridge) - Структура, позволяющая изменять интерфейс обращения и интерфейс реализации класса независимо.
☕️ Компоновщик (Composite) - Объект, который объединяет в себе объекты, подобные ему самому.
☕️ Декоратор (Decorator) - Класс, расширяющий функциональность другого класса без использования наследования.
☕️ Фасад (Facade) - Объект, который абстрагирует работу с несколькими классами, объединяя их в единое целое.
☕️ Приспособленец (Flyweight) - Это объект, представляющий себя как уникальный экземпляр в разных местах программы, но по факту не являющийся таковым.
☕️ Заместитель (Proxy) - Объект, который является посредником между двумя другими объектами, и который реализует/ограничивает доступ к объекту, к которому обращаются через него.
#вопросы_с_собеседований
Какой символ является разделителем при указании пути в файловой системе?
Для различных операционных систем символ разделителя различается. Для Windows это \, для Linux - /.

В Java получить разделитель для текущей операционной системы можно через обращение к статическому полю File.separator.
#вопросы_с_собеседований
Чем отличаются и что общего у InputStream, OutputStream, Reader, Writer?
☕️ InputStream и его наследники - совокупность для получения байтовых данных из различных источников;
☕️ OutputStream и его наследники - набор классов, определяющих потоковый байтовый вывод;
☕️ Reader и его наследники определяют потоковый ввод символов Unicode;
☕️ Writer и его наследники определяют потоковый вывод символов Unicode.
#вопросы_с_собеседований
Для чего нужны функциональные интерфейсы ToDoubleFunction<T>, ToIntFunction<T> и ToLongFunction<T>?
☕️ ToDoubleFunction<T> - операция, принимающая аргумент класса T и возвращающая результат типа Double;
☕️ ToLongFunction<T> - операция, принимающая аргумент класса T и возвращающая результат типа Long;
☕️ ToIntFunction<T> - операция, принимающая аргумент класса T и возвращающая результат типа Integer.
#вопросы_с_собеседований
Стоит ли волноваться о многопоточной безопасности, работая с сервлетами?
Методы init() и destroy() вызываются один раз за жизненный цикл сервлета — поэтому по поводу них беспокоиться не стоит.

Методы doGet(), doPost(), service() вызываются на каждый запрос клиента и т.к. сервлеты используют многопоточность, то здесь задумываться о потокобезопасной работе обязательно. При этом правила использования многопоточности остаются теми же: локальные переменные этих методов будут созданы отдельно для каждого потока, а при использовании глобальных разделяемых ресурсов необходимо использовать синхронизацию или другие приёмы многопоточного программирования.
Задача, которая не ограничит твою фантазию — создай полезный lifestyle-смартап на платформе SmartMarket. Присоединяйся к онлайн-хакатону SberCode и прими участие в борьбе за 1 000 000 рублей.

Подать заявку можно до 21 февраля на сайте sbercode.tech/sber-devices
#вопросы_с_собеседований
Для чего используются атрибуты сервлетов и как происходит работа с ними?
Сбер и JUG Ru Group совместно организуют бесплатный онлайн-митап для Java-разработчиков.
Тема — Enterprise-разработка на Java: от деплоймента до архитектуры. 18 февраля, 17:00 (Мск, GMT 3).

В программе:
— Виталий Куценко, «Послание про архитектуру приложений самому себе в прошлое»;
— Намыс Букаев, «Антипаттерны или темная сторона разработки»;
— Дмитрий Бугайченко, «Stateful streaming: кейсы, паттерны, реализации»;
— Дмитрий Чуйко, «Docker Who: Маленькие контейнеры сквозь время и пространство».

Задавайте вопросы, участвуйте в дискуссиях и выигрывайте промокоды магазина киберспортивного мерча Fragstore и билеты на конференции JUG Ru Group.

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

В веб-приложении существует возможность работы с атрибутами используя методы setAttribute(), getAttribute(), removeAttribute(), getAttributeNames(), которые предоставлены интерфейсами ServletRequest, HttpSession и ServletContext (для областей видимости request, session, context соответственно).
#вопросы_с_собеседований
Какой метод HTTP не является неизменяемым?
Кому не спится и хочется поговорить, мы сейчас ненадолго онлайн в ClubHouse - https://www.joinclubhouse.com/room/MR0dgWAa
HTTP метод называется неизменяемым, если он на один и тот же запрос всегда возвращает одинаковый результат. HTTP методы GET, PUT, DELETE, HEAD и OPTIONS являются неизменяемыми, поэтому необходимо реализовывать приложение так, чтобы эти методы возвращали одинаковый результат постоянно. К изменяемым методам относится метод POST, который и используется для реализации чего-либо, что изменяется при каждом запросе.

К примеру, для доступа к статической HTML-странице используется метод GET, т.к. он всегда возвращает одинаковый результат. При необходимости сохранять какую-либо информацию, например в базе данных, нужно использовать POST метод.
PROGLIB IN DA HOUSE

А если быть точнее, в ClubHouse

Что это такое? Простыми словами, это живые подкасты, в которых каждый может высказать свою точку зрения, делиться мыслями, участвовать в дискуссиях и просто слушать

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

Вчера мы протестировали приложение, а уже сегодня готовы провести общую беседу в 19:00 на тему: «Что такое ClubHouse и как его использовать айтишнику»

Хотите поучаствовать? Переходите в наш чат. Вся информация также будет тут.
Через 5 минут начинаем конфу, заходите:

https://www.joinclubhouse.com/event/PD4bY4da