Алгоритмическая сложность

  • O(1) - лучше не бывает, можно заняться микрооптимизацией, но не факт, что поможет
  • O(log n) - отличная работа
  • O(n) - неплохо, но стоит убедиться, что входные данные отсортированы
  • O(n^2) - хм, вероятно стоит попробовать упростить до O(n*log n)
  • O(2^n) - вермя кешировать
Horrible BadFairGoodExcellent
O(log n), O(1)O(n)O(n log n)O(n^2)O(2^n)O(n!)OperationsElements

Похожие записи

Кратко о внедрение зависимостей и сервис контейнере

Cтатья о том, что такое "Внедрение зависимостей" и "Сервис-контейнер" отталкиваясь от их реализации в PHP фреймворках. Статья написана по мотивам статей Фабьена Потенсье, ведущиго разработчика и идеолога фреймворка Symfony, а также документации фреймворка Laravel.

+function ($) { "use strict"; }(window.jQuery);

  • объявляется IIFE (немедленно выполняемая функция-выражение)
  • в функцию передаётся объект библиотеки jQuery, которая внутри будет доступна через переменную с именем $
  • включается «строгий режим»

Про SOLID во фронтенде

  • принцип единственной ответственности;
  • открытости и закрытости;
  • подстановки Барбары Лисков;
  • разделения интерфейса;
  • инверсии зависимостей.