Size: a a a

2020 August 15

SM

Sergey Milimko in PHP
А почему их тестировать сложно,
источник

SM

Sergey Milimko in PHP
это же просто функции?
источник

VS

Vlad Sobenko in PHP
Sergey Milimko
А почему их тестировать сложно,
Я про свойства. Они ставятся для классов. И между тестами приходилось сбрасывать их через рефлексию.
источник

SM

Sergey Milimko in PHP
можно и без рефлексии обойтись
источник

VS

Vlad Sobenko in PHP
Sergey Milimko
можно и без рефлексии обойтись
Не юзать их? Это да)
источник

SM

Sergey Milimko in PHP
да, не
источник

SM

Sergey Milimko in PHP
вот так например
источник

MM

Maksim Masiukevich in PHP
Vlad Sobenko
Оч невесело их тестить. Использую иногда для экономии памяти.
шта?
источник

MM

Maksim Masiukevich in PHP
какой-какой экономии?)
источник

VS

Vlad Sobenko in PHP
Но данные относятся не к инстансам, а к классу. Вот и экономия.
источник

MM

Maksim Masiukevich in PHP
Vlad Sobenko
Но данные относятся не к инстансам, а к классу. Вот и экономия.
😜
источник

MM

Maksim Masiukevich in PHP
ну тип ты экономишь 1 ссылку?)
источник

SM

Sergey Milimko in PHP
class A {
  protected static $x = 1;
}

class TestA extends A {
   getX(): int {
      return self::$x
   }
}
Типо такого. Хотя если у тебя приватные свойства, то тогда да, рефлексия
источник

VS

Vlad Sobenko in PHP
Maksim Masiukevich
ну тип ты экономишь 1 ссылку?)
Легаси. Кастом орм. Некоторые общие данные хранились в инстансах. Перенос в класс секономил кучу памяти на больших выборках.
источник

MM

Maksim Masiukevich in PHP
Vlad Sobenko
Легаси. Кастом орм. Некоторые общие данные хранились в инстансах. Перенос в класс секономил кучу памяти на больших выборках.
моя твоя не понимать
источник

MM

Maksim Masiukevich in PHP
со статикой всё просто:

статические методы используются либо как фабричные методы (именованные конструкторы сюда же), либо не нужны в принципе и их можно заменить глобальной функцией. Если оч принципиально ограничить, навешиваем internal

статические свойства - для синглтонов всяких. Во всех прочих случаях - константы спешат на помощь.
источник

VS

Vlad Sobenko in PHP
Maksim Masiukevich
моя твоя не понимать
Ну там были fillable fields проперт  и подобные инфраструктурные вещи. Они не нужны каждому инстансу. Я под пивом. Может непонятно пишу, сори.
источник

VS

Vlad Sobenko in PHP
Maksim Masiukevich
со статикой всё просто:

статические методы используются либо как фабричные методы (именованные конструкторы сюда же), либо не нужны в принципе и их можно заменить глобальной функцией. Если оч принципиально ограничить, навешиваем internal

статические свойства - для синглтонов всяких. Во всех прочих случаях - константы спешат на помощь.
Я ещё юзаю стат методы в во для валидации данных для его создания. Для переиспользования логики в валидаторе. Типа Range:isValid(st,stp)
источник

AM

Artem Molotov in PHP
Евгений Ромашкан
Контрибьють в существующие проекты, приятно и полезно)
Главное не переконтрибьють. А то в таких случаях ходят мнения, что чёл на работе ничего не делает, а только в опенсурс вкладывает. 🤷
источник

AM

Artem Molotov in PHP
Sergey Milimko
Ну т.е. совсем их не использовать это перебор?
Как ты сделаешь несколько именнованых конструкторов без статических методов?
источник