Заметки разработчика
474 subscribers
667 photos
4 videos
1.16K links
Заметки о Frontend, Backend и немного DevOps. В основном о #PHP, #Laravel, #JavaScript, #HTML, #CSS, тестировании и настройке серверов.

https://www.dev-notes.ru

@snakenf
Download Telegram
CSS `if()`: новая функция условной логики доступна в Chrome 137+

CSS с каждым днем превращается в настоящий «язык программирования». С появлением новых возможностей, таких как CSS переменные, функция `calc()`, псевдоклассы `:has()` и `:is()`, а также универсальные `@media` запросы, CSS упрощает создание сложных стилей и макетов.

В CSS появилась новая функция if(), пока доступная только в Chrome 137 и выше. Это первый шаг к условной логике прямо в стилях.

🖥 Читать статью

📱 @dev_notes_ru

#Frontend #CSS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥1
Зачем нужны логические свойства CSS

Сегодня я хотел бы поговорить о логических свойствах CSS — новом (и, возможно, более эффективном) способе определения свойств, которые по своей природе являются направленными.

🖥 Читать статью

📱 @dev_notes_ru

#Frontend #CSS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
Каст модели AsUri

Ash Allen предоставил каст модели AsUri, преобразующий значения в экземпляр Illuminate\Support\Uri и обратно.

use Illuminate\Support\Uri;
use Illuminate\Database\Eloquent\Casts\AsUri;

protected function casts(): array
{
return [
// ...
'destination_url' => AsUri::class,
];
}

// Set a URL
$shortUrl->destination_url = new Uri('https://www.example.com:1234/hello?param=value');
$shortUrl->save();


👩‍💻 Подробности см. в Pull Request #55909.

📱 @dev_notes_ru

#Laravel #Laravel12
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Агрегатные функции SQL

В статье мы рассмотрим наиболее часто используемые агрегатные функции SQL, их синтаксис, практические примеры и способы оптимального использования в запросах.

🖥 Читать статью

📱 @dev_notes_ru

#DataBase #SQL
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥1
Контекстный биндинг интерфейса через атрибуты

Yitz Willroth добавил атрибут Give, позволяющий использовать контекстные зависимости с помощью атрибутов PHP 8:

// Традиционный подход - в ServiceProvider
$this->app->when(UserController::class)
->needs(UserRepositoryInterface::class)
->give(DatabaseUserRepository::class);

use Illuminate\Container\Attribute\Give;

// Использование атрибута Give
class UserController extends Controller
{
public function __construct(
#[Give(DatabaseUserRepository::class)]
private UserRepositoryInterface $userRepository
) {}
}

// Ещё один пример
class OrderService
{
public function __construct(
#[Give(StripePaymentProcessor::class)]
private PaymentProcessorInterface $processor
) {}
}


👩‍💻 Подробности см. в Pull Request #55904.

📱 @dev_notes_ru

#Laravel #Laravel12
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21👎1🔥1
В Query Builder добавлен reorderDesc()

Rihulfa Akbar добавил в конструктор запросов метод reorderDesc(), являющийся сокращением для добавления в запрос условия сортировки по убыванию:

// использование reorder()
$this->reorder($column, 'desc');

// reorderDesc()
$query->reorderDesc($column);


👩‍💻 Подробности см. в Pull Request #55885.

📱 @dev_notes_ru

#Laravel #Laravel12
Please open Telegram to view this post
VIEW IN TELEGRAM
assertRedirectBack() портирован в Laravel 11

Graham Campbell портировал TestResponse::assertRedirectBack, добавленный в Laravel 12.13 в Laravel 11:

$testResponse->assertRedirectBack();


👩‍💻 Подробности см. в Pull Request #55780.

📱 @dev_notes_ru

#Laravel #Laravel11
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣1
Please open Telegram to view this post
VIEW IN TELEGRAM
💯3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6
Почему, когда что-нибудь происходит, в этом всегда замешаны вы трое?

📱 @dev_notes_ru

#joke
Please open Telegram to view this post
VIEW IN TELEGRAM
Статистика версий PHP: Июнь 2025

Давайте посмотрим, что изменилось за последние полгода, а также посмотрим, как PHP 8.4 внедряется через полгода после его релиза.

🖥 Читать статью

📱 @dev_notes_ru

#PHP
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1🥰1
Frontend vs Backend

📱 @dev_notes_ru

#joke
Please open Telegram to view this post
VIEW IN TELEGRAM
👎1
Когда назначаешь стажера исправлять ошибки в устаревшем спагетти-коде...

📱 @dev_notes_ru

#joke
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🚀 Laravel.nvim переносит Laravel Idea в 👩‍💻 Neovim! Умная навигация с gd, интеллектуальное автозаполнение, автоматическое создание файлов и специфичные инструменты Laravel. Мгновенная навигация по маршрутам, представлениям и конфигурациям.

Некоторые из функций:
- Умная навигация gd (маршруты, представления, конфигурации)
- Интеллектуальное автозаполнение
- Автоматическое создание файлов с обнаружением фронтенда
- Интеграция с Artisan и диаграммы схем (mermaid)
- и многое другое...

👩‍💻 https://github.com/adibhanna/laravel.nvim

📱 @dev_notes_ru

#Laravel #Neovim
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Когда ретроспективный митинг отменен... И не нужно обсуждать «Что пошло не так»

📱 @dev_notes_ru

#joke
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣4👍3
Что такое рекурсия и как использовать её в JavaScript?

Рекурсия
— это не просто функция, вызывающая саму себя. Это инструмент, который помогает, когда циклы уже не справляются.

- Как устроены рекурсивные функции
- Когда рекурсия полезнее цикла
- Примеры
- Как не попасть в бесконечный вызов

🖥 Читать статью

📱 @dev_notes_ru

#JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
👩‍💻 PHP 8.5 — что нового?
В конце года выходит PHP 8.5, и он приносит множество интересных обновлений:

— оператор конвейера |>
array_first() и array_last()
— атрибут #[\NoDiscard]
— улучшения cURL, Directory, трассировки ошибок
— и даже замыкания в константах!

🖥 Читать статью

📱 @dev_notes_ru

#PHP #PHP85
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
ECMAScript 2025 утверждён!

На 129-й Генеральной ассамблее Ecma был принят новый стандарт JavaScript. Что нас ждёт:

Импорт JSON с with { type: 'json' }
iterator.filter().drop().take() — полноценные цепочки итераторов
Set.prototype.union(), intersection() и другие
Promise.try() и RegExp.escape()
Поддержка Float16Array и inline-флагов в регулярках

🖥 Читать статью

📱 @dev_notes_ru

#JavaScript #ECMAScript2025 #ES2025 #frontend #вебразработка
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from The Dragon Code News
4 дня назад вышел новый стандарт стиля кода - PER-CS v3.0

Документ миграции с версии PER-CS 2.0 можно найти здесь.

https://github.com/php-fig/per-coding-style/releases/tag/3.0.0
👍3