The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Релиз языка программирования PHP 7.4, opennews (??), 28-Ноя-19, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


121. "Релиз языка программирования PHP 7.4"  +/
Сообщение от ДмитрийСССР (?), 29-Ноя-19, 09:29 
Когда уже ребята из PHP сделают возможность строго указывать типа элементов массива который передают/получают, чтобы было что-то вроде

> function show (array<int> $data);

и

> function show (array<ClassName> $data);

очень подобного не хватает из коробки

Ответить | Правка | Наверх | Cообщить модератору

123. "Релиз языка программирования PHP 7.4"  +2 +/
Сообщение от Аноним (123), 29-Ноя-19, 10:00 
Разработчики пхп писали об этом, потеря в производительности пока не позволяет сделать такие тайпхинты.
Ответить | Правка | Наверх | Cообщить модератору

134. "Релиз языка программирования PHP 7.4"  +/
Сообщение от ДмитрийСССР (?), 29-Ноя-19, 10:49 
Спасибо :)
Ответить | Правка | Наверх | Cообщить модератору

137. "Релиз языка программирования PHP 7.4"  +/
Сообщение от Аноним (137), 29-Ноя-19, 12:23 
Копировать иероглифический синтаксис из плюсов идея чреватая.
Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

148. "Релиз языка программирования PHP 7.4"  +/
Сообщение от thevoan (ok), 29-Ноя-19, 15:59 
Создайте класс BlablaCollection, который будет содержать массив только определенного типа, сделайте этот класс коллекцию итерируемой и передавайте это в нужную функцию

function show (BlablaCollection $data);

Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

153. "Релиз языка программирования PHP 7.4"  +/
Сообщение от KonstantinB (ok), 29-Ноя-19, 18:17 
Тут проблема в том, что либо придется копипастить кучу кода, либо терять типизацию в абстрактном классе с реализацией базовых методов типа map() или sort().
Ответить | Правка | Наверх | Cообщить модератору

155. "Релиз языка программирования PHP 7.4"  +/
Сообщение от thevoan (ok), 29-Ноя-19, 19:11 
Мир не идеален =)

На текущий момент, на мой взгляд, лучше
копипастить/кодогенерировать, чем
ориентироваться на array.

Еще можно взглянуть на:
- hack lang (там есть генерики, и вроде бы,
  можно массивы делать типизированные).
- java :)

Ответить | Правка | Наверх | Cообщить модератору

152. "Релиз языка программирования PHP 7.4"  +/
Сообщение от KonstantinB (ok), 29-Ноя-19, 18:15 
Если кастомные дженерики типа MyCollection<T> еще сделать можно (хотя тоже придется кучу кода перепахать), в случае с array это нереально. Ну то есть переписать придется вообще примерно все.
Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

163. "Релиз языка программирования PHP 7.4"  +/
Сообщение от anonymous (??), 30-Ноя-19, 04:56 
Это есть в Hack.
Ответить | Правка | К родителю #121 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру