crypt of decay - уебаны-уебанчики [entries|archive|friends|userinfo]
ketmar

[ userinfo | ljr userinfo ]
[ archive | journal archive ]

уебаны-уебанчики [Jan. 18th, 2015|06:27 am]
Previous Entry Add to Memories Tell A Friend Next Entry
[Tags|]

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

откуда есть два правила:
1. никогда не помечейте что-то как «зарезервированное».
2. вы можете похерить любые другие проверки, но всегда проверяйте, что в зарезервированых полях и параметрах нули (или что вы там в документации написали про это), и если это не так — сразу вылетайте с ошибкой. лучше всего — делайте SIGKILL на процесс, потому что зачем такому говнософту вообще жить на свете?
3. очевидное: всегда пишите в документации нечто вроде: «зарезервированые поля и аргументы должны содержать нули». и дальше см. правило 2.
Linkmeow!

Comments:
From:[info]silly_sad
Date:January 18th, 2015 - 01:29 pm
(Link)
если у вас есть структура с зарезервированными полями, всенепременно найдётся уебан, который решит использовать ваш софт.
[User Picture]
From:[info]ketmar
Date:January 18th, 2015 - 02:41 pm
(Link)
у тебя переключатель раскладок сломался.
[User Picture]
From:[info]pizelks
Date:January 18th, 2015 - 02:46 pm
(Link)
Это ещё что! Я видел, как люди пытались менять значения в глобальных таблицах, которые луаджит получает из си-шниго кода. Вот это - я понимаю, мэдскиллз!
[User Picture]
From:[info]ketmar
Date:January 18th, 2015 - 03:01 pm
(Link)
а вот потому я обычно никаких таблиц никогда не отдавал, а делал свойство «получитьХуйню(x,y,z)». и пусть хоть обосрутся дружно все.
[User Picture]
From:[info]pizelks
Date:January 18th, 2015 - 04:32 pm
(Link)
Ну это ffi в моём случае. Но, блядь, почти -40% к производительности.
[User Picture]
From:[info]ketmar
Date:January 18th, 2015 - 05:09 pm
(Link)
ты что, рилтаймовый 3д-движок крафтишь на Lua, штоле? абивамат, да не надо же сложную логику на скриптах делать, даже если очень хочется и выглядит круто!