Обложка канала

Блог программиста S0ER. Мысли, ранний доступ к видео, фоточки, короткие посты. Ничего конкретного, но что-то будет полезным.

SOER

3 года назад
Открыть в
Когнитивные измерения Если отказаться от мысли, что программирование - ремесло, то расширять свой кругозор можно бесконечно. Одно из интереснейших направлений для изучения - это оценка качества кода. Здесь есть такая штука как "когнитивные измерения". Когнитивные измерения - это оценки качества исходного кода программы. Их всего 14, более полно о них можно прочитать в Вики, лично мне хочется заострить внимание на следующем моменте - не так важны сами измерения, как то, что существует четыре типа активности в отношении кода: - приращение (создание) - транскрипция (переписывание) - модификация - исследовательское проектирование. По моим наблюдениям программисты хорошо понимают, что такое "приращение", "транскрипция" и модификация, а вот с исследовательским проектированием возникают проблемы. Исследовательское проектирование - это ситуация при которой разработчик понимает куда нужно двигаться для получения результата, но не может определить насколько долго нужно двигаться в этом направлении, чтобы получить требуемый результат. Т.е. классическая задача исследования - познать непознанное. Под исследовательским проектированием в отношении кода понимается движение вперед малыми шагами, когда вы сначала проектируете следующий шаг (не обязательно финальный, но продвигающий проект в нужном направлении), затем реализуете его в коде, а потом повторяете процесс до получения результата. Обычно такой разработкой занимаются R&D подразделения, для них важно писать невязкий код, который хорошо декомпозирован и спроектирован. Когнитивные измерения в таком случае помогают сохранить темп и вектор развития кода. Смысл в том, что вы не просто "решаете проблему бизнеса", предоставив готовый код для прода, а в том, что ищете решение для проблем, которые есть у бизнеса. Обычно результаты такой работы делаются отдельно от основного проекта, а в проект выносятся только итоговые изменения в виде библиотек и модулей.
Когнитивные измерения

Когнити́вные измере́ния — принципы разработки синтаксиса, пользовательских интерфейсов и других особенностей языков программирования, описанные исследователями Томасом Грином и Марианом Петре. Измерения могут использоваться для оценки юзабилити существующих языков или для рекомендаций по дизайну новых.

Wikipedia