2 января 2026 г.

Инвестиционный апартамент у моря с доходом — Premier Fort Beach

 Продажа 2к 71м2 4 этаж Premier Fort Beach Sunny Beach Болгария

Основные параметры:

📍 Premier Fort Beach (апарт-отель)
🏢 Секция B1, 4 этаж
📐 Общая площадь: 71м²




🛋 Планировка: гостиная с кухней, спальня, коридор, ванная/WC, балкон
Престиж Форт Бич/ Prestige Fort Beach - первоклассный жилой комплекс на первой береговой линии моря. Комплекс находится в живописной местности в южном районе курорта Святой Влас на границе с Солнечным Берегом. Комплекс построен на расстоянии 50 м от роскошного песчаного пляжа.

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

Комплекс построен в 2011 году, введен в экпслуатацию. Получен Акт № 16.

https://superbg.net/ru/prop-132-apartment-premier-fort-beach-sveti-vlas


Инвестиционный апартамент у моря с доходом — Premier Fort Beach




22 декабря 2025 г.

Linux, очистка диска, управление дисковым пространством

 

Команда

sudo du -h / | sort -h -r | head -n 20

Описание

Эта команда позволяет быстро найти самые «тяжёлые» папки и файлы на диске в Linux. Она полезна для анализа использования дискового пространства и очистки системы.

Разбор по частям:

  1. sudo du -h /

    • du (disk usage) — показывает размер папок и файлов.

    • -h — вывод в человекочитаемом формате (КБ, МБ, ГБ).

    • / — анализируем весь корневой каталог.

    • sudo нужен, чтобы увидеть все системные папки, доступные только root.

  2. | sort -h -r

    • sort сортирует строки.

    • -h — сортировка по «человекочитаемым» размерам (например, 1K, 20M, 3G).

    • -r — сортировка в обратном порядке, чтобы самые большие папки шли сверху.

  3. | head -n 20

    • head выводит только первые 20 строк.

    • Таким образом, мы видим 20 самых больших папок или файлов на диске.


Команда позволяет быстро оценить, какие каталоги занимают больше всего места на диске, и принять решение, что можно очистить.


systemd-journal — бинарные логи системы.
Проверить, сколько можно чистить

journalctl --disk-usage
Или оставить логи только за N дней
journalctl --vacuum-time=7d


15 декабря 2025 г.

CI4 vs Laravel — сухое сравнение

⚡ Скорость и ресурсы

CI4

  • стартует быстрее

  • меньше памяти

  • минимальный оверхед

  • отлично для VPS / слабых серверов

Laravel

  • тяжелее

  • больше bootstrap-логики

  • без кешей ощутимо медленнее

✔ Победитель: CI4
(особенно для каталогов, маркетплейсов, авто-сайтов)


🧱 Архитектура

CI4

  • ближе к «чистому PHP»

  • ты полностью контролируешь поток

  • легко делать кастомную архитектуру

  • нет навязанных паттернов

Laravel

  • строгое «как задумано фреймворком»

  • service container везде

  • magic-подход

  • удобно, но сложно отлаживать

✔ Победитель: зависит

  • контроль и прозрачность → CI4

  • быстро клепать типовые проекты → Laravel


🧠 Порог входа

CI4

  • понятен PHP-разработчику

  • минимум магии

  • легко читать чужой код

Laravel

  • нужно знать:

    • container

    • facades

    • contracts

    • providers

  • новичкам тяжело

✔ Победитель: CI4


🛠 CRUD / Бизнес-логика

CI4

  • всё явно

  • легко писать сложную логику

  • проще дебажить

Laravel

  • Eloquent удобен

  • но при сложных связях начинает мешать

  • часто тащат логику в модели (антипаттерн)

✔ Победитель: CI4
(для сложных каталогов, фильтров, кастомных запросов)


🔐 Аутентификация и роли

CI4

  • Myth\Auth / Shield

  • нужно понимать, что делаешь

  • легко кастомизировать

Laravel

  • Breeze / Jetstream / Fortify

  • работает «из коробки»

  • тяжело изменить глубоко

✔ Победитель: Laravel
(если нужен быстрый старт)


📦 Экосистема и пакеты

CI4

  • пакетов мало

  • часто пишешь своё

  • зато нет мусора

Laravel

  • пакет есть под всё

  • часто избыточны

  • обновления могут ломать проект

✔ Победитель: Laravel
(но цена — зависимость от пакетов)


🧪 Тестирование

CI4

  • есть, но скромно

  • редко используют

Laravel

  • тесты встроены в workflow

  • Pest / PHPUnit интегрированы

