Ответы пользователя по тегу Алгоритмы
  • Есть ли основные правила супер оптимизации?

    smart
    @smart
    вы меня знаете
    Тут хорошо ответили про оптимизацию написанного приложения и про то, что не надо с ней торопиться. Но также очень важно до начала написания кода правильно спроектировать архитектуру вашей системы. На задачах какого масштаба она будет использоваться? В каком окружении она будет работать? Какие требования к отказоустойчивости и резервированию?

    Все эти ответы могут существенно повлиять на архитектуру решения. Например, если вы пишете код, заточенный под работу в носимом девайсе на конкретном ARM-процессоре (какой-нибудь очередной умный браслет) – вы можете применить одни подходы (изучить железо, оптимизировать под него на низком уровне). А если вы делаете коробочный продукт, который будет работать в гетерогенной среде (например, антивирус, который запустят на самых разных машинах и системах) – то вам становится важнее добиться надежности и производительности "в среднем".

    Аналогично, если вы делаете софт, запускающийся в один поток на одном компьютере – это одно, а если проектируете систему, которая будет работать параллельно на десятках ядер на сервер и сотнях этих серверов, стоящих в одном дата-центре – совсем другое (а если не в одном, а в разных дата-центрах, то вообще третье).
    Ответ написан
    Комментировать