Professional Documents
Culture Documents
Питання та відповіді на співбесіду
Питання та відповіді на співбесіду
- Професія пов’язана з
застосуванням технічних знань для розробки продукту, які потрібні
людству. Послідовність дій спрямованих на створення продукту.
Які є методи HTTP-запитів та яка між ними різниця? - GET, POST, PUT,
DELETE, PATCH, OPTIONS.
Як виглядають HTTP-request/response? -
Що таке авторизація і як вона працює? - Перевірка користувача на
право доступу до ресурсу. Спочатку йде аутентифікації користувача, а
потім відправляє йому токен. Токени можуть передаватись по різному, в
cookie, headers або url адресі.
Які є змінні та незмінні типи даних? - Незмінні: int, float, complex, str, tuple,
bool, frozenset. Змінні: list, dict, set.
Що таке область видимості змінних? - У Python існують три області
видимості змінних: local (область всередині функції), nonlocal (область
видимості, коли функція вкладена в функцію), global (область за межами
всіх функцій та класів).
Які є види імпорту? - Імпорт модулю (import random), імпорт функції або
класу (from random import randint), імпорт всіх функцій з модулю (from
random import *), імпорт з аліасом (import numpy as np).
Що таке PEP (Python Enhancement Proposal), які з них знаєте (PEP 8, PEP
484)? - Пропозиція щодо покращення Python. PEP 8 - стиль коду. PEP 484
- додає типи анотацій. PEP 342 - додає контекстні менеджери.
Різниця між list і tuple, навіщо вони? - list це змінюваний тип даних, tuple
ні. Кортежі використовуються коли дані не повинні бути змінені після
створення. Також tuple буде швидше працювати ніж list.
Який вигляд має запит, який виконує JOIN між таблицями й до самих
себе? - У випадку self-join замість двох таблиць ми маємо лише одну
таблицю, але з двома різними псевдонімами. Наприклад, якщо у нас є
таблиця employees зі стовпцями id, name, manager_id, то ми можемо
зробити self-join для знаходження керівників кожного співробітника за
допомогою такого запиту:
● SELECT e.name as employee_name, m.name as manager_name FROM
employees e JOIN employees m ON e.manager_id = m.id;