Когда я впервые услышал, что в нативном образе нельзя использовать рефлексию я подумал, что он бесполезен. Однако только сейчас до мне дошло, что рефлексия обычно используется в долгоживущих энтерпрайз приложениях. Нативный же образ нужен для быстрых утильных программ, а в них, обычно, рефлексия не используется.
Возможно это сделано для того, чтобы несколько игроков могли объединить свои кусочки кодов. А заморачиваться с интерфейсом «передачи кода» решили не нужным.
вы только что назвали ряд условий для получения реального пароля.
1. Собрать несколько паролей
2. Посмотреть на них внимательно и найти зависимость (если правило генерации чуть сложнее, бот может уже не справиться)
По сути эти пункты — дополнительные рубежи пусть не защиты, но усложнения доступа.
Если бы пароль не менялся достаточно было бы угнать один пароль любой давности.
Но ведь запоминаемый пароль с шаблоном, ничем не хуже чем запоминаемый пароль без шаблона, а чем-то даже лучше. Ну то есть конечно железный токен+пароль еще лучше, но при отсутствии токена сменяемый пароль не самая худшая мысль. Он как минимум спасет от случая когда пароль утек и его будет подбирать тупой бот, который не сможет разобрать шаблон. Да и человек например не каждый сможет понять шаблон по одному паролю В идеале их нужно несколько. Из минусов только пароль на бумажке, но мы же все серьезные люди, и пароли на стикерах не пишем.
А еще они не существуют. Потому что требования к городским, шоссейным, и горным велосипедам зачастую прямо противоположны друг-другу. В этом случае нужно просто иметь несколько велосипедов.
Более того, велосипеды обычно собираются на заказ.
Среди моих знакомых большинство ездит на покупных велосипедах. Так что утверждение более чем спорное.
Если сигнал заглушили — это тоже информация которая воспринимается весьма однозначно. А если мы включаем параноика, то электричество отключить намного проще чем глушилку тащить.
Не понял вашей мысли. Зачем? Тем более что датчик присутствия не для сигнализации, а для управления светом(например). А для сигнализации — датчик открытия двери.
Можете закидать меня тухлыми помидорами, но у китайцев теже Xiaomi Aquara пара датчиков Присутствие+Освещение и температура+влажность по ~800 рублей. Да без CO2 шума и загрязнения, но работает по ZigBee на батарейках цепляется на двухсторонний скотч к любой поверхности и ценник отличается в разы.
Так в том и смысл, что вам надо их объявлять, и по-другому никак)
Можно точно так же захардкодить.
Если вы напишете не капсом, то ошибки не будет, и так оно и останется, а если порядок другой поставите, то будет, и придется исправлять.
Правильно настроенный check-style скажет все что думает о таком коде.
Аргументы могут быть довольно длинные, и так получается читабельнее, чем выискивать короткий оператор в середине строки. Но если хочется, порядок тоже можно поменять, переопределив класс запроса.
ну то есть это по сути класс-генератор sql запросов. Уверен если покопаться в java я таких же десяток найду только использующих стандартный синтаксис.
ну я пропустил 2 переменные, а вы их просто захардкодили.
Говорить про читаемость вот этого вот странного порядка я даже говорить не буду $query->andWhere(['<', 'p.age', 18]);
капс исправить можно, а вот порядок не очень.
представьте что вместо query for object аналогичный метод для списка. Это не принципиально.
А какая разница сколько переменных если они инкапсулированы внутри метода. Это же не глобальные переменные.
0_о это привет родом из 90ых что ли? В любом нормально языке есть встроенный механизм защиты от SQL-injection. Для Java например это prepared statement. Говорить про sql-injection в 2018-ом просто неприлично.
1. Собрать несколько паролей
2. Посмотреть на них внимательно и найти зависимость (если правило генерации чуть сложнее, бот может уже не справиться)
По сути эти пункты — дополнительные рубежи пусть не защиты, но усложнения доступа.
Если бы пароль не менялся достаточно было бы угнать один пароль любой давности.
Радиус доставки 4 км. Как-то не густо.
Более того, велосипеды обычно собираются на заказ.
Среди моих знакомых большинство ездит на покупных велосипедах. Так что утверждение более чем спорное.
Вы не ответили, в чем проблема беспроводного датчика.
Можно точно так же захардкодить.
Правильно настроенный check-style скажет все что думает о таком коде.
ну то есть это по сути класс-генератор sql запросов. Уверен если покопаться в java я таких же десяток найду только использующих стандартный синтаксис.
Говорить про читаемость вот этого вот странного порядка я даже говорить не буду
$query->andWhere(['<', 'p.age', 18]);
капс исправить можно, а вот порядок не очень.
представьте что вместо query for object аналогичный метод для списка. Это не принципиально.
А какая разница сколько переменных если они инкапсулированы внутри метода. Это же не глобальные переменные.