fomiash fomiash
13 Сентября 2022
PHP фреймворк HLEB

➳ Предыстория этого блога ❂

ocrmnolblog logo

Итак, наконец-то добрался до пробы мультиблогового движка, на котором сделан этот сайт, здесь есть еще много всего, сервис "вопросы и ответы", каталог ресурсов, но мне пока что нужно проверить как работает блог. Несмотря на множество возможностей движка, оказалось, что страницы грузятся довольно быстро, и последнее мне приятно видеть (далее будет ясно, почему). Теперь же посмотрим, на что...

Читать далее
5
742
14

Индексы в SQL базах данных

Что такое индексы?

При вставке очередной строки в таблицу сервер вашей БД технически не размещает их в какой-либо таблице по порядку, вместо этого он просто помещает данные в следующее доступное место в файле по списку этих свободных мест. При запросе к таблице серверу приходится проверять каждую строку таблицы, чтобы ответить по условиям запроса. Например, чтобы найти пользователей, имя которых начинается с "F", сервер должен...

Читать далее
1
22

Транзакции в MySQL

Транзакция представляет собой группу операторов SQL, которые обрабатываются атомарно, то есть как цельная единица проведённой работы. Если механизм базы данных может применить всю группу операторов к базе данных, он делает это, но если какой-либо из операторов не может быть выполнен из-за сбоя или по другой причине, ни один из них не применяется.

Управление транзакциями

Управление транзакциями является важной частью работы базы...

Читать далее
1
34
1

Критерии ACID для транзакций в MySQL

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

ACID

Атомарность. Транзакция воспринимается как единое целое, и ее выполнение подразумевает, что или все действия выполняются успешно, или не выполняется ни одно. Это...

Читать далее
1
12

Нейросети как будущее разработки ПО

Трансформация текущих ролей программистов и ИИ (в перспективе).

С каждым годом мы видим всё больше примеров применения нейросетей и автоматизации при их помощи в программировании. Одним из наиболее интересных направлений является генерация тестов для проверки качества кода. Но давайте заглянем немного дальше: возможно, в будущем программисты будут заниматься главным образом созданием тестов, а нейросети — писать программный...

Читать далее
1
80
Публикуйте, отвечайте, комментируйте...
Вы еще не зарегистрировались?
Войти

Какой PHP-фреймворк выбрать для новичка

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

Так как...

Читать далее
1
236

Использование слеша в конце URL

Со слешем или без, как правильно?

Есть два типа распространённых вида URL(Uniform Resource Locator) для сайтов - это со слешем в конце и без слеша. Изначально предполагалось, что адрес со слешем указывает на директорию, в то время как адрес без слеша на файл. Со временем, когда эти URL стали участвовать в маршрутизации и потеряли связь со внутренней структурой папок и файлов сайта, стали встречаться различные варианты реализации. Например, WordPress и...

Читать далее
1
239

Настройка соответствия контроллер/метод для HLEB2 аналогично роутингу Yii2

В YII2 (да и не только в нём) по умолчанию маршруты автоматически распределяются по контроллерам и методам. Например, адрес /site/index будет указывать в контроллер SiteController и его метод actionIndex(). С одной стороны это удобно, но способствует тому, что разработчики делают огромные контроллеры со множеством методов, что встречается почти в каждом проекте на YII. В совокупности с неинтуитивным роутингом в YII такое автоназначение маршрутов...

Читать далее
1
274
4

Настройки безопасности сайта на фреймворке HLEB2

HLEB2 — это фреймворк на PHP, который используется для создания веб-приложений и RESTful API. Хотя он сам по себе достаточно простой, безопасность остаётся важным аспектом при работе с любым веб-фреймворком.

Несомненно, вы хотите, чтобы ваш сайт был защищён от различных взломов и работал корректно. Так как эта тема посвящена фреймворку HLEB2, то подразумевается, что указанный сайт работает на этой основе. Есть много общих рекомендаций по...

Читать далее
1
261

Версионность (SemVer) во фреймворке HLEB2

SemVer (Semantic Versioning) - это соглашение о версионировании программного обеспечения, которое определяет структуру и семантику номеров версий. Основная цель SemVer — обеспечить четкое и последовательное понимание изменений в программном обеспечении.

Структура номера версии

Номер версии SemVer состоит из трех частей, разделенных точками.

Например: v3(major).1(minor).8(patch)

  • Основная версия (Major): Указывает на значительные изменения в...
Читать далее
2
187
1

Создание шаблона для Libarea

Этот сайт работает на платформе для коллективных блогов libarea. Недавно в репозитории Libarea была обновлена версия и внесено много улучшений. Посмотрел код проекта - он стал продвинутее и появились новые возможности. Но возникли проблемы с обновлением этого блога, потому что не следовал инструкции и изменил исходный код во многих местах, добиваясь нужного вида. В этот раз создам свой шаблон и опишу его создание, чтобы...

Читать далее
2
346

Бенчмарки контейнера HLEB2 us Slim Framework

Ранее опубликовал сравнение роутинга для Slim и HLEB2 при большом количестве маршрутов (иначе не было видно заметных различий), теперь пришёл черед реализации контейнера. Как и в прошлый раз получается, в Slim контейнер сторонний нужно установить, на выбор. Выбор пал на контейнер Symfony, так как слышал о нём лестные отзывы, что он без проблем может содержать несколько тысяч зарегистрированных...

Читать далее
3
213
fomiash fomiash
03 Мая

Бенчмарки маршрутов HLEB2 us Slim Framework

Несмотря на то, что Slim является микро-фреймворком, а HLEB2 перестал быть с приставкой "микро", по привычке провожу сравнение производительности последнего с микро-фреймворками.

Как известно, измерение вывода Hello World у фреймворков дело поверхностное. Однако, можно попробовать нагрузить маршрутизатор большим количеством роутов и посмотреть, что из этого выйдет. Для испытаний взял последнюю на данный момент версию...

Читать далее
2
479
1

Принципы MVC во фреймворке HLEB2

Структура проекта, объявленная как Model-View-Controller (Модель-Вид-Контроллер) давно не нова, к тому же, часто неправильно трактуется при использовании в Web, особенно в отношении backend.

Классическое взаимодействие подразумевает круговорот между этими частями приложения, по отношению к backend-фреймворку это означает следующее: сначала запрашивается Контроллер, затем при помощи Модели данные запроса преобразуются в данные ответа, а затем...

Читать далее
2
277

Переход на HLEB2 c первой версии фреймворка

В связи с выпуском второй версии фреймворка HLEB добавлю несколько рекомендаций к официальной документации для перехода с первой версии.

Эти рекомендации вам могут пригодиться, если у вас уже был проект на фреймворке.

Так как HLEB2 теперь поддерживает асинхронность, то обратная совместимость была потеряна для многих его частей. Воспользовавшись этим, переходить так переходить, было переписано с нуля почти всё, что...

Читать далее
1
334


Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.