gram news
Аватар канала PHP | Вопросы собесов

PHP | Вопросы собесов

@easy_php_ru

Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @easyoffer_adv

2,330подписчиков

Открыть канал

Последние посты

  • PHP | Вопросы собесов

    22 сент., 19:18

  • PHP | Вопросы собесов

    22 сент., 16:10

    🤔 Что такое рекурсия?Рекурсия — это метод в программировании, при котором функция вызывает сама себя. Рекурсия используется для решения задач, которые можно разбить на более мелкие, однотипные задачи.?Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    22 сент., 12:31

  • PHP | Вопросы собесов

    22 сент., 09:06

    🤔 Какие могут быть проблемы от Join'а?Использование JOIN в SQL может привести к нескольким проблемам, особенно при работе с большими таблицами. Рассмотрим основные из них.🟠Производительность (нагрузка на БД) Чем больше данных соединяется, тем больше ресурсов требуется. Проблема: JOIN создаёт временную таблицу в памяти, что замедляет запрос. Если нет индексов, соединение идёт через полный перебор (Nested Loop Join), что очень медленно. Решение: Добавить индексы на поля, по которым идёт соединение. Использовать EXPLAIN для анализа запроса. EXPLAIN SELECT FROM users JOIN orders ON users.id = orders.user_id;🟠Дублирование строк (Картезианское произведение) Если используется JOIN, но нет условия соединения (ON), запрос создаст все возможные комбинации строк. Проблема: SELECT FROM users, orders;Решение Всегда указывать ON или USING: SELECT FROM users JOIN orders ON users.id =
  • PHP | Вопросы собесов

    21 сент., 20:09

  • PHP | Вопросы собесов

    21 сент., 16:11

    🤔 В чем заключается обработка ошибок и исключений?Это механизм выявления и реагирования на непредвиденные ситуации в коде. - Ошибки (Errors) – критические сбои (OutOfMemoryError, StackOverflowError). - Исключения (Exceptions) – проблемы в логике (NullPointerException, IOException). Обрабатываются с помощью try-catch-finally, throw, throws, а также глобальных обработчиков (onError, fallback strategies).Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    21 сент., 10:38

  • PHP | Вопросы собесов

    21 сент., 09:06

    🤔 Какое отличие у протоколов tcp и udp?Это два основных транспортных протокола в интернете. Они имеют разные характеристики и используются для различных целей.🚩Основные отличия🟠Надежность TCP: Обеспечивает надежную передачу данных. Он использует механизмы установления соединения, подтверждение получения (ACK), контроль потерь пакетов, повторную передачу потерянных пакетов и контроль потока. Это гарантирует, что данные будут доставлены корректно и в правильном порядке. UDP: Не обеспечивает надежную передачу данных. Нет подтверждений получения, нет повторной передачи потерянных пакетов и нет контроля потока. Это делает передачу менее надежной, но более быстрой и с меньшими накладными расходами.🟠Установление соединения TCP: Перед началом передачи данных устанавливается соединение с помощью процедуры "трехстороннего рукопожатия" (three-way handshake). Это означает, что обе
  • PHP | Вопросы собесов

    20 сент., 16:11

    🤔 Для чего предназначены форматы запросов и ответов приложения?Форматы запросов и ответов обеспечивают обмен данными между клиентом и сервером. Популярные форматы: - JSON – компактный, удобный для API. - XML – читаемый, часто используется в SOAP. - YAML – удобен для конфигураций. - Protobuf – бинарный, эффективный для высоконагруженных систем. Форматы обеспечивают унифицированное взаимодействие между различными сервисами.Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    20 сент., 09:06

    🤔 Как спроектировать базу данных?Проектирование базы данных – это ключевой этап в создании любой системы, где хранятся данные. Если БД спроектирована плохо, это приведёт к медленной работе, избыточности данных и сложным обновлениям.🟠Определение требований и структуры данных Сначала нужно понять, какие данные будут храниться и как они связаны. Какие объекты будут в системе? (например, пользователи, заказы, товары). Как они связаны друг с другом? (например, один пользователь может делать много заказов). Какие поля нужны в каждой таблице? (например, email, password, created_at). - Какие запросы будут выполняться чаще всего?Пример: интернет-магазин Пользователи (users) Товары (products) Заказы (orders) Связь между заказами и товарами (order_items)🟠Определение таблиц и связей (ERD – диаграмма) Разделяем данные по таблицам и определяем связи (1-к-1, 1-к-N, N-к-N). Связи между
  • PHP | Вопросы собесов

    19 сент., 16:11

    🤔 Разница между pull и fetch?git pull выполняет fetch (загружает изменения из удалённого репозитория) и автоматически сливает их с локальной веткой. git fetch только загружает изменения, не изменяя локальные файлы, что позволяет вручную контролировать слияние.Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    19 сент., 09:06

    🤔 Как сделать так, чтобы приложение разворачивалось быстрее в Dockerе?Для ускорения развертывания приложений в Docker существует несколько методов и практик, которые помогают оптимизировать сборку и запуск контейнеров. Вот некоторые из них:🚩Оптимизация Dockerfile🟠Меньше слоев Каждая инструкция в Dockerfile создает новый слой в образе. Старайтесь минимизировать количество слоев, объединяя инструкции, где это возможно. # Плохо RUN apt-get update RUN apt-get install -y curl RUN apt-get install -y vim# Хорошо RUN apt-get update && \ apt-get install -y curl vim🟠Использование правильного базового образа Выберите наиболее подходящий базовый образ, который минимально необходим для вашего приложения. Использование минималистичных образов, таких как alpine, может существенно уменьшить размер образа. FROM php:7.4-fpm-alpine
  • PHP | Вопросы собесов

    18 сент., 16:11

    🤔 Что такое DP (Dynamic Programming)?1. Динамическое программирование — это метод оптимизации, используемый для решения задач, разбиваемых на подзадачи. 2. Результаты подзадач сохраняются и переиспользуются, чтобы избежать повторных вычислений. 3. Используется для задач оптимизации, например, нахождение кратчайшего пути, задачи Фибоначчи или задач на разбиение.Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    18 сент., 09:06

    🤔 Что есть кроме микросервисной и монолитной архитектуры?Помимо монолитной и микросервисной архитектуры, существуют другие подходы к построению программных систем. Каждый из них решает свои задачи и подходит для разных типов проектов.🚩Service-Oriented Architecture (SOA) – Сервисно-ориентированная архитектура- Это переходный вариант между монолитом и микросервисами. - В SOA приложение делится на крупные сервисы (например, "Платежи", "Пользователи", "Заказы"). - Все сервисы взаимодействуют через ESB (Enterprise Service Bus) – специальный слой для связи между сервисами. Для крупных корпоративных систем, где много интеграций. Когда нужна централизованная логика взаимодействия сервисов.🚩Serverless (Бессерверная архитектура)- Код выполняется в облаке, а не на собственных серверах. - Программист пишет функции (FaaS – Function as a Service), которые выполняются по запросу. - Серверы
  • PHP | Вопросы собесов

    17 сент., 09:06

    🤔 В чем преимущества асинхронного шифрования?Асинхронное шифрование (асимметричная криптография) использует пару ключей: Открытый (public key) – используется для шифрования данных. Закрытый (private key) – используется для расшифровки данных.Этот метод отличается от симметричного шифрования, где один и тот же ключ используется и для шифрования, и для дешифровки.🟠Безопасный обмен ключами - В симметричном шифровании нужно передать секретный ключ, что создаёт риск его перехвата. - В асимметричном шифровании передаётся только открытый ключ, а закрытый ключ никогда не покидает владельца.🟠Цифровая подпись – гарантия подлинности данных - Можно подписывать данные закрытым ключом, а затем любой человек может проверить их подлинность с помощью открытого ключа. $data = "Важное сообщение"; $privateKey = openssl_pkey_get_private(file_get_contents("private.pem")); $publicKey = openssl_pkey_
  • PHP | Вопросы собесов

    16 сент., 16:11

    🤔 Как расшифровывается REST?REST (Representational State Transfer) — это архитектурный стиль взаимодействия систем через HTTP. Он основан на представлении ресурсов как URL и использовании стандартных HTTP-методов (GET, POST, PUT, DELETE) для работы с этими ресурсами.Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    16 сент., 09:05

    🤔 Для чего нужно пространство имен в PHP?Пространства имён (namespace) в PHP используются для разделения кода и предотвращения конфликтов имён классов, функций и констант.🚩Почему нужны namespace?Избегают конфликтов имён (если два разных файла объявляют одинаковые классы). Упрощают организацию кода (структура похожа на файловую систему). Работают с автозагрузкой (PSR-4) – Composer использует namespace для загрузки файлов.🚩Пример использования namespaceБез пространства имён – конфликт классов // Файл: models/User.php class User { public function getRole() { return "Пользователь"; } }
  • PHP | Вопросы собесов

    15 сент., 16:11

    🤔 Что известно про наследование?Это механизм объектно-ориентированного программирования, позволяющий создавать классы на основе других классов. Позволяет повторно использовать код, добавлять или переопределять функциональность.Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний
  • PHP | Вопросы собесов

    15 сент., 09:05

    🤔 Расскажи про полиморфизмПолиморфизм — это одна из ключевых концепций ООП (объектно-ориентированного программирования), которая позволяет объектам разного типа использовать один и тот же интерфейс. Это значит, что один метод может работать с разными типами данных, но при этом давать корректный результат.🚩Зачем нужен полиморфизм?🟠Гибкость кода можно легко заменять одни классы другими, не меняя общий код. 🟠Упрощение поддержки код становится понятнее и легче для расширения. 🟠Сокращение дублирования один общий интерфейс может использоваться разными классами.🚩Виды полиморфизмаПолиморфизм через наследование (override, переопределение методов) Полиморфизм через интерфейсы (реализация одного интерфейса разными классами)🚩Полиморфизм через наследование
  • PHP | Вопросы собесов

    14 сент., 16:11

    🤔 Чем HTTP первой версии отличается от второй?HTTP/1.1 требует для каждого запроса нового соединения, что создает дополнительную нагрузку. HTTP/2 поддерживает мультиплексирование, позволяя передавать несколько запросов и ответов одновременно по одному соединению, что улучшает производительность.?Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний