Поразительно компьютер похож на человека. Компьютер воплотил в себе весь прогресс человечества за тысячи лет. Венец творения человека.
У программы есть жизненный цикл (lifecycle). Например, в Android у Activity есть жизненный цикл. И у человека тоже есть жизненный цикл. Даже у дерева есть жизненный цикл. Желудь падает в землю, чтобы стать дубом. Дуб плодоносит желуди.
Или вот, что такое время? У процессора есть машинный цикл. Наш мозг это тоже процессор, который отсчитывает свои тики. Появляются какие-то внутренние биоритмы.
В ООП объекты переходят из одного состояния в другое. Нам мир точно так же каждый тик переходит из одного состояния в другое. Но в реальном мире всё относительно.
Мозговой цикл человека может отличаться от мозгового цикла мухи. И поэтому восприятие будет разным. За один машинный цикл компьютерного процессора свет проходит 10 сантиметров. Интересно а сколько проходит свет за один мозговой цикл? Сколько герц в нашем мозговом процессоре? Можно ли проделать overclocking мозга? Или наоборот замедлиться и проспать целый век.
Память компьютера это просто смена нулей и единиц во времени. Как в матрице. И в реальном мире тоже есть бинарность. Дерево не может расти и не расти одновременно. Нельзя что-то сделать и не сделать одновременно. Ты либо делаешь, либо нет. Ты 0 или 1. С другой стороны кот Шрёдингера... Но тут я уже перестаю понимать хоть что-то.
Иногда наш мир мне напоминает какой-то вычислительный алгоритм, который что-то вычисляет. Одно состояние сменяет другое. И в этой смене есть какая-то закономерность.
Можно еще провести параллели между сущностью и информацией, экземпляром и материей. Мир идей и мир вещей.
Как-то это всё связано. Мы все части одной большой вычислительной системы.
В реальном мире - среда, в программировании - контекст.
Такая аналогия может помочь науке. Например, в физике мы не можем наблюдать объект не изменяя его при этом. В программировании мы тоже не может наблюдать объект не добавив в него лог-методы. В обоих случаях нам приходится прямо или опосредованно взаимодействовать с объектом. Но в программировании мы можем взять низкоуровневый отладчик и пойти посмотреть прямо в память. Может быть в физике тоже нужно заходить с другой стороны?
Или взять свет. Свет может вести себя как частица и как волна. Да это же полиморфизм. Один и тот же интерфейс (а интерфейс похож на форму), т.е. мы видим свет и разная имплементация. И чего тут не сходится? Всё сходится, если правильно смотреть на вещи.
У человека два уха, два глаза, две руки. Это хороший fault tolerance.
У человека два уха, два глаза, две руки. Это хороший fault tolerance.