#вопросы_с_собеседований
Что такое «абсолютный путь» и «относительный путь»?
Абсолютный (полный) путь — это путь, который указывает на одно и то же место в файловой системе, вне зависимости от текущей рабочей директории или других обстоятельств. Полный путь всегда начинается с корневого каталога.
Относительный путь представляет собой путь по отношению к текущему рабочему каталогу пользователя или активного приложения.
Связь цифрового и физического в нашем мире не только меняет восприятие продуктов и услуг. Она даёт потребителям новый нетривиальный опыт, уверен Сбер, поэтому расширяет штат сотрудников для развития своих сервисов в направлениях phygital и digital.
Каждый Java-разработчик 24 сентября может принять участие в One Day Offer и
получить интересную работу без многоэтапных собеседований и тестовых заданий!
Над чем будете работать?
• Совершенствовать фронтальные системы для обслуживания клиентов, приложение для менеджеров, BI-системы и системы удалённого видеоконсультирования.
• Создавать Cloud-Native сервисы.
• Работать с высоконагруженными системами.
Отправляйте заявку на участие в One Day Offer от Сбера: http://sber.me/?p=wspm1
#вопросы_с_собеседований
Что такое «символьная ссылка»?
Символьная (символическая) ссылка (также «симлинк», Symbolic link) — специальный файл в файловой системе, в котором, вместо пользовательских данных, содержится путь к файлу, который должен быть открыт при попытке обратиться к данной ссылке (файлу). Целью ссылки может быть любой объект: например, другая ссылка, файл, каталог или даже несуществующий файл (в последнем случае, при попытке открыть его, должно выдаваться сообщение об отсутствии файла).
Символьные ссылки используются для более удобной организации структуры файлов на компьютере, так как:
• позволяют для одного файла или каталога иметь несколько имён и различных атрибутов;
• свободны от некоторых ограничений, присущих жёстким ссылкам (последние действуют только в пределах одной файловой системы (одного раздела) и не могут ссылаться на каталоги).
📍Что нужно знать начинающему разработчику на Java?
Приходи на практический вебинар по Java для новичков
👉 https://otus.pw/Be0P/
📌 Что ждет на занятии?
- Поговорим о месте реляционных баз данных в архитектуре информационных систем.
- Рассмотрим основные компоненты и возможности РСУБД на примере PostgreSQL.
- Сделаем обзор основных технологий по работе с реляционными БД в Java (JDBC, JPA/Hibernate, Spring Data и др.)
❗️ Еще больше навыков и оплачиваема стажировка ждет тебя на специализации «Java-разработчик» от онлайн-платформы OTUS.
👉 Регистрируйтесь на занятие
#вопросы_с_собеседований
Что такое «сериализация»?
Сериализация (Serialization) - процесс преобразования структуры данных в линейную последовательность байтов для дальнейшей передачи или сохранения. Сериализованные объекты можно затем восстановить (десериализовать).
В Java, согласно спецификации Java Object Serialization существует два стандартных способа сериализации: стандартная сериализация, через использование интерфейса java.io.Serializable и «расширенная» сериализация - java.io.Externalizable.
Сериализация позволяет в определенных пределах изменять класс. Вот наиболее важные изменения, с которыми спецификация Java Object Serialization может справляться автоматически:
• добавление в класс новых полей;
• изменение полей из статических в нестатические;
• изменение полей из транзитных в нетранзитные.
Обратные изменения (из нестатических полей в статические и из нетранзитных в транзитные) или удаление полей требуют определенной дополнительной обработки в зависимости от того, какая степень обратной совместимости необходима.
🔥 Не знаете, с чего начать осваивать Kotlin?
📅Начните с изучения основ классов и объектов на открытом уроке 22 сентября в 20:00 мск.
Что вас ждет на занятии?
- Рассмотрим принципы проектирования классов и их реализации в Kotlin.
- Поймем, как объектно-ориентированное программирование работает изнутри.
- Создадим свои структуры и посмотрим на возможности языка Kotlin.
- Спроектируем объектную модель данных.
📚Вебинар — это возможность посмотреть на процесс обучения на онлайн-курсе«Kotlin Developer. Basic» от OTUS и получить новые знания.
👉🏻 Проходите вступительный тест для регистрации на занятие https://otus.pw/2LTV/
#вопросы_с_собеседований
Опишите процесс сериализации/десериализации с использованием Serializable.
При использовании Serializable применяется алгоритм сериализации, который с помощью рефлексии (Reflection API) выполняет:
• запись в поток метаданных о классе, ассоциированном с объектом (имя класса, идентификатор SerialVersionUID, идентификаторы полей класса);
• рекурсивную запись в поток описания суперклассов до класса java.lang.Object (не включительно);
• запись примитивных значений полей сериализуемого экземпляра, начиная с полей самого верхнего суперкласса;
• рекурсивную запись объектов, которые являются полями сериализуемого объекта.
При этом ранее сериализованные объекты повторно не сериализуются, что позволяет алгоритму корректно работать с циклическими ссылками.
Для выполнения десериализации под объект выделяется память, после чего его поля заполняются значениями из потока. Конструктор объекта при этом не вызывается. Однако при десериализации будет вызван конструктор без параметров родительского несериализуемого класса, а его отсутствие повлечёт ошибку десериализации.
❇️ Как сделать первый шаг к профессии Java-разработчик?
Достаточно прийти за новыми знаниями на открытый урок «Кто такие дженерики?» в OTUS.
Почему стоит посетить вебинар?
Вместе с сертифицированным Java-разработчиком, Сергеем Петрелевичем, разберем дженерики, изучим, для чего они нужны и как начать использовать.
Вебинар дает возможность предварительно попробовать специализацию «Java-разработчик» от онлайн-платформы
OTUS и познакомиться с преподавателем.
👉 Чтобы участвовать, зарегистрируйтесь!
Реклама. Информация о рекламодателе на сайте www.otus.ru
Ищем джависта, бэйби!
А что ты сделал на Java в свои годы? Предлагаем заняться кое-чем большим и важным: помочь нам создать современный, технологичный и человечный мобильный банк — Яндекс Банк. Мы запускаемся уже в этом году и продолжаем набирать отряд первых.
Что нужно делать? Надеемся, это ты нам расскажешь, для этого мы и ищем толковых ребят. Ну а если конкретно: практически с нуля разрабатывать продуктовый движок, бизнес-логику и инфраструктуру финтех-сервисов. Главное — работать головой, а не по 12 часов.
Яндекс Финтех — это маленькая команда внутри большой компании. У нас есть, где развернуться, но нет риска превратиться в тыкву, как это часто бывает со стартапами. С нас — отсутствие стоячего болотца рутинных задач и безумной бюрократии. С тебя — опыт на боевых проектах и одна простая задачка.
#вопросы_с_собеседований
Как изменить стандартное поведение сериализации/десериализации?
• Реализовать интерфейс java.io.Externalizable, который позволяет применение пользовательской логики сериализации. Способ сериализации и десериализации описывается в методах writeExternal() и readExternal(). Во время десериализации вызывается конструктор без параметров, а потом уже на созданном объекте вызывается метод readExternal.
• Если у сериализуемого объекта реализован один из следующих методов, то механизм сериализации будет использовать его, а не метод по умолчанию :
○ writeObject() - запись объекта в поток;
○ readObject() - чтение объекта из потока;
○ writeReplace() - позволяет заменить себя экземпляром другого класса перед записью;
○ readResolve() - позволяет заменить на себя другой объект после чтения.
Weekend Offer в одну из команд VK можно получить уже 10–11 сентября!
В этот раз Java-разработчиков ждет команда VK Звонков. Вместе с командой вам предстоит разрабатывать фичи, которые сделают созвоны пользователей продуктивнее и комфортнее, развивать и улучшать существующие решения, проектировать и реализовывать новый API, заниматься новым высоконагруженным продуктом, которым каждый день пользуются миллионы людей.
Чтобы участвовать, необходимо зарегистрироваться до 9 сентября, после чего с вами свяжутся, расскажут подробнее о задачах и назначат слот для интервью.
Подать заявку
🧑🏻💻 Какие знания по Java Collections Framework гарантируют 95% при трудоустройстве?
Расскажем на открытом уроке 25 августа. А также разберем:
— Скиллсет Middle Java Developer
— Как нанимают разработчиков в России и за рубежом
— Почему важны soft skills
Спикеры:
🗣 Андрей Сундуков — Senior SRE Engineer в Natera. Больше 15 лет в IT, спикер JPoint 2022.
🗣 Роман Оборин — Senior Java Developer в BNP Paribas. Ex-ведущий разработчик в Сбербанке.
Занятие проходит в рамках курса “Middle Java Developer”.
🚀 Стартуем 25 августа в 19.00 по МСК
Регистрируйся бесплатно: https://cutt.ly/HXjHT5Q
#вопросы_с_собеседований
Существует ли возможность перенаправить потоки стандартного ввода/вывода?
Класс System позволяет вам перенаправлять стандартный ввод, вывод и поток вывода ошибок, используя простой вызов статического метода:
• setIn(InputStream) - для ввода;
• setOut(PrintStream) - для вывода;
• setErr(PrintStream) - для вывода ошибок.
🔥 Бесплатная Live coding сессия, где будем решать задачу с собеседования в международную FinTech компанию
В прямом эфире Роман Оборин, Senior Java Developer в BNP Paribas и преподаватель курса Middle Java Dev, проведет Live coding сессию по написанию объектно-ориентированного кода на Java, покрытого разными типами тестов: Unit, Integration, Stress.
На Live сoding ты сможешь понаблюдать, как пишет код Senior-разработчик, прокомментировать процесс и решить реальную задачу, которую дают на собеседованиях. Ну и конечно, прокачаешь свои hard skills:
— Структурируешь знания по принципам SOLID
— Прокачаешь знания по разным видам тестирования, в том числе многопоточных программ
— Подготовишься к техническому интервью с этапом Live coding
🚀 Стартуем 18 августа в 19.00 по МСК
Регистрируйся бесплатно!
#вопросы_с_собеседований
Может ли значение в столбце, на который наложено ограничение FOREIGN KEY, равняться NULL?
Может, если на данный столбец не наложено ограничение NOT NULL.