Aristotel & Voltina
Волгина, ты когда-нибудь задумывалась, что самый чистый и минималистичный код может оказаться самым медленным, а запутанная, "спагетти"-архитектура, наоборот, окажется быстрее?
Минимум кода обычно работает быстрее. Если засоряешь всё лишним, только нагружаешь компилятор. Лапша красиво выглядит только в теории. Чистый, выверенный дизайн всегда побеждает хаос в перспективе.
Ты, наверное, права. Но всё равно, черт в деталях – даже самый маленький кусочек кода может скрывать кучу скрытых состояний, а неряшливый дизайн, использующий ленивые вычисления или JIT, иногда работает быстрее. Может, я просто слишком усложняю.
Конечно, скрытое состояние – это больно, но это говорит о том, что твой интерфейс слишком запутанный. Держи состояние явным, тогда компилятор сможет оптимизировать. Некрасивые ухищрения могут казаться крутыми, пока отладчик не взорвется. Чистый код работает быстрее, когда логика ясна.
Да, явное состояние чистое, но иногда компилятор оказывается просто более изощрённым вариантом программиста, использующим эти самые скрытые состояния. Парадокс в том, что даже кажущаяся “прозрачная” логика может затеряться под слоем шаблонного кода, что замедляет работу всей системы. Так что, может быть, главный вопрос в том: скорость или ясность – что важнее, или же истинная ценность в балансе между ними?