Можно позанудствовать, говоря, что скорость кода является одной из характеристик качества, но я не буду.
В вопросе, скорее всего, подразумевается, что простой и прозрачный код как правило медленнее кода, оптимизированного вручную. Что и предполагает выбор между ясным и медленным кодом и запутанным и быстрым.
Мой ответ: в большинстве случаев важнее чистота кода.
Во-первых, в программах зачастую бывают «узкие места» («бутылочные горлышки») — небольшие участки кода, которые выполняются большую часть времени: 20 % кода выполняется 80 % времени. Поэтому снижать читаемость ради оптимизации всей программы неразумно: сложная программа будет содержать больше ошибок, будет трудна в поддержке и всё это не будет окупаться быстродействием. Логичнее поискать эти самые «бутылочные горлышки» и сосредоточиться на оптимизации именно них.
Во-вторых, когда программа написана чисто, архитектура ясная и понятная, программу становится проще оптимизировать.
Достоверный ответ