seniorjavist | Unsorted

Telegram-канал seniorjavist - Senior Java Developer

-

Изучаем Java. По вопросам сотрудничества: @seniorvladislav

Subscribe to a channel

Senior Java Developer

🔞 Java как секс!

Если зубрить ее только по книжкам, то кроме теории и деградации, ты ничему не научишься

В канале Java, полегче 🥵! ты найдешь лучшие практики написания кода. Действующий тимлид европейского финтеха, самобытно и с долей юмора, делится секретами 🤫:

Гайд по Kafka(причем тут порноактриса Piper Perri)

Roadmap java разработчика на 2025

Самый кринжовый подарок, сделанный девушке, с помощью программирования

Как java крадет твои деньги

Топ 8 ошибок при составлении резюме

Самые сложные алгоритмы на моей практике. Не трать на них время

Chatgpt telegram bot с нуля на java 

Миллиард тенге. Самая сложная задача

И это только цветочки. Рекомендую! 
В этом канале даже джуны становятся сеньорами 😏

🔈 Подписывайся, это самый простой способ прокачать свои хард-скиллы:  @javezka

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

Senior Java Developer

#вопросы_с_собеседований
Какие существуют unchecked exception?

Наиболее часто встречающиеся:
ArithmeticException, ClassCastException, ConcurrentModificationException, IllegalArgumentException, IllegalStateException, IndexOutOfBoundsException, NoSuchElementException, NullPointerException, UnsupportedOperationException.

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

Senior Java Developer

#вопросы_с_собеседований
Каким образом реализованы методы hashCode() и equals() в классе Object?

Реализация метода Object.equals() сводится к проверке на равенство двух ссылок(код 1 на картинке).

Реализация метода Object.hashCode() описана как native, т.е. определенной не с помощью Java кода и обычно возвращает адрес объекта в памяти(код 2 на картинке).

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

Senior Java Developer

👩‍💻 Мечтаете научиться программировать на Java? Пора начинать!

🗓 20 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java-разработчик» от Otus.

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

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

Хотите научиться создавать приложения? Узнать, как строятся программы на Java? Этот урок — ваш первый шаг в IT!

🔗 Ссылка на регистрацию: https://otus.pw/rY4d/

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

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

Senior Java Developer

Как конвертировать ArrayList в массив на Java?

Рассмотрим пример простой программы, которая преобразовывает ArrayList в массив в Java.

Мы используем реализацию метода toArray(T[] a) класса ArrayList, чтобы конвертировать ArrayList в массив на Java. «Под капотом» этого метода используется метод Arrays.copyOf(), чтобы конвертировать ArrayList в Array.

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

Senior Java Developer

#вопросы_с_собеседований
Как получить коллекцию только для чтения?

При помощи:
Collections.unmodifiableList(list);
Collections.unmodifiableSet(set);
Collections.unmodifiableMap(map).

Эти методы принимают коллекцию в качестве параметра, и возвращают коллекцию только для чтения с теми же элементами внутри.

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

Senior Java Developer

Объединение двух массивов

Наиболее лаконичный способ объединить элементы двух массивов – это воспользоваться классом ArrayUtils из Commons Lang.

Подробнее можно ознакомиться здесь.

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

Senior Java Developer

#вопросы_с_собеседований
Какие существуют особенности использования вложенных классов: статических и внутренних? В чем заключается разница между ними?

✔️Вложенные классы могут обращаться ко всем членам обрамляющего класса, в том числе и приватным.
✔️Для создания объекта статического вложенного класса объект внешнего класса не требуется.
✔️Из объекта статического вложенного класса нельзя обращаться к не статическим членам обрамляющего класса напрямую, а только через ссылку на экземпляр внешнего класса.
✔️Обычные вложенные классы не могут содержать статических методов, блоков инициализации и классов. Статические вложенные классы - могут.
✔️В объекте обычного вложенного класса хранится ссылка на объект внешнего класса. Внутри статического такой ссылки нет. Доступ к экземпляру обрамляющего класса осуществляется через указание .this после его имени. Например: Outer.this.

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

Senior Java Developer

Final класс

Нельзя расширять класс, объявленный как final. Проще говоря, никакой класс не может наследоваться от данного.

Прекрасным примером final класса в JDK является String. Первый шаг к созданию неизменяемого класса — пометить его как final, и тогда нельзя будет его расширить.

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

Senior Java Developer

#вопросы_с_собеседований
Что такое модификаторы доступа?

Модификаторы доступа — это инструмент, при помощи которого можно настроить доступ к классам, методам и переменным.

Бывают следующие модификаторы, упорядоченные в порядке повышения доступа:
1) private — используется для методов, полей и конструкторов. Уровень доступа — только класс, внутри которого он объявлен.
2) package-private(default) — может использоваться для классов. Доступ только в конкретном пакете (package), в котором объявлен класс, метод, переменная, конструктор.
3) protected — такой же доступ, как и package-private + для тех классов, которые наследуются от класса с модификатором protected.
4) public — используется и для классов. Полноценный доступ во всем приложении.

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

