Андрій Новосьолов (andrzejn) wrote,
Андрій Новосьолов
andrzejn

MVC-self, продолжение

Пока в мой предыдущий пост не пришли психологи и не раздолбали мою аналогию, сделаю её рискованнее.

Наш разум, которым я пишу этот текст, а вы читаете - это более поздняя скриптовая надстройка над системой. Довольно примитивный движок, принципиально однопоточный, всего полдюжины фиксированных переменных имени Миллера, есть кое-какая система прерываний и кооперативной многозадачности, как в Windows 3.0, но стек возвратов тоже маленький, так что старые точки возврата постоянно теряются. Есть самодельная кривоватая реализация Prolog, а вообще-то всё написано на нечитаемом perl. Разум исполняется в отдельном от остального self потоке и имеет доступ исключительно к модели-personality. Ни с id, ни с ego разум напрямую не общается.

Тут видна разница между выбором и принятием решений: настоящий выбор, исходящий из обстоятельств и перетекающий в действие, делает только ego. Скриптовый разум над personality способен разве что посчитать вероятности, сравнить условия по табличке и записать результаты обратно в модель, но решение о действиях принимает не он.


У младенца в утробе ещё нету всех этих функций. Это пока ещё только маленький служебный подпроцесс, пассивно связанный с родительским процессом низкоуровневым API на базе пайпов.

При рождении пайпы обрываются. У ребёнка появляется примитивный UI, но он об этом ещё не знает - дополнительный слой абстракции эмулирует старый API прямого доступа через UI. (Этот старый API и слой эмуляции остаются с нами на всю жизнь, и некоторые так всю жизнь и думают, будто старый API продолжает работать.) Self новорожденного, с натяжкой, состоит из одного только id, в который намешаны заглушки функций MVC.

Вскоре (через пару месяцев после рождения) даже разрабатывающий нас индус-программист без грамотного стиля кодирования понимает, что код как-то разросся, и рефакторит бизнес-логику в отдельный слой, personality. Заодно - на вырост - тут же прикручивает и скриптовый движок, пока что без скриптов. Код контроллера всё ещё отсутствует, грубый UI напрямую связан с моделью.

Controller-ego рефакторят в отдельный слой много позже, через несколько лет после рождения. Везде остаются кучи заглушек и оборванных ссылок, их вычищают и отлаживают лет до 7-9. Затем ещё лет 10 модель и скриптовая база разума дообучаются сами, как придётся - и вот готов очередной самостоятельный self-процесс.

[ DW ]
Tags: гештальт для программистов, любомудрие
Subscribe

  • Последовательный материализм

    Одиннадцать лет назад я прочитал в посте https://rikki-t-tavi.livejournal.com/732805.html об интересном эксперименте: тщательно отслеживать у себя…

  • Походка

    Интересный симптом возник у меня в последние недели, раньше так не бывало. У меня заметно замедлилась походка. Всё остальное без изменений: та же…

  • Level done

    Дошёл до 50 уровня в этой игре. Ачивки: 36 лет как вошёл в IT 26 лет как женился 23 лет с первого депрессивного эпизода 17 лет в ЖЖ и писательстве…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 1 comment