✔ Победитель: Laravel


🧩 Frontend (Vue / Alpine)

CI4

  • идеально под Alpine.js

  • хорошо работает с чистым Vue

  • нет жёсткой связки

Laravel

  • тянет:

    • Vite

    • Inertia

    • Livewire

  • если не хочешь — сложно избежать

✔ Победитель: CI4
(ты это уже используешь 👍)


🚀 Масштабирование

CI4

  • горизонтальное масштабирование простое

  • минимум состояния

  • легко вынести сервисы

Laravel

  • часто завязан на:

    • queues

    • redis

    • scheduler

  • сложнее в DevOps

✔ Победитель: CI4


🧠 Контроль разработчика

CI4

  • ты понимаешь каждую строчку

  • легко оптимизировать

Laravel

  • многое скрыто

  • «оно работает, но почему — не всегда ясно»

✔ Победитель: CI4


Итог — честно

Выбирай CI4, если:

  • сложные каталоги (авто, недвижимость, запчасти)

  • нестандартная бизнес-логика

  • нужен контроль

  • VPS, а не облака

  • долгоживущий проект

Выбирай Laravel, если:

  • стартап

  • MVP

  • команда из Laravel-разрабов

  • типовой SaaS

  • важно «быстро показать результат»

3 декабря 2025 г.

Шаблонов для первых сообщений в интернет знакомствах

 

большой набор нейтральных, лёгких и разнообразных шаблонов для первых сообщений. Я разделю их на категории, чтобы можно было выбирать тон в зависимости от настроения:


1. Общие дружелюбные:

  1. «Привет! Как проходит твой день?»

  2. «Привет! А что сегодня тебя порадовало?»

  3. «Привет! Люблю узнавать новые интересные факты. Есть что-то любопытное, чем хочется поделиться?»

  4. «Привет! Какой маленький успех сегодня сделал день лучше?»

  5. «Привет! А есть ли у тебя любимый способ отдохнуть после трудного дня?»


2. Игровые / вопросы на размышление:

  1. «Привет! Если бы можно было завтра оказаться в любой точке мира, куда бы поехала?»

  2. «Привет! Если бы твоя жизнь была сериалом, какой жанр был бы?»

  3. «Привет! Представь, что у тебя есть день без обязательств — чем бы занялась?»

  4. «Привет! Если бы можно было научиться чему-то новому за один день, что бы выбрала?»

  5. «Привет! Что лучше — приключения или спокойный день дома?»


3. Лёгкий флирт, но без давления:

  1. «Привет! Есть ли у тебя секрет, который всегда вызывает улыбку?»

  2. «Привет! А что тебя обычно заставляет смеяться?»

  3. «Привет! Судя по анкете, у тебя явно интересная энергия. Что помогает её поддерживать?»

  4. «Привет! Если бы можно было добавить один суперспособность на день — что бы выбрала?»

  5. «Привет! А есть что-то, что всегда поднимает настроение без всякой причины?»


4. Нестандартные / необычные вопросы:

  1. «Привет! Если бы можно было прожить один день из книги или фильма — какой бы день выбрала?»

  2. «Привет! А у тебя есть привычка, которая кажется странной другим, но тебе нравится?»

  3. «Привет! Что для тебя идеальный утренний ритуал?»

  4. «Привет! Если бы можно было вернуться в любое время жизни — куда?»

  5. «Привет! Какой самый неожиданный комплимент тебе когда-либо говорили?»

1 декабря 2025 г.

идеальная структура проекта на CodeIgniter 4.6 с разделением ответственности по слоям

 

1. CONTROLLER — только HTTP и передача данных

Задачи контроллера:

  • Принять запрос (GET/POST)

  • Создать DTO из запроса: RealEstateDTO::fromRequest($request)

  • Передать DTO в Service

  • Получить результат от Service

  • Передать данные в View

  • Никакой бизнес-логики, никаких where(), никаких запросов к модели

Контроллер — тонкий.


2. DTO — извлечение и валидация входных данных

Задачи DTO:

  • Прочитать входные данные из Request

  • Привести типы: string → int, пустое → null

  • Сформировать:

    • $filters

    • $sort

    • $pagination

    • $price_range

    • $city, $city_id

  • Создать эономические методы:

    • getFilters()

    • getSortOrders()

    • getPage()

    • getPerPage()

    • buildCanonicalUrl()

    • buildPriceRange()

DTO — фильтрация и нормализация данных + правила конвертации.
Никаких запросов к базе.


3. SERVICE — бизнес-логика

