Всем привет. Недавно задался вопросом: «А что, если… ?». В результате родилась вот такая тема-идея: Проектирование на основе «отражения».
Этой самой идеей я и хочу поделиться с Вами в данной публикации.
Начнем
Возьмем два зеркала и поставим их друг напротив друга.
- Зеркало «А» найдет свое отражение в зеркале «Б».
- Зеркало «Б» найдет свое отражение в зеркале «А». В зеркале «А» так же найдет свое отражение все, что нашло свое отражение в зеркале «Б».(Аналогично все то, что нашло свое отражение в зеркале «А», найдет свое отражение в зеркале «Б».)
Типы отражений
Разделим отражения на два типа: прямое(обозначается •) и глубинное(обозначается °).
- Зеркало «А», отразившись в зеркале «Б» находит в нем свое прямое отражение «•А».
- Зеркало «Б», отразившись в зеркале «А» находит свое прямое отражение «•Б». Отражая то, что было отражено в зеркале «Б», зеркало «А» найдет свое глубинное отражение «°А» — в самом себе.
Теперь возьмем четыре зеркала: А, Б, В и Г
- «А» находит свое прямое отражение «•А» в Б, В и Г.
- «Б» находит свое прямое отражение «•Б» в А, В и Г.
- «В» находит свое прямое отражение «•В» в А, Б и Г.
- «Г» находит свое прямое отражение «•Г» в А, Б, и В.
Повернем зеркало «Б» отражающей стороной к зеркалу «В», а зеркало «Г» отражающей стороной к зеркалу «А».
- Зеркало «Г» находит свое прямое отражение «•Г» в зеркале «А».
- Зеркало «А» находит свое прямое отражение «•А» в зеркале «В». Зеркало «Г» находит свое глубинное отражение «°Г» в зеркале «В».
- Зеркало «В» находит свое прямое отражение «•В» в «Б». Зеркало «А» находит свое глубинное отражение «°А» в зеркале «Б». Зеркало «Г» находит свое глубинное отражение «°°Г» в зеркале «Б».
Теперь зеркало «Г» не находит прямые отражения в «В» и «Б», а только глубинные(«°Г» в «В» и «°°Г» в «Б») через зеркало «А». В «Б» находит свое отражение зеркало «В», в котором нашло свое отражение зеркало «А», а в зеркале «А» нашло свое прямое отражение зеркало «Г». Поэтому, если смотреть что у нас в зеркале «Б», мы увидим: «•В», «°А» и «°°Г». А, если мы посмотрим в «В», то увидим: «•А», «°Г» и «•Б» т.к. все работает и в обратную сторону.
Проявление отражений
Теперь давайте представим, что зеркало «В» полупрозрачное и за ним находятся еще три зеркала: Д, Е и Ж. Можно даже сказать, что «В» — некое единое целое, состоящее из нескольких частей. А вместо зеркала «Г» у нас будет ваза с цветами, и теперь «Г» будет находить свое отражение, но сам отражать ничего не будет.
На обратной стороне зеркала «В» проявилось то, что нашло в нем свое отражение: «°Г», «•А» и «•Б». Эти проявления найдут свои прямые отражения в Д, Е и Ж.
- «°Г» найдет свое прямое отражение «•°Г» в Д, Е и Ж.
- «•А» найдет свое прямое отражение «••А» в Д, Е и Ж.
- «•Б» найдет свое прямое отражение «••Б» в Д, Е и Ж.
А теперь давайте повернем зеркало «Д» отражающей поверхностью к зеркалу «Е».
4. «°Г» найдет свое прямое отражение «•°Г» в зеркале «Е». «•А» найдет свое прямое отражение «••А» в зеркале «Е». «•Б» найдет свое прямое отражение «••Б» в зеркале «Е».
5. «Е» найдет свое прямое отражение «•Е» в зеркале «Д». «°Г» найдет свое глубинное отражение «°°Г» в зеркале «Д». «•А» найдет свое глубинное отражение «°•А» в зеркале «Д».«•Б» найдет свое глубинное отражение «°•Б» в зеркале «Д».
Если запустить этот процесс в обратную сторону, то зеркало «Д» найдет свое прямое отражение «•Д» в зеркале «Е», глубинное отражение «°Д» в «В», далее «°Д» найдет прямое отражение «•°Д» в «А». Ну а в «Г» уже не отразишься, т.к. это не зеркало, а ваза в цветами.
Какое у всего этого практическое применение
Рассмотрим схему, на которой простенько изображено устройство компьютера.
Перерисуем ее.
Компьютер, как единая целая система состоит из частей: устройства ввода, внешняя память, устройства вывода, процессор, внутренняя память. Каждая из этих частей устроена по своему, и является отдельной, т.к. ее можно заменить. Так же каждую из этих частей можно рассмотреть отдельно. Все части существуют в рамках единого целого(Компьютера), и некоторым образом взаимодействуют между собой.
- Устройства ввода взаимодействуют с внутренней памятью.
- Внешняя память взаимодействует с внутренней памятью.
- Устройства вывода взаимодействуют с внутренней памятью.
- Процессор взаимодействует с внутренней памятью.
Рассмотрим отдельно часть Компьютера «Внутренняя Память»(ОЗУ).
У внутренней памяти есть своя некая структура, она делится на сегменты.
Все части Компьютера, взаимодействуя с Внутренней Памятью — конкретно обращаются к сегментам Памяти, но части Компьютера не имеют никакого отношения к структурам Внутренней Памяти.
При рассмотрении Внутренней Памяти как отдельной части, как подсистемы, некоторые части «Компьютера» находят свое отражение и проявляются в этой подсистеме на основе того, что эта подсистема, как отдельная часть более глобальной системы, взаимодействует с некоторыми частями этой системы.
- Устройства ввода нашли свое прямое отражение «• Устройства ввода» во Внутренней памяти, на основе прямого взаимодействия с Внутренней Памятью. Проявившись в этой системе как «•Устройства ввода» взаимодействуют с Сегментами Внутренней памяти.
- «• Внешняя Память» взаимодействует с сегментами Внутренней памяти
- «• Устройства вывода» взаимодействуют с сегментами Внутренней памяти.
- «• Процессор» взаимодействует с сегментами внутренней памяти
Рассмотрим часть Компьютера – «Процессор».
Напрямую с процессором взаимодействует только Внутренняя Память. Остальные части взаимодействуют с процессором, но через внутреннюю память, поэтому находят в нем не прямое, а глубинное отражение.
Опять же, данные поступают не в весь процессор, а конкретную его часть — регистр.
Взаимодействие частей надсистемы так же находит свое отражение.
- «° Устройства вывода» взаимодействует с внутренней памятью.
- «° Устройство ввода» взаимодействуют с внутренней памятью.
- «° Внешняя память» взаимодействует с внутренней памятью.
- «• Внутренняя память» взаимодействует с регистром процессора.
На самом деле регистр процессора получает данные из Сегмента Внутренней памяти.
Поэтому можно изобразить так
- «° Устройство вывода» взаимодействует с сегментом Внутренней памяти. Сам Сегмент(ОЗУ) не является частью данной структуры и не находится в ней. Проявившись в едином целом «Компьютер» как «•Сегмент(ОЗУ)», он нашел прямое отражение «••Сегмент(ОЗУ)» в «процессоре» на основе взаимодействия ОЗУ с процессором.
- «° Устройства ввода» взаимодействуют с «••Сегмент(ОЗУ)».
- «° Внешняя память» взаимодействует с «••Сегментом(ОЗУ)».
- «••Сегмент(ОЗУ)» взаимодействует с регистром процессора. Из одного поступают данные в другое и обратно.
«Игра» — единое целое, которое состоит из: Персонаж, Ресурсы, Торговец и Шмот. Все перечисленное — отдельные части, но существующие в рамках единого целого.
- У персонажа может быть шмот.
- У персонажа могут быть ресурсы.
- У торговца есть шмот.
- У торговца есть ресурсы.
- Шмот персонажа можно обменять на ресурсы торговца. (Шмот сначала находит свое прямое отражение в персонаже, затем глубинное в торговце и глубинное в ресурсах)
- Шмот торговца можно обменять на ресурсы персонажа.
Вспомним полупрозрачное зеркало «В» и рассмотрим как единое целое одну из частей Игры – «Персонаж»
В персонаже мы можем наблюдать части «персонажа»: инвентарь и рюкзак(как зеркала Д, Е и Ж у зеркала «В») и части нашедшие свое отражение в части «Персонаж» на основе прямого или глубинного взаимодействия с этой частью в рамках иного единого целого(«Игра»).
- «• Шмот» может находиться в инвентаре персонажа.
- «• Шмот» может находиться в рюкзаке персонажа.
- «• Шмот» из инвентаря персонажа можно обменять на «° ресурсы торговца».
- «• Шмот» из рюкзака персонажа можно обменять на «° ресурсы торговца».
- «• Ресурсы» персонажа отображаются в инвентаре персонажа.
- «• Ресурсы» персонажа можно обменять на «° Шмот торговца».
Пойдем еще глубже, в инвентарь
- «°° Шмот торговца» можно обменять на «•• Ресурсы персонажа». На самом деле в предыдущий раз «° Шмот торговца» не находил свое отражение в Инвентаре, но он находил свое отражение в «•Ресурсы», а «• Ресурсы» нашли свое прямое отражение «••Ресурсы» в «Инвентарь». На основе этого «° Шмот торговца» нашел свое глубинное отражение «°° Шмот торговца» в «Инвентарь».
- «••Шмот» в инвентаре(надетый) персонажа влияет на вид изображения персонажа, которое показывается в инвентаре персонажа.
- «••Шмот» в инвентаре персонажа можно обменять на «°° Ресурсы Торговца».
Заглянем в «••Шмот»
В «••Шмот», свое прямое отражение нашли «Изображение персонажа» и «°° Ресурсы торговца».
«•• Шмот» – это отдельная, существующая сама по себе часть Игры(«Шмот»), которая сначала нашла свое прямое отражение «• Шмот» в части игры – «Персонаж», на основе взаимодействия с этой частью. Затем, будучи частью «Персонажа», не изначальной его частью, а приобретенной, нашедшей свое проявление(на основе взаимодействия с этой частью) — «• Шмот» нашла свое прямое отражение «••Шмот» в изначальных частях «Персонажа»: Инвентарь и Рюкзак.
Там же, в Персонаже и в Инвентаре, •Шмот и ••Шмот взаимодействуют с °Ресурсами торговца и °°Ресурсами торговца.
Обменять Шмот на Ресурсы
Нельзя так просто взять и обменять часть игры «Шмот» на часть игры «Ресурсы». Нельзя так же шмот персонажа поменять на ресурсы персонажа. А вот шмот персонажа обменять на ресурсы торговца можно. То есть эти части сначала должны найти свое отражение в чем-либо и проявиться там, а уже потом быть обменяны при взаимодействии двух частей(Персонаж, Торговец), в которых они нашли свое отражение. Но не стоит зацикливаться на этом моменте.
На этом пока что все. Надеюсь, что Вы прониклись этой идеей и поняли, что я тут написал.
Автор: pavellyzhin