Post #47
3.14K
Простые концепции даже при наличии corner case-ов могут значительно упрощать работу со сложными системами. Вот, например, правило 2х от Chromium https://chromium.googlesource.com/chromium/src/+/master/docs/security/rule-of-2.md : никогда не совмещайте (а) код написанный на небезопасных языках, (б) код не из песочницы, (в) недоверенный ввод. Это звучит просто, запоминается как CAP-теорема или триада ремонта("быстро, качественно, недорого - выбирай два из трех"). И имеет теоретическую базу: ребята проанализировали последние уязвимости проекта, откатегоризировали их и придумали как заткнуть основной источник ошибки. Очаровала меня аккуратность такого подхода. То, чего architecture hoisting добивается путем злостной машинерией, инженеры Chromium-а добились аккуратной теорией, заложенной прямо в мозг.