Задачи сервиса:

  • Принять DTO

  • Передать DTO → Filter → Repository

  • Выполнить бизнес-операции:

    • создание объекта

    • обновление объекта

    • сортировка

    • тумблеры (toggle)

    • привязка изображений

  • Конвертация DTO → entity → модель (insert/update)

Service — мозг приложения.


4. FILTER — подготовка query builder

Filter — это слой, который превращает DTO в SQL-запрос.

Задачи Filter:

  • Принять $dto->getFilters()

  • Применить:

    • where

    • like

    • between

    • orderBy

    • join

  • Поддержка:

    • $filter->where('city_id', 3)

    • $filter->orderBy('price','DESC')

    • $filter->paginate($page, $perPage)

Ничего не знает о Request, Service, Validation.

Filter — это SQL-конструктор.


5. MODEL — простая связь с конкретной таблицей

Задачи Model:

  • Точка входа в Query Builder

  • Описание таблицы

  • Soft deletes / timestamps

  • Методы:

    • getEntity($id)

    • isOwnedBy($id, $userId)

    • search()

  • Модель — это врата к базе, но не бизнес-логика.

Model — минимальная логика, только про таблицу.


6. REPOSITORY — доступ к данным

Repository — толстый слой для работы с базой.

Задачи Repository:

  • Выполнить Filter и Builder

  • Возвратить данные:

    • find

    • findAll

    • paginate

    • save/update

    • delete

  • Отвечает за работу со связями:

    • join cities

    • join users

    • eager loading (в будущем)

Repository — это слой, который заменяет работу с Model напрямую.

Слой Что делает Что не делает
Controller только request → DTO → service → view логика, SQL
DTO параметры, фильтры, сортировка, canonical SQL, бизнес-логика
Service операции над сущностями, вызывает Repository не обращается к Request
Filter строит SQL условие не знает о Request
Repository общение с Model и БД бизнес-правила
Model доступ к таблице, PK, timestamps бизнес-логика


27 ноября 2025 г.

Codeigniter 4 - DTO Filter Service

 

есть три компонента:

  1. DTO  — объект передачи данных. Здесь должны быть все фильтры и параметры запроса, которые приходят из GET или POST.

  2. Filter — класс, который строит запрос к модели на основе фильтров и сортировки.

  3. Service  — слой, который управляет моделью, фильтром, загрузкой отношений и прочими бизнес-операциями.


    Плюсы такого подхода:

  4. Все фильтры собраны в DTO → легко передавать, тестировать, валидировать.

  5. RealEstateFilter остаётся чистым, только строит SQL по фильтрам.

  6. Service не занимается чтением GET/POST, только преобразует DTO → чистый код.

  7. Контроллер короткий и читаемый.


6 апреля 2025 г.

Sylius eCommerce

 

Sylius — это eCommerce-фреймворк, построенный на Symfony, предназначенный для создания кастомизированных интернет-магазинов.

4 апреля 2025 г.

laravel-menu

laravel-menu — это пакет для создания меню в приложениях Laravel. Он позволяет разработчикам легко создавать динамичные и настраиваемые меню, которые часто используются для навигации на веб-сайтах или в веб-приложениях.

12 марта 2025 г.

Filament Laravel

Filament — это мощный админ-фреймворк для Laravel, предназначенный для быстрого создания панелей управления и интерфейсов CRUD. Он предлагает:

  • Простую интеграцию с Laravel, используя Eloquent-модели.
  • Гибкие формы и таблицы с продвинутыми функциями (фильтры, сортировка, поиск
  • Ролевую систему и авторизацию на основе Laravel Policies.
  • Поддержку плагинов, расширяющую функционал.
  • Совместимость с Livewire, что делает интерфейс динамичным.

18 февраля 2025 г.

Как посмотреть список сервис-провайдеров в Laravel?

 ✅ Просмотр config/app.php

Откройте файл config/app.php и найдите секцию 'providers'

 ✅  Использовать Artisan-команду

Запустите команду в терминале:

php artisan package:discover

Вывести через dd()

Добавьте в routes/web.php:

use Illuminate\Support\Facades\App;

Route::get('/providers', function () {
    return dd(App::getLoadedProviders());
});
Перейдите в браузере по http://your-site.test/providers, и вы увидите список всех загруженных провайдеров.



 

 

Инвестиционный апартамент у моря с доходом — Premier Fort Beach

 Продажа 2к 71м2 4 этаж Premier Fort Beach Sunny Beach Болгария Основные параметры: 📍 Premier Fort Beach (апарт-отель) 🏢 Секция B1, 4 этаж...