Senior Java Developer

#вопросы_с_собеседований
Какой символ является разделителем при указании пути в файловой системе?

Для различных операционных систем символ разделителя различается. Для Windows это \, для Linux - /.

В Java получить разделитель для текущей операционной системы можно через обращение к статическому полю File.separator.

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

Senior Java Developer

#вопросы_с_собеседований
Что такое ZonedDateTime?

java.time.ZonedDateTime — аналог java.util.Calendar, класс с самым полным объемом информации о временном контексте в календарной системе ISO-8601. Включает временную зону, поэтому все операции с временными сдвигами этот класс проводит с её учётом.

Документацию можно найти здесь.

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

Senior Java Developer

👩‍💻 Пройди тест по Java

Проверь насколько хорошо ты знаешь Java и готов освоить 👩‍💻 Spring!

Ответишь — пройдешь на продвинутый курс "Разработчик на Spring Framework" от OTUS по специальной цене.

👉 ПРОЙТИ ТЕСТ: https://otus.pw/cjAo/

🎫 Начни обучение со скидкой, подробности у менеджеров.

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

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

Senior Java Developer

dbeaver — бесплатный универсальный инструмент для работы с базами данных и SQL-клиент.

https://github.com/dbeaver/dbeaver

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

Senior Java Developer

#вопросы_с_собеседований
Что такое Aspect, Advice, Pointcut и JoinPoint в АОП?

Aspect
— класс, который реализует сквозные функции, такие как управление транзакциями.
Advice — методы, которые выполняются, когда в приложении достигается определенный JoinPoint с соответствующим Pointcut.
Pointcut — набор регулярных выражений, которые сопоставляются с JoinPoint, чтобы определить, нужно ли выполнять Advice или нет.
JoinPoint — некая точка во время выполнения программы, например выполнение метода или обработка исключения.

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

Senior Java Developer

#вопросы_с_собеседований
Как поведёт себя коллекция, если вызвать iterator.remove()?

Если вызову iterator.remove() предшествовал вызов iterator.next(), то iterator.remove() удалит элемент коллекции, на который указывает итератор, в противном случае будет выброшено IllegalStateException().

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

Senior Java Developer

⚡️Всероссийский Хакатон ФИЦ 2024

🚀Попробуйте себя в одном из предложенных кейсов:
- Разработка алгоритма трекинга людей в видеопотоке с нескольких камер
- Цифровая карта подземных коммуникаций с использованием Cesium
- Симуляция записи в расписание
- Цифровой сервис для ведения реестра зеленых насаждений города Москвы
- Предсказание необходимого количества средств досмотра
- Система контроля и управления доступом
- Семантический делитель текстов
- Разработка сервиса печати этикеток для производителей одежды
И др. кейсы смотрите на сайте: https://фиц2024.рф/hackathon 

Хакатон пройдет в 2 этапа: Отборочный этап в Онлайн, Финал в Офлайн.

🏆Призовой фонд: 6 000 000 руб.
🔥Дедлайн регистрации: 26 ноября, 23:59
📅Даты отборочного этапа: 29 ноября - 2 декабря
🦾Даты финала: 3 - 4 декабря

Зарегистрируйтесь для участия в хакатоне: https://фиц2024.рф/hackathon

#реклама
О рекламодателе

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

Senior Java Developer

Метод before()

Метод before() класса Date проверяет, была ли наша дата раньше той, которую мы передаем в качестве аргумента.

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

Senior Java Developer

#вопросы_с_собеседований
Какое худшее время работы метода get(key) для ключа, который есть в HashMap?

O(N)
. Худший случай - это поиск ключа в HashMap, вырожденного в список по причине совпадения ключей по hashCode() и для выяснения хранится ли элемент с определённым ключом может потребоваться перебор всего списка.

Но начиная с Java 8, после определенного числа элементов в списке, связный список преобразовывается в красно-черное дерево и сложность выборки, даже в случае плохой хеш-функции, не хуже логарифмической O(log(N)).

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

Senior Java Developer

👩‍💻 Открытый урок «Знакомство с виртуальными потоками Java»

🗓 21 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Advanced» от Otus.

Легковесные потоки были введены во многих языках программирования, таких как Go, Kotlin и другие. Теперь Java догнала другие языки по этой функциональности.

На вебинаре разберем:

✔️что такое виртуальные потоки;
✔️ чем они отличаются от обычных потоков;
✔️в чём плюсы и минусы их использования.

🔗 Ссылка на регистрацию: https://otus.pw/COTVV/

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

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

Senior Java Developer

#вопросы_с_собеседований
Почему хранить пароль предпочтительнее в char[]/byte[], а не в String?

☕️ Строка в виде литерала сразу раскрывает пароль, плюс она всегда хранится в string-пуле
☕️ byte[]/char[] возможно сбросить после использования, и удалить все ссылки на него

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

Senior Java Developer

👩‍💻 Открытый урок «Интернационализация и локализация в приложениях Spring»

🗓 25 ноября в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Разработчик на Spring Framework» от Otus.

Узнайте, как эффективно реализовать интернационализацию и локализацию в Spring-приложениях.

На вебинаре разберем:

✔️работу с классом Locale, использование MessageSource в Spring Boot и без него;
✔️ способы хранения и смены локали в веб-приложениях;
✔️ локализацию в шаблонах Thymeleaf и сообщений Bean Validation;
✔️ обсудим, почему не стоит локализовывать исключения;
✔️ проанализируем исходный код для лучшего понимания процессов.

🔗 Ссылка на регистрацию: https://otus.pw/X16gx/

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

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

Senior Java Developer

Анализ дампа кучи Java: разбираем на примерах

Всякий раз, когда вы создаете объект, он хранится в области памяти, которая в приложениях для JVM называется «куча». Как вы уже догадались, объем кучи ограничен, и «кто-то» должен хранить объекты в куче. Этот инструмент называется сборщиком мусора (Garbage Collector).

Смотреть статью

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

Senior Java Developer

Уже применяешь асинхронную архитектуру в работе? Или только думаешь, как её внедрить?

Podlodka Java Crew с 18 по 22 ноября собирает тех, кто знает, как сделать это эффективно!

Пять дней, мощные практические сессии, опытные спикеры:

- "Spring, Micronaut, Quarkus и Helidon — что круче для современного приложения?" Григорий Кошелев и Андрей Когунь — о плюсах и минусах каждого фреймворка💥

- "Проектируем Event Driven-систему с помощью DDD и Event Storming"
Кирилл Ветчинкин поможет понять, как сделать системы масштабируемыми и управляемыми с помощью событий🚀

- "Apache EventMesh: как приготовить Event Mesh"
Павел Бодячевский поможет внедрить Event Mesh в проект🎯

- "Debezium: окно в асинхронный мир данных" Евгений Ефименко покажет, как обрабатывать данные в реальном времени📊

Забирай билет, чтобы перенять опыт профи!🔥

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

Senior Java Developer

Apache Struts

Apache Struts — фреймворк с открытым исходным кодом для создания Java EE веб-приложений. Struts был создан для того, чтобы чётко разделить модель (бизнес-логику), представление (HTML-страницы) и контроллер (отвечающий за передачу данных от модели к представлению и обратно).

https://github.com/apache/struts

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

Senior Java Developer

Привет!
Мы в ОКБ Понедельник изучаем, как проходят найм и адаптация новых сотрудников в российском бигтехе.

Вы можете стать участником исследования, если:
– Ваша роль – продакт-менеджер или senior разработчик (Java, JavaScript, Go, Python)
– Работаете не больше 6 месяцев в таких компаниях, как Яндекс, Авито, VK, Ozon, Альфа, Сбер, Т-Банк и другие
– Находитесь в активном или пассивным поиске вышеуказанных вакансий

Мы ценим ваше время и предлагаем:
– Онлайн-беседу в удобное для вас время продолжительностью 1-1,5 часа
– Полную конфиденциальность
– Вознаграждение 5000 ₽ за участие в интервью

Если вам интересно, напишите @kstrv7
Или заполните анкету https://forms.gle/983QGwsCwQFQXSzT8

Подробнее о нас: ponedelnik.ru

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

Senior Java Developer

#вопросы_с_собеседований
Как преобразовать HashMap в ArrayList в Java?

Ответ на картинке.

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

Senior Java Developer

#вопросы_с_собеседований
Что вы знаете об интерфейсе FileFilter?

Интерфейс FileFilter применяется для проверки, попадает ли объект File под некоторое условие. Этот интерфейс содержит единственный метод boolean accept(File pathName). Этот метод необходимо переопределить и реализовать. Пример прикреплен.

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

Senior Java Developer

erid:2VtzqxQTSBN
Как устроена работа ИТ-специалистов в Т-Банке?

Загляните в канал T-Crew — тут показывают будни команды и делятся полезным:

— Дайджесты вакансий, регистрация на fast track и приглашения от руководителей.
— Анонсы мероприятий. Например, когда пройдет следующий ИТ-каток, ИТ-пикник и другие нашумевшие ивенты.
— Кейсы, статьи и лайфхаки для работы — от методов планирования до карьерного роста.

Подписаться на T-Crew

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

Senior Java Developer

Что такое mutable?

Mutable называются объекты, чьи состояния и переменные можно изменить после создания. Например такие классы, как StringBuilder, StringBuffer.

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