Собеседование на позицию Backend Developer Python Middle #8

Подготовка к собеседованию на Python Developer

Транскрипция видео:

  • чувстве что теперь протокол но это получается у нас протокол взаимодействия клиента и сервера который основан не знаю можно про основные мифы рэда сказать что г пост от ну и остальные опции которые мнению часто встречаются работает по принципу что у нас есть какой-то and point страницы до адрес мы на нее заходим обращаемся по этому углу к определенному представлению где происходит какая-то логика то есть с headers и с заголовками отправляем какой-то запрос нас на бэг-энде какая-то фишка это обрабатывает и

    00:00:00 - 00:01:47

  • возвращает браузер ответ с каким-то кодом и тем ответов хорошо а вот в чем отличие от get и post запрос предками . дед у нас получает данный пост создает ну вот мы можем что-то править на сервер с помощью бит заброс конечно можем мы можем в параметрах передать то есть параметры в адресной строке у нас через год идут этот параметр cost они у нас в теле запроса в адресной строке мы не увидим решил так и тому же типу данных какие использую штуку данные типы данных ну наверно надо обговорить что есть

    00:00:54 - 00:02:46

  • основное отличие 100 изменяемые и неизменяемые типы данных какие используют все основные наверное строки и числа карты списке давайте с ней изменяемые и неизменяемые изменяем это у нас строки и числа кортежи из таких основных розам цеп можем сюда тоже добавить боится по-моему не изменяю насколько помню бойца изменяем ничего не пришло это конкретно рассказать давайте про словарь словарь словарь из нас тип данных которые снова по принципу sq значению основана у нас также нарушишь mapi то есть дает более оптимизированной поиску

    00:01:57 - 00:03:49

  • потому что у нас хранятся в хэши значений можно добавить то что ключами могут быть по этому же принципу у нас к шумам только не изменяемые типы данных чтобы мы могли однозначно найти и какой от них значением что давайте поговорим к лупы это не буду безумно основные принципы об основной принцип это у нас полиморфизм исследование и эти как он там как правило вот это вот слово вылетело из головы и капсул исследования фашизма капсюль оценок дальше в абстракции добавляют если мы будем говорить про инкапсуляции

    00:02:57 - 00:04:41

  • в питоне зевнул опять-таки инкапсуляции там разные определения зависимости от того кто то говорит что это сокрытие дам кто-то не сокрытие есть мы будем говорить именно как сокрытие данкан капсюля ци это можно уделить что кто не встретила public protecting про и вот паблика это свойство метка которые видны везде protected это с одним подчеркиванием не можем к ним обратиться все можем к ним обратиться извне но не советуется там компилятор будет не компилятор точнее даёшь к может показать что не надо такое обращаешься к

    00:03:53 - 00:05:13

  • защищенному атрибуты и про и вот это более строгое защиту нас то есть двойное подчеркивание это значит что напрямую мы не можем обратиться к кому-то атрибуту но все равно скрыть это на уровне питона мы это можем обойти там писать одно подчеркивание название класса подчёркивание тут же атрибут или метод если мы получаем к нему доступ по [музыка] всем исследование множественное наследование наследования множество известного но на наследование делится то что у нас с либо один ребенок несколько родителей либо

    00:04:33 - 00:05:55

  • наоборот один родитель несколько дочерних классов можно поговорить с ним говорим про питон что интересно о наследовании to mr а с кем и разрешения зависимость раньше во втором кто не было можно 2 когда мы шли там по первому родители об иерархии вверх до самого объекта потом следующего брали и так далее сейчас третьем томе марат 3 ромбовидную системы разрешение мы поднимаемся на 1 уровень вверх проходим на этом уровне и слева направо всех родителей на следующий уровень и так далее то есть мы можем быстрее найти

    00:05:16 - 00:06:39

  • нужный нам элемент не копаясь на метод атрибутами что-то еще не однако поезда обжиг то каждый раз он хорошо обстрелу давай купим как мы можем создать оптимальный класс стр окна класса мы создаем в питоне с помощью и би си модуля экстракт bass класс то есть наследуем с бесси метод иначе такое вполне теории смотрел на практике абстрактных классов создаю шел и шел так прям орфизма полиморфизм если мы говорим про полиморфизмом симпатических языка кто он у нас основан том что мы либо перри окружаем функции либо перегружаем операторы кто

    00:05:59 - 00:07:57

  • не получается полиморфизм у основного проявления редакторе распутиной типизация со мной определяем что у нас за класс в зависимости от того какие у него свойства и методы то есть того что может делать шон он такой вопрос как мы можем создать свой контекстный контекст менеджер мы можем создать двумя способами либо написать классы перед разделить два магических методы это интервью и как сет либо через декоратор и генератор таисия декоратор библиотек в контексте прежней кратор контекст менеджер мы оборачиваем делом

    00:07:08 - 00:08:41

  • какие-то действия елгин объекты закрываем соединение например от магические методы ты упомянул какие еще знаешь без которых никуда говорим прием об основных это у нас и нет постоянно и везде конструктор класса new если мы предмета классы говорим то есть для создания класс так далее ггц из них gg0 кто из них 1 запускается механизм нашу дел и почти никогда никто деструктор не лезь лишь он [музыка] тоже не основные давать на джангл некоторые вопросы middle wars для чего нужны как работают танго нам нужны чтобы мы могли добавить

    00:08:04 - 00:10:04

  • какую-то логику в промежуток либо перед тем как запрос попадает из браузере во вьюгу либо после того уже после того как изобью response возвращается перед тем как он попадет браузере вот 2 место куда мы можем свои влоги накинуть о своей писал минуты какими-то сейчас на вот на практике не доводилось либо приходил на проект где уже были этими двое вливание стандартных jiang а ночи видел тебя в стеке django чарлз используется работал вот если у тебя какой-то приватный сервис где нужна регистрация или

    00:09:31 - 00:11:16

  • авторизация тут джунгли чарлз там необходимо сделать новый взгляд на дефекацию посадки то мне приходилось это делать приходилось [музыка] можем ли мы у нас следовать модели донкастер и там есть какие-то сложности у них сложности есть момент то что и разница в зависимости если мы наследуем от абстрактной модели то не будет создано только дочерняя если мы наследуем от обычно моделях то будет соответственно повторение модель а в другом случае будет просто ссылка на прошлая модель сейчас если мы abstract унаследуем что у

    00:10:24 - 00:12:10

  • нас будет ссылка на прошлое поля модель откорма следовать и дополнительно свои с мы от заполз наоборот хотел сказать если от обычной вот будет ссылка на прошлое дополнительно если это абстрактно это просто будет создана уже дочерние модель без абстрактный хорошо ну вот на пользу я вообще это удобная торчит использовать наследуем при создании базы любит очень удобно то есть мы можем какие-то вынести абстрактной модели экстрактами основа абстрактному но при этом с у нас везде есть к моему там название у это мы можем

    00:11:29 - 00:12:54

  • создать абстрактно модель который будет хранить его поле какой-нибудь это дополнительно логику там перри определенный метод стр и так далее для других принципе тоже случается у нас какая-то группа модели не скажу логику мы можем ее вынести позволит модель джангл уже в целом для чулок мандаринов какие методы знаешь на счет методов не очень-то и вопрос на общий аура зачем нам нужно время чтобы мы прощали взаимодействие и взаимодействует начали разработку чтобы нам не приходилось создавать там какую-нибудь те же модели

    00:12:18 - 00:13:46

  • down создаем и нам не приходилось писать 3 борт каждый раз вот эти вот промежуточные риск ведь запросы которые будут постоянно выполнялся плюс миграции удобно либо нам в любом случае подключать ул м какую к основанию без ему не джанкой пользуемся либо но самому система миграции который с пиарим пусты из миграции вообще неудобно проект нереально поддерживать у нас сама трещин в имел дело о джанке и буду все по горазд danger is a free борг для чего нужна стерилизатор стерилизатор основная функция это у нас все

    00:13:11 - 00:14:58

  • реализация данных то есть представление только на отдадим на клиенты то как мы будем с ними на сервере взаимодействовать ну плюс также можно логику как бы добавлять с ее вопрос но и дополнительными это два все конечно не советуют делать логика лучше выносить в отдельный методы отдельные места кто назначил завтра будет если желать проверить что валидно север нужные поля пришли в нужный тип реализовались и и отдать на клиента validation одна из важных ценностей сериализации понятно объекты питон объекты и сердца

    00:14:16 - 00:15:54

  • или дать хорошо permissions s-class из есть такой параметр для чего используется он используется для того чтобы у нас были ограниченные права конкретные нет девушки то есть либо там только опыт сыра ван использовать либо все если у нас публичное и либо можем свои кастомная писатель для определенных какой-то роли может так что чтение кто может читать пользователю что-то запретить или что-то раньше так это я в хитришь если вернемся к си реализатором там есть и методы как-то internal валу по-моему так направлять

    00:15:06 - 00:16:43

  • сейчас не помню такого это да ну его он не обязательный моего иногда можно переопределить для каких то целей который проезжаешь на не то интервалу то есть урок предоставление бег или внешнюю хорошо не способом неважно базам с gres основная это хорошо но джон какие знаешь джон джон это обычный бусин упал на ноги наш join да я в джон есть это когда мы берём все что общего у двух таблиц и те которые их сопоставления для левых не нашли они у нас в новом заполняется раджой то же самое наоборот cross join по моему кто по другому вроде

    00:16:06 - 00:17:56

  • crossing the перекрестное прям все значение общее все которые не совпали ну и слева и справа восполняется почитать какой-то ты столько левый исключить пересечению вот сыры и запрос тебе часто хочется последние несколько лет вообще не касался запросов сейчас по стыку ноги для чего использовать более редис твои прыгать из во-первых каширование там хранились кэшированные данные во вторых можно было использовать как промежуточный какой-то система хранилища то есть один проект ног туда данные класть и другой забирать то есть такая

    00:17:16 - 00:19:14

  • упрощенная система что кафку там подключать достаточно было редиса прошел для каширования для каширования использовали какую-то батарейку или вручную [музыка] клиентам команды строки ради есть опыт как они да есть pops up я там стену устраивать из кирова плюс на одной из работ у нас те же самые данные например такое очистить полностью убийцу я свернул что они под его флагом вошел есть она убирает всю базу то есть все таблицы начисто таблицу из одной-единственной всегда сложно ибо есть указываешь минус m номер своей базы и

    00:18:27 - 00:20:30

  • влажный для подчищает целые почему использовали тоже съела реет получатся два снова на таких направленности это периодические задачи и отложенный то есть чтобы гарантированно было оставлено сообщение например или когда долгий запрос выполняется чтобы ни один путала путь не занимать поток да ну периоде сказать честно то каждое утро нибудь сделать перед сделать куда-нибудь пересчет сбросить данные о чести такого плана шаг как-то мониторили очереди так что то было но на одной из работ of flower на другой

    00:20:08 - 00:21:59

  • это подключалась буксиром система отслеживания их [музыка] манга любим уничтожили основная грациозности мы как рабочая станция понте домашнюю на ринге я вопрос будет у нас есть три ветки df тест и мастер привет kdf уже сильно отличается от мастера просто там же много ключей разрабатывается на тесте тоже много свечей но они все кара 4 раз а надо быстренько что-то поправить на мастере вот там нашли какой-то бар надо его защитить и поправить и чтобы никакие изменения не ест с ты не из даже не попали масти

    00:21:11 - 00:23:05

  • как мы можем поступить от мастера создаем девку делом туда изменения ту ветку отдельно вливая мастер ственное не трогаем только мастера и у него нам же мастеру надо и мы же говорим то есть у нас есть провод мастера есть ты где ведется разработка какие-то fitch накапливаться и есть с букет с лица anew тест то есть если она у нас не hotfix какой-то исход викстром срочно-срочно сразу мастер если нет ну мы вдв вливаем там тестем вот не вдв тест потом уже эту же ветку постели со всего успешно ну там если б тесты мастер

    00:22:28 - 00:24:02

  • сильно отличается нам нужно конечно обратить внимание на то что чтобы может такое быть что на тесте это не повторится или тут такое может не мог развестись богдан что напрягаясь окружению ну соответственно мы тогда можем мастер подлить в тест и потом уже влить нашу ветку с интегрально начал расследуем ся от мастера хищным заливаем в мастеры ту ветку просто потом чтобы этот фикс появился на остальные пятках его также надо iv tf тест тоже добавить эффект но чтобы этого бага не нигде так обычно же не не ветку избавлен кто-то

    00:23:18 - 00:24:49

  • фиксили добавляет прям мастер вливают полностью перед тем как мы тот же d будет мастер вливать просто мастер уль want ft смерти изменение в том же дел мастер там стресс на это изменение уже будет точно чисто ветку так bug fixes вы не вливает ну да но это сделал можем через месяц залить на мастер в течение этого месяца чтобы этот фикс тоже в был модели разработчикам это баг не мешает то зачем нужен и критические мешает разработки туда еще такой архитектурный вопрос например у нас есть сервис что-то показываем пользователь в зале

    00:24:10 - 00:25:47

  • деньги и каждый пользователь может стать партнером реферальную систему мы [музыка] тем что он может пригласить другого пользователя и и мы должны понять что если этот новый пользователь оплатит нам какую-то услугу то мы должны этому нашим партнерам которую пригласил но какой-то процент от стоимости он примерная структура навык идет у нас есть просто сервис и есть и юзеры у модели юзер и вот как бы ты сделал все от кого не делал хорошим это надо после поизучать ну как я могу предположить как обычно я вижу то есть

    00:25:15 - 00:27:00

  • когда порфира нем ссылкам переходит там добавляют по это уникальный токен пользователю и в ссылку он подставляется то есть если мы увидим что у нас хоть до ранг кителе запрос или еще где то это таким юзеров ский то есть если мы говорим про архитектуру таблиц мы можем создать табличку с этими токенами ссылку для таблицы users на то какие у него плагины либо 1 то есть и ситуаций которые есть и мы проверяем то есть новый пользователь заходит атомы будут или запроса котировок аварии выделиться кадров вот ты достоин токен идем базу

    00:26:17 - 00:27:47

  • смотрим какому пользователю это talking принадлежит то есть допустим от иванова ивана он пришел значит мы даем бонус этому пользователю вот кое-что голову приходит нормально чем чем хороший фастаким такой обширный вопрос что тебе в нём может быть понравилось мне в нем понравилось да явились во первых он как лично мое мнение конечно другие как-то могут по-другому думать меня просто что он довольно таки простой и для маленьких проектов вместо нужными микро серость какой нибудь написать у которого нету жирной логике то можно там

    00:27:02 - 00:28:27

  • буквально за пару минут поднять его будешь этот проект одну команды все у тебя уже вот сервисы есть ты можешь ходить по орланд какие-то вещи выполняют новой плюс синхронности таких что я согласен с микро сервиса просто огонь так ну меня закончились вопросы можете через какие-нибудь в плоском не

    00:27:53 - 00:28:55