Ukrainian (Yaros) 🇨🇦
Они ищут кого-то для работу а американским клиентом в этой часовой зоне
Ukrainian (Yaros) 🇨🇦
Эстония? Хех..
Вилка 3200 usd - 6000 usd
Nikolay
Ничего. Думаю, они ищут людей не в США и местные зарплаты приводят их в ужас
Блин, ну я же говорил что это в первую очередь для собеса, они бы тебя подтянули там где у тебя слабые стороны, а соскочить можно и после этого же))
Ukrainian (Yaros) 🇨🇦
Собес будет на украинском или на русском скорее всего что как-то не обычно тоже
Stanislav
Ну, для украинской компании обычно
Ukrainian (Yaros) 🇨🇦
Ukrainian (Yaros) 🇨🇦
Как бы собес про веб, но казалось бы все прощупал в питоне, даже поверхностно по потокам прошелся
Ukrainian (Yaros) 🇨🇦
Там еще и Django, нужно сейчас заново протестить, chatGPT генерирует вопросы, я отвечаю
Stan
а мы тем не менее сегодня втроем полчаса выдумывали название модуля
Stan
20+ лет опыта на троих
Nikolay
а мы тем не менее сегодня втроем полчаса выдумывали название модуля
я давно переложил это на chatGPT, в чем в чем, а тут он мастер)
Stan
я давно переложил это на chatGPT, в чем в чем, а тут он мастер)
Он контекст приложения оценивает никак
Stan
В итоге он не помог короч
Nikolay
Он контекст приложения оценивает никак
я ему просто скармливаю что я думаю по этому а не код)
Ukrainian (Yaros) 🇨🇦
Ukrainian (Yaros) 🇨🇦
Ukrainian (Yaros) 🇨🇦
Еще он хорошо пишет CSS, если нужно изменить дизайн я просто описываю что именно хочу изменить
Stanislav
Главное чтобы он тебе хуйни не нафантазировал
Ukrainian (Yaros) 🇨🇦
Главное чтобы он тебе хуйни не нафантазировал
Я проверяю обычно в PyCharm К примеру никогда не использовал декораторы классов, попросил его разъяснить и проверил сам. А так да, он не правильно описывал MRO на конкретном примере и почему раз назвал меня Михаил
Ukrainian (Yaros) 🇨🇦
Ukrainian (Yaros) 🇨🇦
Не уверен что все это спросят на интервью, но когда я попросил его сгенерировать вопросы по Python там был типа: напишите декоратор класса
Ukrainian (Yaros) 🇨🇦
Вот теперь вопрос
Ukrainian (Yaros) 🇨🇦
Если создать еще один класс и унаследовать его от MyClass, то будет ли в MRO class Wrapped?
Ukrainian (Yaros) 🇨🇦
Nikolay
Еще не запускал
есть терминологическая проблема. есть паттерн Декоратор и есть синтаксический сахар в питоне, который тоже называется декоратор и позволяет заменить def func(): pass func = decorator(func) на @decorator def func(): pass он в итоге тебе создал какой-то нежизнеспособный гибрид одного и второго)
Stanislav
Да вроде норм все
Ukrainian (Yaros) 🇨🇦
Я так понял он заменяет MyClass на класс обертку и все
Ukrainian (Yaros) 🇨🇦
Только не понял в какой именно момент это Тоесть кто именно будет не посредственными родителем класса A(MyClass)
Ukrainian (Yaros) 🇨🇦
И если будет два раза декоратора и два класса обертки с одним именем, что будет в пространстве имен
Nikolay
Да вроде норм все
в каком кейсе может пригодится такая реализация?
Nikolay
Я так понял он заменяет MyClass на класс обертку и все
Ну в целом суть декоратора в том что он что-то подменяет оберткой)
Nikolay
Но когда? В момент вызова?
В момент чтения кода интерпретатором, если я правильно понимаю твой вопрос)
Ukrainian (Yaros) 🇨🇦
@decorator def func(): pass print(func) # wrapp
Nikolay
Но когда? В момент вызова?
чтобы лучше понимать представь что нет сахара с собакой, просто первая функция, потом класс, а потом MyClass = class_decorator(MyClass)
Nikolay
Это уже другой вопрос
Это главный вопрос) Человек спрашивающий пытается понять как это работает, а ему предлагают ответ, который по формальным признакам подходит, но не имеет никакого смысла и поэтому человек не понимает что это и зачем))
Ukrainian (Yaros) 🇨🇦
@decorator class MyClass class NewClass(MyClass) newClass = NewClass() print(newClass.__mro__)
Ukrainian (Yaros) 🇨🇦
Насколько верно наследовать от задекорированного класса?
Nikolay
Насколько верно наследовать от задекорированного класса?
не совсем понимаю вопрос) ну если задекорированный класс писал нормальный программист - то это просто класс, наследуйся)
Nikolay
Это уже другой вопрос
пошел и у себя в коде нашел подобную реализацию, но это дикий костыль для того чтобы подружить панели wagtail с виджетом джанги Я правда этим не горжусь =(
Ukrainian (Yaros) 🇨🇦
и в чем проблема?
Не в чем так-то, но может добавить пару ненужных методов
Nikolay
Не в чем так-то, но может добавить пару ненужных методов
ну если тебе разработчик не предоставил выбора - у тебя не так много вариантов)
Stanislav
Там уебанская галерея без папок была. Я сделал свою, потом они обновились и все сломалось
Ukrainian (Yaros) 🇨🇦
Nikolay
Там уебанская галерея без папок была. Я сделал свою, потом они обновились и все сломалось
меня больше смущает их god object Page =)) ну и Parental ключи, которые ломают prefetch'и а в остальном - админка ничо такая)
Stanislav
Да, и Parental ключи.
Stan
пошел и у себя в коде нашел подобную реализацию, но это дикий костыль для того чтобы подружить панели wagtail с виджетом джанги Я правда этим не горжусь =(
подскажи как мне одну штуку, вот в джанге есть serializerMethodField когда ты его реализуешь ты делаешь это обычными методами или статиками?))
Nikolay
Или переопределенный метод
пойми что в этом коде нет особого смысла, ты не будешь такое писать и никто не будет) а рассуждать насколько полезно заведомо бесполезное действие.. ну в общем не нужно такое)
Stan
вообще я думаю трюки на пайтон никто у мидла спрашивать не будет в здравом уме
Stan
а вот солид спросить могут
Stan
или как бы ты сделал вот это
Stanislav
Все что угодно могут спросить. Декораторы точно
Ukrainian (Yaros) 🇨🇦
Мне и сортировка пузыриком так-то не к чему
Ukrainian (Yaros) 🇨🇦
И в реалености могу читать документация и гуглить
Nikolay
вообще я думаю трюки на пайтон никто у мидла спрашивать не будет в здравом уме
ну у меня, когда на мидла ходил спрашивали часто вещи которе я бы скорее к трюкам отнес, хз
Nikolay
Так собеседование на то и собеседование
Если тебя спросят на собеседовании - имеет ли смысл наследоваться от задекорированного класса - отвечай что имеет
Nikolay
якие?
ну типа что будет если в дикт положить True, 1 и 1. в качестве ключа
Stan
интереснее вопрос наверное когда лучше использовать наследование композицию агрегацию депенденси инжектора
Stan
ну так правильно
Nikolay
ну так правильно
правда редко кто вспомнит про композицию, а уж про разницу с агрегацией так вообще. di еще на слуху, но чаще путаются и в solid называют))
Ukrainian (Yaros) 🇨🇦
Композиция чаще в функциях вроде как используется
Ukrainian (Yaros) 🇨🇦
Или в фабричном методе
Nikolay
Композиция чаще в функциях вроде как используется
нет, это немного разное, композиция функций это скорей фишка функциональной парадигмы, а композиция классов это про распределение ответственности и уход от множественного наследования.
Nikolay
Или в фабричном методе
в целом все паттерны (GoF) подразумевают композицию (ну или агрегацию классов)
Stan
@One_of_the_Stoics ты тайпскрипт знаешь?