2010-08-17 3 views
0

Я никогда не делал встроенных (я не знаю, если это то, что вы называете этим) программирования и ничего не знаете об этом. мой вопрос:Синхронизация в реальном времени между двумя устройствами по беспроводному сигналу

  1. возможно иметь два устройства обмена беспроводное соединение (не Интернет, только между собой, возможно, Bluetooth, но я не знаю, что когда-либо лучше)?

  2. Можно ли редактировать файл, а другой - редактировать один и тот же файл, и они могут видеть изменения в реальном времени? вроде как google docs?

  3. это уже есть?

  4. Что я могу сделать, чтобы приступить к программированию такого рода?

уточнить:

я хочу два человека с айфонов или любой другой стороны переносного устройства, чтобы иметь возможность редактировать текстовый файл в то же самое время и видеть изменения друг друга в режиме реального времени , Как мне это сделать?

+0

Я хочу двух человек с iphones или любого другого ручного устройства, чтобы иметь возможность редактировать текстовый файл в одно и то же время и видеть изменения друг друга в реальном времени. Как мне это сделать? –

+0

На все ваши вопросы можно ответить, выполнив поиск в Интернете. – YeenFei

+0

Ответ на почти любой вопрос можно найти в Интернете, он просто слишком долго. –

ответ

1
  1. Два устройства могут совместно использовать такое соединение. Это делается все время. Для этого существует много протоколов. Погода или нет, это проводная или беспроводная или использует Интернет, на самом деле не имеет значения для 90% этого.

  2. Это своего рода выполнимый, но не совсем. У вас действительно есть состояние гонки, когда два человека редактируют одновременно. Этого обычно можно избежать, блокируя небольшие части документа со всех, кроме одного редактора за раз (например, только один человек может редактировать одну ячейку таблицы за раз), но это также имеет проблемы (например, один активный редактор слишком длинный - это проблема, наблюдаемая во многих системах управления версиями).

  3. 1 уже существует во многих различных формах. 2 рода существует во многих формах, но проблемы, о которых я говорил, невозможно полностью преодолеть.

  4. То, как вы задали этот вопрос, заставляет меня поверить, что вы очень далеки от этого. Кроме того, вы не сказали нам ничего о том, что вы знаете, как это сделать. Можете ли вы написать простой текстовый редактор для iPhone (или что-нибудь еще)? Простые текстовые редакторы с нуля, которые не являются дерьмовыми, нелегко писать.

Что вам нужно сделать, если вы действительно хотите сделать это, чтобы придумать протокол для двух (или более) устройств, чтобы поговорить друг с другом. Для того, чтобы сделать это, вероятно, лучше если вы выясните, какой тип связи доступен между устройствами и какой из них вы будете использовать, и какие функции он не предоставляет, что вам нужно на вершине.

Вы можете попытаться отправить патчи файла (или что-то подобное) между двумя устройствами, когда будут сделаны изменения, но тогда вам придется решить, что делать в случае столкновения (редактирует около того же места).

В качестве альтернативы вы можете иметь разрешение на обмен двумя устройствами для внесения изменений (например, в сетях Token Ring).

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

+1

Я бы выполнил его с помощью протокола master/slave. Ведомый может просто отправлять нажатия клавиш. –

+0

Я хотел упомянуть, что одним из устройств может быть файл _owner_ файла, а другой просто пытается заставить владельца делать изменения от своего имени и получать обновления. Ключевым нажатием может быть слишком низкий уровень запроса на редактирование, хотя, поскольку _owner_ затем должен идти в ногу с большим количеством информации о состоянии удаленного редактора/просмотра. Удаленное устройство затем будет терминалом, хотя это и было сделано, хотя его пользователь, скорее всего, будет испытывать медленную обратную связь относительно движений и изменений, которые они делают. – nategoose

2

В ваших вопросах есть несколько странных предположений. Я постараюсь раскрыть их как можно лучше.

Вы использовали «встроенное» программирование странным образом. Обычно это предполагает использование каких-либо устройств с малой потребляемой мощностью, которые используются в настройках без прямого взаимодействия с пользователем в некотором смысле (например, заводские контроллеры, контроллеры холодильников, сенсорные узлы), выполняя очень специфическую задачу, но вы продолжаете разговаривать с людьми, редактирующими файлы. Какой именно пользовательский интерфейс здесь? Что сделало бы это встроенное программирование? Я думаю, вам нужно описать заявку, прежде чем предлагать какие-либо рекомендации.

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

Документы Google уже существуют. Без более четкого описания проблемы трудно сказать, существует ли то, что вы хотите, уже или нет.

Я думаю, вы должны действительно выяснить, что именно такое программирование, которое вы хотите сделать, прежде чем мы сможем предложить точки относительно того, как лучше всего начать с него. Возможно, посмотрите определение «встроенного программирования» и посмотрите, как это относится к вашим целям, чтобы вы могли более четко сформулировать свои вопросы.

Я не уверен, как «реальное время» тоже впишется в этот сценарий. Этот термин используется и злоупотребляется во многих отношениях. Вещи происходят только в режиме реального времени в отношении некоторого ограничения, обычно определяемого в терминах приложения.

(Примечание: возможно, это было более уместно в качестве комментария, но я чувствовал, что было слишком много, чтобы ответить, чтобы подвести итоги в пределах символов, и я надеюсь, что исправление некоторой путаницы представляет собой что-то вроде ответа, учитывая ограничения вопроса).

+0

обновленный вопрос –

+1

ОК, просто для того, чтобы совершенно ясно, из ваших прав, вы пытаетесь что-то развить в пространстве _mobile computing_. Внедрение вычислений - это совсем другое. Устройство, такое как iPhone, является, по сути, универсальным компьютером, который просто переносится. Разработка для этих платформ представляет собой разработку приложений, в самых общих чертах, и не имеет отношения к тем проблемам развития, которые налагаются большинством встроенных платформ. – Gian

+0

Большое спасибо i retag –

1

«iphones или any другое ручное устройство» - технологический стек для этого не существует сегодня.Вы должны координировать работу нескольких языков и систем. (Ладно, может быть, вы хотите написать это программное обеспечение, но это огромная задача).

Лучше всего создать веб-страницу, на которой могут работать все мобильные браузеры, и сохранить текстовый файл.

+0

Это зависит от того, является ли ваша интерпретация «any» «для всех» или «существует» — Я сомневаюсь, что смогу редактировать текстовый файл на моем калькуляторе. –

+0

@tc: Ну, я полагаю, что OP подразумевает типичные устройства smartfoney. Кроме того, мой удивительный HP-49g + редактирует текстовые файлы. это довольно волна. –

-1
  1. Конечно, это возможно. Bluetooth делает это. Wi-Fi делает это, если вы присоединяетесь к сети ad-hoc.
  2. Конечно, это возможно. Просто запустите сервер Документов Google на одном из устройств.
  3. Это может быть.
  4. Путь слишком расплывчатый.

 Смежные вопросы

  • Нет связанных вопросов^_^