PT 1: Объявления о недвижимости
На 1234 Main St сейчас припаркован синий Tiny House площадью 120 кв. Футов с ухоженным газоном и клумбой перед домом.
Нанимают риэлтора из местной фирмы, и ему велят вести список для этого дома.
Назовем этого Риэлтор Боб. Привет боб.
Боб постоянно обновляет свой Листинг, который он называет tinyHouseAt1234Main
, с помощью веб-камеры, которая позволяет ему отмечать любые изменения в реальном доме в реальном времени. Он также ведет учет того, сколько людей спрашивали о листинге. Целое число Боба viewTally
для дома сегодня составляет 42.
Когда кому-то нужна информация о синем Крошечном домике на Мейн-стрит, 1234, они спрашивают Боба.
Боб просматривает свой Листинг tinyHouseAt1234Main
и рассказывает им все - цвет, красивый газон, кровать-чердак, компостный туалет и т. Д. Затем он добавляет их запрос к своему viewTally
. Однако он не сообщает им настоящий физический адрес, потому что фирма Боба специализируется на крошечных домиках, которые можно переместить в любое время. Итого сейчас 43.
В другой фирме риэлторы могут прямо указать в своем листинге дом по адресу 1234 Main St, обозначив это небольшим *
рядом с ним, потому что они в основном имеют дело с домами, которые редко когда-либо переезжают (хотя, по-видимому, для этого есть причины). Фирма Боба этим не занимается.
Теперь, конечно, Боб физически не идет и не ставит настоящий дом на грузовик, чтобы показать его клиентам напрямую - это было бы непрактично и нелепой тратой ресурсов. Передать полную копию его ведомости учета - одно дело, но постоянно обходить весь дом - дорого и нелепо.
(Кроме того: фирма Боба также не печатает на 3D-принтере новые и уникальные копии указанного дома каждый раз, когда кто-то спрашивает об этом. Это то, что делают выскочка, одноименная веб-фирма и ее дочерние компании - это дорого и медленнее, и люди часто путают две фирмы, но они все равно довольно популярны).
В некоторых других, более старых фирмах, расположенных ближе к морю, такого риэлтора, как Боб, может даже не существовать для управления листингами. Вместо этого клиенты могут проконсультироваться с Rolodex Annie (для краткости &
), чтобы узнать прямой адрес дома. Вместо того, чтобы зачитывать данные о доме из списка, как это делает Боб, клиенты вместо этого получают адрес дома от Энни (&
) и идут прямо на 1234 Main St, иногда не имея представления, что они могут там найти.
Однажды фирма Боба начинает предлагать новую автоматизированную услугу, для которой требуется объявление о доме, который интересует клиента.
Что ж, человек с этой информацией - Боб, поэтому клиент просит Боба вызвать службу и отправить ей копию листинга.
jobKillingAutomatedListingService(Listing tinyHouseAt1234Main, int viewTally)
Боб отправляет ...
Служба со своей стороны называет этот Листинг houseToLookAt
, но на самом деле то, что он получает, является точной копией листинга Боба с точно такими же ЗНАЧЕНИЯМИ в нем, которые относятся к дому по адресу 1234 Main St.
Эта новая служба также имеет собственный внутренний подсчет количества людей, просмотревших объявление. Служба принимает подсчет Боба из профессиональной вежливости, но на самом деле это не заботит и все равно полностью перезаписывает его собственной локальной копией. Сегодняшний счет - 1, а Бобу все еще 43.
Агентства по продаже недвижимости называют это передачей по значению, поскольку Боб передает текущее значение своего viewTally
и своего Листинга tinyHouseAt1234Main
. На самом деле он не проходит через весь физический дом, потому что это непрактично. Он также не передает реальный физический адрес, как это сделала бы Энни (&
).
Но он передает копию значения ссылки, которую он имеет на дом. В некотором роде это кажется глупым педантичным различием, но так работает его фирма ... ..............
ПТ II: Когда все становится запутанным и опасным ...
Новый автоматизированный сервис, не полностью функциональный и ориентированный на математику, как некоторые другие модные финансовые и научные фирмы, может иметь непредвиденные побочные эффекты ...
После получения объекта Listing, он позволяет клиентам фактически перекрасить НАСТОЯЩИЙ дом на 1234 Main St, используя удаленный флот роботов-дронов! Это позволяет клиентам управлять роботом-бульдозером, чтобы ДЕЙСТВИТЕЛЬНО выкопать клумбу! Это безумие!!!
Служба также позволяет клиентам полностью перенаправить houseToLookAt
в другой дом по другому адресу, без участия Боба или его листинга. Внезапно они могли смотреть на улицу Вязов 4321, которая не имеет никакого отношения к списку Боба (к счастью, они больше не могут причинить ущерб).
Боб наблюдает за всем этим по своей веб-камере в реальном времени. Смирившись с тяжелой работой своей единственной должностной обязанности, он рассказывает клиентам о новой уродливой покраске и внезапном отсутствии обуздания. В конце концов, его листинг все еще находится на Мейн-стрит, 1234. Новая служба houseToLookAt
не могла этого изменить. Боб сообщает подробности своего tinyHouseAt1234Main
точно и послушно, как всегда, пока его не уволят или дом не будет полностью разрушен Ничто.
На самом деле единственное, что служба НЕ МОЖЕТ сделать со своей houseToLookAt
копией исходного списка Боба, это изменить адрес с 1234 Main St. . Листинг Боба по-прежнему всегда указывает на 1234 Main St, чего бы он ни стоил. Он, как всегда, передает его текущее значение.
Этот странный побочный эффект передачи списка в новую автоматизированную службу сбивает с толку людей, которые спрашивают, как это работает. В самом деле, в чем разница между возможностью удаленного управления роботами, которые изменяют состояние дома на 1234 Main, и фактическим физическим посещением этого дома и сеансом хаоса из-за того, что Энни дала вам адрес ??
Похоже на своего рода придирчивый семантический аргумент, если вас обычно волнует состояние дома в листинге, который копируется и передается, верно?
Я имею в виду, если вы занимались тем, что собирали дома и физически перемещали их по другим адресам (не например, мобильные или крошечные дома, где это своего рода ожидаемая функция платформы), или вы обращались, переименовывали и перетасовывали все окрестностей вроде какого-то низкоуровневого сумасшедшего, играющего в богов, ТОГДА, возможно, вас больше заботит передача этих конкретных адресных ссылок, а не просто копий последних значений деталей дома ...
person
Community
schedule
16.03.2018
C++
и начинает путаться при прикосновении кJava
, это может помочь как ярлык. - person jack   schedule 27.12.2020