Три принципа программирования — выставка


Лондонский музей науки представил несколько интересных новых экспонатов в рамках выставки Codebreaker, которые демонстрируют три ключевые идеи в программировании — циклы, условные выражения и переменные.

Все экспонаты были построены Hirsh & Mann, и цель заключалась в том, чтобы создать что-то, связанное с прогрессом в вычислительной технике и духом инженерии и инноваций. Как оказалось, они выбрали три инсталляции, демонстрирующие то, что команда по праву называет ключевыми принципами программирования.

Если вы спросите работающего программиста, каковы три ключевых принципа программирования, вы, вероятно, получите что-то об инкапсуляции, наследовании или о чем-то еще, что было последней тенденцией в области языков высокого уровня. Спросите компьютерного ученого, и он, вероятно, будет болтать о теории рекурсивных функций. Другими словами, сложно получить осмысленный ответ от людей, слишком близких к предмету обсуждения.

Но если вы сосредоточитесь на том, что такое программирование и что отличает его от других предметов, на самом базовом уровне, то идея переменной, цикла и условного оператора являются ключевыми примитивами.

В основе каждого экспоната находилась Arduino — так что здесь нет 74 случайных логических микросхем TTL.

В одном из них есть вращающийся ротор со светодиодами, которые создают постоянство видеосигналов, которыми посетители могут управлять с помощью 20 кнопок.

Условное отображение представляет собой версию клеточного автомата Вольфрама, в которой пользователь может устанавливать правила.

Экспонат о переменных представляет собой механическое дерево с ползунками для изменения углов.

Умная и, возможно, смелая часть в наш век тупых разговоров заключается в том, что на центральном дисплее есть упрощенный псевдокод, который выделяет текущую выполняемую строку.

Если вы не можете попасть на выставку, посмотрите следующее видео, в котором показаны некоторые детали строительства:

Все это очень весело и очень впечатляюще, но я не уверен, что согласен с тем, что они передают основную концепцию невиновному зрителю. Возможно, этого невозможно достичь увлекательным и увлекательным способом? Не могли бы вы придумать что-нибудь получше?


Добавить комментарий