программирование

A collection of 92 posts
фильтр Блума

Как работают фильтры Блума в высоконагруженных системах и SRE практиках

Узнайте, как фильтры Блума помогают экономить память в высоконагруженных системах за счет использования вероятностных структур данных. Разберем математику хеш-функций и алгоритмы работы битовых массивов на практике.
4 min read
безопасность

Как защитить PHP-приложение от популярных атак по стандарту OWASP Top 10

Узнайте основные принципы защиты веб-приложений на PHP от SQL-инъекций, XSS и других критических уязвимостей. Статья поможет перейти к проактивному подходу Security by Design и автоматизировать проверки безопасности.
2 min read
алгоритм

Как работают алгоритмы сортировки данных в современных системах программирования

Разбираемся в основах и продвинутых методах сортировки данных от пузырька до современных гибридных решений. Узнайте, как выбирать правильный алгоритм для обеспечения высокой производительности вашего приложения.
6 min read
алгоритм

Основы битовых операций: от теории к высокопроизводительному программированию

Узнайте, как использовать битовые операции для достижения максимальной производительности вашего кода. Разбираем базовые трюки, такие как проверка четности и магию XOR.
1 min read
PHP

Изучаем Reflection API в PHP: основы метапрограммирования и практическое применение

Узнайте, как Reflection API позволяет анализировать структуру кода во время выполнения. Разберитесь в механизмах работы классов рефлексии и их роли в архитектуре современных фреймворков.
5 min read
Алгоритмы

Понимание NP-полных задач: от теории сложности к практическому коду

Узнайте, как отличить простые задачи от NP-полных и почему поиск идеального решения иногда невозможен. Разберем практические стратегии использования эвристик и профессиональных солверов для оптимизации ресурсов.
2 min read
PHP

Как работают Fibers в PHP: глубокое погружение в кооперативную многозадачность

Узнайте, как работают Fibers в PHP 8.1 и чем они отличаются от классических потоков и генераторов. Статья разбирает внутреннюю механику стека вызовов и способы создания собственных планировщиков.
6 min read
Алгоритмы

Основы и продвинутые техники алгоритма двоичного поиска для программистов

Узнайте основы работы классического алгоритма двоичного поиска и способы его эффективной реализации. Разберем типичные ошибки программирования и разницу между функциями lower_bound и upper_bound.
5 min read
алгоритм

Принцип разделяй и властвуй от теории алгоритмов до практической реализации

Узнайте основные принципы парадигмы «Разделяй и властвуй» и способы её применения в разработке высокопроизводительных систем. Мы разберем теорию декомпозиции задач, мастер-теорему и классические примеры алгоритмов.
5 min read
алгоритм

Как работают алгоритмы сортировки данных в современных языках программирования

Разбираем основы и продвинутые методы сортировки данных, от базовых алгоритмов до современных гибридных решений. Узнайте, как выбор правильной сложности влияет на производительность высоконагруженных систем.
6 min read
Архитектура

Разбор стратифицированной архитектуры и принципов разделения ответственности в разработке ПО

Статья посвящена разбору принципов стратифицированной архитектуры и эффективному разделению ответственности в сложных программных системах. Вы узнаете, как изолировать бизнес-логику от технических деталей реализации для повышения масштабируемости кода.
7 min read
программирование

Основы побитовых операций для системных разработчиков и инженеров SRE

Узнайте, как побитовые операции помогают достигать экстремальной производительности в высоконагруженных системах. Разбираем базовые математические свойства, алгоритм Брайана Кернигана и эффективные способы управления флагами состояния.
6 min read
PHP

Как проектировать отказоустойчивые PHP системы через архитектуру исключений

Узнайте, как перейти от реактивного исправления багов к системному проектированию механизмов обработки сбоев в PHP. Мы разберем создание кастомных исключений и использование стандартов PSR-3 для обеспечения стабильности продакшена.
6 min read
Архитектура

Гексагональная архитектура: как изолировать бизнес-логику от внешних технологий и зависимостей

Узнайте, как гексагональная архитектура помогает изолировать бизнес-логику от внешних зависимостей. Мы разберем принципы работы портов и адаптеров для создания гибких систем.
6 min read
микросервис

Как обеспечить согласованность данных в микросервисной архитектуре через 2PC и Saga

Разбираем основные подходы к обеспечению согласованности данных в микросервисах: протокол 2PC и паттерн Saga. Узнайте, как выбрать оптимальную стратегию для вашего проекта на основе анализа ограничений и преимуществ каждого метода.
4 min read
алгоритм

Самобалансирующиеся деревья поиска: глубокий разбор AVL, красно-черных и B-деревьев

Разбираем основные типы самобалансирующихся деревьев поиска, включая AVL и красно-черные структуры. Узнайте, как они обеспечивают стабильную сложность операций в высоконагруженных системах.
4 min read
Алгоритмы

Разбор основных алгоритмов поиска и обработки строк в программировании

Узнайте, как работают фундаментальные алгоритмы обработки строк в современных высокопроизводительных системах. Мы подробно разберем методы Кнута-Мориса-Пратта, Рабина-Карпа и использование суффиксных деревьев.
4 min read
алгоритм

Как работают фильтры Блума: от математики до практического применения

Узнайте, как фильтры Блума помогают экономить память при проверке наличия элементов в огромных массивах данных. Разбираем математику работы структуры, выбор параметров и реальные кейсы применения.
2 min read
хеш-таблица

Как работают хеш-таблицы: глубокий разбор коллизий и методов их решения

Разберитесь, как работают хеш-таблицы на низком уровне и почему возникают коллизии. Статья объясняет критерии качественных хеш-функций и методы оптимизации для высоконагруженных систем.
7 min read
безопасность

Как защитить PHP веб-приложения от современных кибератак и взломов

В статье рассматриваются ключевые методы защиты PHP-приложений от популярных уязвимостей, таких как SQL-инъекции и XSS. Вы узнаете о правильном использовании PDO, фильтрации данных и управлении сессиями для обеспечения безопасности кода.
5 min read
алгоритм

Сбалансированные деревья поиска: AVL, Красно-черные и B-деревья в деталях

Узнайте, как сбалансированные деревья поиска обеспечивают стабильную сложность операций в высокопроизводительных системах. Мы разберем принципы работы AVL, красно-черных и B-деревьев для выбора оптимальной структуры данных.
5 min read