И опять-опять про идею.
На работе закончилась лафа с лицензией - продлил свою.
Перерыв два года - никаких скидок нет.
Плюс небольшая комиссия за перевод, что минус.
Кто какими лицензиями пользуется и пользуется ли вообще?
#idea
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🛠 Трудовые будни
Стояла задача в сервисе принимать команды, которые имеют разную структуру.
Т.е. в одном месте из json получить разные объекты❓
Я, конечно, сделал, и оно, конечно, работает, но...
На ревью меня завернули и отправили читать про полиморфный json😮
Очень интересный зверь🤓
Настраивается просто:
т.е. в полученном json ищем поле (в моем случае type) и по его значению выбираем класс, в который будет произведена десереализация.🔥
Почитать можно тут
А вы сталкивались с таким зверем⁉️
Стояла задача в сервисе принимать команды, которые имеют разную структуру.
Т.е. в одном месте из json получить разные объекты
Я, конечно, сделал, и оно, конечно, работает, но...
На ревью меня завернули и отправили читать про полиморфный json
Очень интересный зверь
Настраивается просто:
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.EXISTING_PROPERTY, property = "type", visible = true)
@JsonSubTypes({
@JsonSubTypes.Type(value = AddCommand.class, name = "AddCommand"),
@JsonSubTypes.Type(value = DeleteCommand.class, name = "DeleteFortsLimitsCommand")
})
public interface Command {
EventType getType();
}
public abstract class BaseCommand implements Command {...}
public class AddCommand extends BaseCommand {...}
т.е. в полученном json ищем поле (в моем случае type) и по его значению выбираем класс, в который будет произведена десереализация.
Почитать можно тут
А вы сталкивались с таким зверем
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
🎓 CodeReview
На собесах иногда просят сделать код-ревью.
Набросал себе схему, как проводить это самое ревью.
1️⃣ Корректность работы
(т.е. что делаем, что ожидаем, проверяем, что закрыли ресурсы, и т.п.)
2️⃣ Обработка ошибок
(все ли обработаны и в нужном ли месте)
3️⃣ Алгоритмы и перфоманс
(можно ли сделать лучше)
4️⃣ Read-n-Code Quality
(кривые имена, дублирование кода, и т.д)
Ничего не забыл⁉️
Если есть примеры кода, которые вам давали или вы давали на собесе, бросьте в коменты посмотреть
#interview
На собесах иногда просят сделать код-ревью.
Набросал себе схему, как проводить это самое ревью.
1️⃣ Корректность работы
(т.е. что делаем, что ожидаем, проверяем, что закрыли ресурсы, и т.п.)
2️⃣ Обработка ошибок
(все ли обработаны и в нужном ли месте)
3️⃣ Алгоритмы и перфоманс
(можно ли сделать лучше)
4️⃣ Read-n-Code Quality
(кривые имена, дублирование кода, и т.д)
Ничего не забыл
Если есть примеры кода, которые вам давали или вы давали на собесе, бросьте в коменты посмотреть
#interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Руководитель офиса Яндекс в Екатеринбурге и чувак и Т-Банка на тему почему у нас все сложно при найме
Много слов😴
Много слов
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
📖 WhiteBook
Последнее время приходится достаточно много повторять и доучивать.
Как обычно заметочки записываю в книжечку.✏️
Сегодня закончил заметки по "SQL и Базы данных"🙂
Если будет время - посмотрите, почитайте...
Любые комментарии приветствуются‼️
#whitebook
Последнее время приходится достаточно много повторять и доучивать.
Как обычно заметочки записываю в книжечку.
Сегодня закончил заметки по "SQL и Базы данных"
Если будет время - посмотрите, почитайте...
Любые комментарии приветствуются
#whitebook
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7
🎓 Развитие
Начались очередные тренировки по алгоритмам.
Я опять вписался.🤦♂️
Но мою инициативу никто особо не поддержал, т.ч. в этот раз похоже буду в одиночку. 🦸♂
Первая лекция была про тестирование, и последнее две задачи были связаны с написанием тестовых кейсов.😱
Вроде не сложно, только сдать долго не получалось потому что обратной связи просто не. Т.е. совершенно не понятно почему твой кейс не принят.😦
На первый этап ушло около 6ти часов что в принципе я считаю очень не плохо💪
А вам нравятся такие тренинги или как обычно времени нет⁉️
#algorithm_training
Начались очередные тренировки по алгоритмам.
Я опять вписался.
Но мою инициативу никто особо не поддержал, т.ч. в этот раз похоже буду в одиночку. 🦸♂
Первая лекция была про тестирование, и последнее две задачи были связаны с написанием тестовых кейсов.
Вроде не сложно, только сдать долго не получалось потому что обратной связи просто не. Т.е. совершенно не понятно почему твой кейс не принят.
На первый этап ушло около 6ти часов что в принципе я считаю очень не плохо
А вам нравятся такие тренинги или как обычно времени нет
#algorithm_training
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2
На тренировках столкнулся, как может показаться, с простой задачей.
Все вещи и имена изменены.
И так школьная задачка по информатике.
У меня в шкафу в двух ящиках в одном лежат футболки и другом шорты.
Футболки и шорты двух разных цветов. Для простоты - красные и синие.
Известно количество по каждому цвету A и B - футболки, С и D - шорты.
Вопрос: Если вытаскивать "неглядя", сколько минимум нужно вытащить футболок и шорт, что бы гарантированно получить пару одного цвета.
(Выдать надо пару [N, M] - кол-во футболок и шорт). 🩳👕
И так что бы гарантированно получить футболки разных цветов надо вытащить max(A, B)+1, а шорт - max(C, D)+1.
Т.о. что бы создать пару надо вытащить только одни шорты и одну футболку ответственно:
[max(A, B)+1, 1] и [1, max(C, D)+1]
И ответом будет вариант где общее кол-во вещей меньше.
Вроде все очевидно, но этот вариант решения у меня не прошел.
Я задумался почему? Скорее всего что это гарантированный, но не минимальный вариант. 🤦🏻♂️
Как можно еще гарантированно получить пару одного цвета?
Т.к. мы знаем кол-во вещей каждого цвета то можно взять на одну вещь больше - что гарантирует нам два цвета.
Если у нас A красных футболок мы берем A + 1 футболок, а шорт берем С + 1.
Т.о. получаем еще варианты
[A + 1, C + 1] и [B + 1, D + 1]
Теперь надо выбирать из этих четырех вариантов.
Кстати еще надо не забыть про крайний случай, т.к. нигде не сказано что кол-во больше 0;
Т.о. варианты актуальны если:
[max(A, B) + 1, 1] - A > 0 и B > 0
[1, max(C, D) + 1] - C > 0 и D > 0
[A + 1, C + 1] - В > 0 и D > 0
[B + 1, D + 1] - A > 0 и C > 0
т.е. в первых двух случаях есть из чего выбирать, а во вторых - точно присутствует второй цвет.
Ну и выбираем вариант где N + M будет минимальной.
Как вам задачка? Хочется обратно в школу
#algorithm_training
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1