Разбавим этот смутный понедельник интересным дайджестом из мира близких нам технологий.
1. За прошедшую неделю была пара интересных RFC. Например, предлагают добавить возвращаемое значение из switch, чтобы вместо
switch ($x) {
case 0:
$y = 'Foo';
break;
case 1:
$y = 'Bar';
break;
case 2:
$y = 'Baz';
break;
}
var_dump($y);можно было написать:
$y = $x switch {
0 => 'Foo',
1 => 'Bar',
2 => 'Baz',
};
var_dump($y);Меньше кода, читается не хуже, почему бы и нет?
Ещё один RFC, который предлагают включить в следующий релиз - это возможность объявления полей класса в конструкторе, как в TypeScript:
class Point {
public function __construct(
public float $x = 0.0,
public float $y = 0.0,
public float $z = 0.0
) {}
}Лично мне такая идея не кажется хорошей - кода явно меньше, но не пострадает ли от этого его качество? Мне кажется, что объявление на уровне класса и инициализация уже объявленных переменных - не должна быть в одном месте.
2. Ребята из Psalm (самый, наверное, популярный статический анализатор для PHP) добавили ссылки в сообщения анализатора, чтобы можно было быстро ознакомиться с проблемой более подробно. Теперь сообщения линтера выглядят так:
ERROR: InvalidArgument - somefile.php:8:19 - Argument 1 of getAttribute expects string, int provided (see https://psalm.dev/004)
Мелочь, а приятно :)
3. SkyEng 28-ого числа провели очень крутую вещь - online PHP-митап. В условиях карантина (я надеюсь ты его не нарушаешь), самоизоляции и плохого настроения такие события всегда радуют. Обсуждали легаси, GraphQL, работу на удалёнке, монолиты и прочие прелести разработки. Посмотреть можно тут.
Надеюсь, что и другие митапы, которые должны были пройти в офлайне, не отменятся, а пройдут в онлайн-режиме (календарь митапов на русском языке можно чекать тут)
4. Опубликовали библиотеку для разработки мини-игр на PHP (со статусом - work in progress). Смысла в ней я особо не вижу, но выглядит мило :) В любом случае респект разработчику за такую работу.
5. Немного о VUE: релизнули в статусе WIP 3-ю версию VueJS:
Изменения можно посмотреть тут.
Не болейте, друзья, и соблюдайте карантин - сейчас это наиболее важно. Всем хорошего начала недели!