Плагин «Расширение методов ядра (Wise Engine)»
ОПИСАНИЕ
Данный плагин дополняет синтаксис ядра ЛС возможностью вызовов методов без использования подчеркивания. Вам ведь тоже хотелось писать код так же:
$this -> User -> GetUserByLogin ('admin') -> getLogin ()
вариант с вызовом методов модулей плагина:
$this -> PluginTest -> ModuleTest -> GetTestForTest ()
идентичен
$this -> PluginTest -> Test -> GetTestForTest ()
Документация и более полное описание здесь.
12 комментариев
Ситуация комична, разработчики будут заявлять: «Чтобы работал плагин ****, ставьте дополнительный плагин, потому что вместо вызова через подчеркивания я вызываю методы каноническим способом.»
Но я не уверен, что это нужно в каталоге, обычные юзеры точно не поймут что и зачем им это на сайте, причем отдельным плагином.
то я точно знаю, что тут идет вызов метода GetVal() модуля Test (или ModuleTest, если быть более точным). А вот когда
то это как-то совсем не очевидно. Тут Test вполне может оказаться свойством текущего класса, которому присвоен какой-то объект. Сравните:
Достаточно программеру наплевать на венгерскую нотацию и путаница обеспечена.
для однозначного понимания. вот потому пул реквест не делал. нужно подумать нужно ли оно вообще.
Если уж и идти таким путем, то нужно отказаться от $this, например, так:
или
А еще лучше:
Ведь нас не ломает писать префиксы Action… Plugin… и т.д., поэтому и Module… писать не очень должно ломать
Зато все более чем очевидно и однозначно