Изучаем Java. По вопросам сотрудничества: @seniorvladislav
☕️ Самые интересные доклады с YaTalks — уже на Яндекс Музыке!
Стартовал новый сезон YaTalks: ReRun — подкаст избранных докладов с самой большой технологической конференции Яндекса. Мы собрали их в Техномарафон — совместный спецпроект с командой Яндекс Музыки. Техномарафон будет идти 3 недели, а всего вас ждёт 28 выпусков.
На Техномарафоне расскажем, как создавать меняющие мир технологии, не отставать от быстрого развития индустрии и управлять командами опытных, независимых и творческих инженеров. Например:
🔴 Ускоритель в масштабе планеты: как инженеры управляют временем
🔴 Дебаты: AI недооценён или переоценён?
🔴 Человек и проект: как создаётся технологическое чудо
🔴 Свой среди чужих: как выжить в интернациональных командах?
Добавляйте Техномарафон в избранное на Яндекс Музыке — скоро выложим ещё много крутых выступлений!
Из джуна в мидла вместе с лидером* российского ИТ-рынка — Холдингом Т1 🚀
Открытые школы Т1 — это уникальная возможность для быстрого роста в ИТ. Внутри два трека: образовательный ИТ-интенсив + карьерный в формате offer weeks в Т1.
🤚 Поможем прокачать скилы для развития внутри профессии, если ты:
- имеешь опыт работы java-разработчиком от года
- хочешь присоединиться к команде Т1.
Лучшим назначим интервью и направим оффер!
В программу интенсива входит:
🔹Spring framework
🔹Docker
🔹Синхронное и асинхронное взаимодействие, брокеры сообщений 🔹Паттерны, SOLID
📚 Формат: онлайн и по вечерам (8 часов в неделю на вебинары и практику).
Длительность — 1 месяц, стартуем в конце марта!
🏳️ Подай заявку до 26 марта.
*По версии CNews Analytics 2022, TAdviser 2021 и RAEX 2023
Реклама. ООО "Т1". ИНН 7720484492.
SocketHandler SocketHandler
— это класс в Java, который используется для отправки сообщений журнала на сервер журнала. Он наследуется от класса Handler
и реализует интерфейс StreamHandler
.
#для_продвинутых
FileHandler FileHandler
— это класс в Java, который используется для записи журналов в файл. Он может записывать журналы в один файл или в набор вращающихся файлов.
#для_продвинутых
Подборка горячих вакансий в Ozon для Senior Java-разработчиков
🔵 Старший разработчик Java, Верхний поиск
🔵 Старший разработчик Java, GPU Инфраструктуры
🔵 Старший разработчик Kotlin, ML Инфраструктура
Почему нужно идти в Ozon: здесь соединяется мир разработки сложных вычислительных систем с миром Data Science.
Что предлагают:
Достойный уровень зп
Удалёнку из любой точки / гибрид / офис
Возможность делать классные продукты на рынке e-com
Систему менторства, адаптации, обучения
Сильное экспертное коммьюнити: митапы, блоги, конференции и подкасты. Поддержку развития профессионального бренда сотрудников со стороны DevRel-ов.
Как разработчику перейти на Scala и увеличить доход в 2024?
Всего за 5 месяца освоить подходы функционального программирования и самые мощные библиотеки на онлайн-курсе «Scala-разработчик» от OTUS.
🔥 Программа идеально подойдет Java-разработчикам с опытом работы от года и программистам на другом языке с опытом от трёх лет.
На курсе вас ждут:
- живые вебинары с возможностью задать вопросы экспертам;
- много практики и сильные проекты для портфолио;
- поддержка профессионального комьюнити;
- рассрочка на комфортных условиях.
Только до 24 марта вы можете применить 🎁 промокод scala10 и получить скидку на обучение!
Не упускайте свой шанс, изучите подробности и оставьте заявку прямо сейчас: https://otus.pw/HnxJ/?erid=LjN8KAoW9
Java — универсальный язык программирования. На нём написаны YouTube, Amazon, Netflix, Facebook, большинство мобильных приложений для Android и даже Minecraft.
Выбирайте Java, и вы будете востребованы в небольших IT-агентствах и топовых компаниях: «Альфа-Банк», OZON и «Авито».
Язык возможно выучить самостоятельно, но гораздо проще — на курсе с поддержкой опытного эксперта, где вас ждет стажировка.
Вы научитесь:
— создавать приложения на Java;
— разбираться в алгоритмах и структурах данных;
— пользоваться Git;
— создавать игры;
— работать с базами данных;
— оптимизировать код.
Зарегистрироваться можно по ссылке: https://epic.st/ciJEo?erid=2Vtzqw9hdh6
Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
newCachedThreadPoolnewCachedThreadPool
— это метод класса Executors
, который создает пул потоков, обладающий следующими характеристиками:
— Создание новых потоков по мере необходимости: пул создает новые потоки для выполнения задач, когда они поступают.
— Повторное использование существующих потоков: если в пуле есть неактивные потоки, они будут повторно использованы для выполнения новых задач.
— Бесконечное количество потоков: пул не имеет ограничений на количество потоков, которые он может создать.
— Удаление неактивных потоков: пул автоматически удаляет неактивные потоки через 60 секунд.
#для_начинающих
Microservices | Вопросы с Собеседований
- Подборка вопросов по микросервисной архитектуре с реальных собеседований
- Авторские статьи по архитектуре, проектированию, базам данных
- Автор - Lead Developer на Java/Kotlin
Что такое многопоточность в Java?
Многопоточность — это процесс одновременного выполнения нескольких задач в рамках одной программы. Это делается для достижения максимальной загрузки процессора.
Переопределение метода
Переопределение метода (Method Overriding) — это механизм ООП, который позволяет классу создать новую реализацию метода, который уже существует в его суперклассе (родительском классе). При переопределении метода дочерний класс предоставляет свою собственную версию метода, заменяя реализацию, унаследованную от родительского класса.
#для_начинающих
Погубит ли Java 22 сборочные инструменты?
Смотреть статью
#вопросы_с_собеседований
Чем stub отличается от mock?
stub используется как заглушка сервисов, методов, классов и т.д. с заранее запрограммированным ответом на вызовы.
mock использует подмену результатов вызова, проверяет сам факт взаимодействия, протоколирует и контролирует его.
#вопросы_с_собеседований
Как одной строчкой скопировать элементы любой collection в массив?
Ответ на картинке.
Класс System
Класс System
представляет собой системный класс, который предоставляет набор методов и свойств, позволяющих взаимодействовать с операционной системой, окружением выполнения и осуществлять различные системные операции.
Класс System
является частью пакета java.lang
, который импортируется по умолчанию во все программы на Java.
Класс System
является важным инструментом для взаимодействия с операционной системой и окружением выполнения. Он предоставляет широкий набор методов и свойств, которые могут быть использованы для различных целей.
#для_начинающих
DoubleAccumulatorDoubleAccumulator
— это класс из пакета java.util.concurrent.atomic
, который представляет собой атомарный аккумулятор для значений типа double
. Он используется для накапливания значений типа double в потокобезопасном режиме.DoubleAccumulator
имеет следующий конструктор:
DoubleAccumulator(doubleBinaryOperator accumulatorFunction, double initialValue)
LambdaMetafactory
LambdaMetafactory — это класс в Java, который используется для создания объектов функциональных интерфейсов.
Как работает LambdaMetafactory:
1. LambdaMetafactory
используется для создания CallSite
, который представляет собой фабричный метод, возвращающий обработчик целевого метода.
2. Обработчик метода — это реализация функционального интерфейса, которая использует invokeExact
для вызова целевого метода.
3. Если в лямбда-выражении есть захваченные переменные, то invokeExact
принимает эти переменные как фактические параметры.
4. В Oracle JRE 8 metafactory
динамически генерирует Java-класс, используя ObjectWeb Asm, который и создает класс-реализацию функционального интерфейса.
#для_продвинутых
Уникальный сервер для любых задач в Амстердаме за 2$ в месяц
1 Gb RAM / 1 core CPU / 10 Gb NVMe - 2$ в месяц
https://www.vdsina.com/ru/pricing/standard
- Уникальная фиксированная цена в долларах США, которая не будет меняться
- Компания зарегистрирована в Дубае
- Оплата с рублёвой карты, криптой, иностранной картой через Stripe
- Готовые шаблоны с Outline, WireGuard, IPsec
- Подключение к сети интернет — 10 Гбит/сек
- Доступны все популярные сайты, включая ChatGPT, Netflix
Почему я должен верить компании? VDSina работает с 2014 года и сейчас обслуживает более 40 000 серверов. Сомневаетесь? Вот чат в телеграме — задавайте вопросы другим пользователям: /channel/vdsina
FormatterFormatter
— это класс, который используется для форматирования вывода данных. Formatter поддерживает форматирование следующих типов данных:
— Примитивные типы: int
, long
, float
, double
, char
, boolean
— Объекты: String
, Date
, Calendar
, BigDecimal
.
#для_продвинутых
PathIteratorPathIterator
— это интерфейс в Java, который позволяет объектам, реализующим интерфейс Shape
, возвращать геометрию своей границы, позволяя вызывающему объекту получать путь этой границы по одному сегменту за раз.
Основные возможности PathIterator:
— PathIterator
позволяет перебирать сегменты пути объекта Shape
по одному.
— Для каждого сегмента PathIterator
может предоставить информацию о его типе (например, линия, кривая Безье), координатах и других атрибутах.
— PathIterator
может использоваться для преобразования пути объекта Shape
, например, для его масштабирования, поворота или перемещения.
#для_продвинутых
FairSemaphore FairSemaphore
— это класс, реализующий семафор, который обеспечивает справедливое распределение разрешений между потоками. Это означает, что потоки, ожидающие разрешения, будут получать его в порядке очереди, а не в случайном порядке.
В примере на картинке два потока будут пытаться получить доступ к ресурсу, который защищен с помощью FairSemaphore
. Потоки будут получать доступ к ресурсу по очереди, а не в случайном порядке.
#для_продвинутых
BrokenBarrierExceptionBrokenBarrierException
— это исключение, которое возникает в Java, когда поток пытается ждать на барьере, который находится в сломанном состоянии или когда пытается войти в барьер, который переходит в сломанное состояние во время ожидания.
Как исправить:
— Обработайте исключение BrokenBarrierException
в коде.
— Убедитесь, что все потоки, которые будут ждать на барьере, завершатся до того, как вы его сломаете.
— Используйте CyclicBarrier
вместо Barrier
, если вам нужно сбросить барьер и запустить его снова.
#для_продвинутых
PreferencesFactory
Интерфейс PreferencesFactory
используется для создания объектов Preferences.
Он предоставляет два метода:systemRoot()
: Возвращает корневой узел предпочтений системы.userRoot()
: Возвращает корневой узел предпочтений пользователя, вызвавшего метод.
Поставщики новых реализаций Preferences
должны предоставлять соответствующие реализации PreferencesFactory
, чтобы их можно было установить вместо реализации по умолчанию, зависящей от платформы.
#для_продвинутых
AtomicStampedReference AtomicStampedReference
— это класс в Java, который используется для обеспечения атомарного доступа к ссылке на объект и целочисленному «штампу».
Что такое атомарный доступ?
Атомарный доступ означает, что операции чтения и записи выполняются целиком, без промежуточных состояний. Это гарантирует, что другие потоки не смогут увидеть частично обновленное значение.
#для_продвинутых
Что делает метод intern() в классе String?
Метод intern()
используется для сохранения строки в пуле строк или получения ссылки, если такая строка уже находится в пуле.
Открыта регистрация на конкурс прикладной разработки «Разработка игр – GameDev»
Друзья, приглашаем вас принять участие в конкурсе «Разработка игр – GameDev» от GitVerse в рамках олимпиады «IT-Планета 2024»!
Подключайтесь, если вам от 18 до 35 лет, у вас есть опыт в разработке игры, навыки выбора движков и прототипирования. Участвовать можно как самостоятельно, так и в команде до 4-х человек.
До 31 марта регистрируйтесь и проходите отборочное тестирование на площадке для разработчиков GitVerse от СберТеха.
Конкурс состоит из трех этапов: отборочное тестирование, основной этап в виде отправки проектов и очный финал.
Призовой фонд конкурса составляет 500 тыс. рублей*!
Подробные условия конкурсов и регистрация.
Следите за новостями и удачи в конкурсе!
*За вычетом НДФЛ
🔥 Годнота
База с 1700 вопросами с собеседований на Java разработчика. Фишка в том что просчитана вероятность с которой вопрос буден задан и есть примеры ответов. Теперь можно легко получить оффер, подготовившись к самым популярным вопросам 😏
#вопросы_с_собеседований
Как одной строчкой преобразовать HashSet в ArrayList?
Ответ на картинке.
Вариант для тех, кто ищет игровой сервер с хорошей веб-защитой — Aéza:
– Виртуальные сервера до 6.0 ГГц Intel Core i9-14900k;
– Профессиональная фильтрация атак StormWall;
– Круглосуточная поддержка;
– Anycast фильтрация;
– Низкие цены;
– 15% кешбэка по ссылке.
Кроме того, сейчас Aéza раздает личные бесплатные сервера, забираем тут. Регистрация, подписка, платежи не потребуются.
Как эффективно разделять приложения на микросервисы?
🔥 Расскажет Евгений Непомнящий — разработчик в IT Sense.
Встречаемся на бесплатном практическом уроке от OTUS, где вы вместе с опытным экспертом:
- рассмотрите принципы функциональной декомпозиции;
- научитесь выделять отдельные компоненты приложения;
- погрузитесь в методику EventStorming;
- изучите подход API First Design;
- узнаете, как разрабатывать API.
Встречаемся 19 марта в 20:00 мск в рамках курса «Software Architect». Доступна рассрочка на обучение!
👉 Зарегистрируйтесь, чтобы посетить бесплатный урок и получить запись: https://otus.pw/oA7l/?erid=LjN8K5LYg