'''Локальное программное обеспечение''' — это подход к разработке программного обеспечения, при котором приложение хранит свои данные преимущественно на собственном устройстве пользователя, а не на удаленных серверах.
== Фон ==
До широкого распространения программного обеспечения, подключенного к Интернету, в 2000-х годах большинство настольных приложений хранили данные в виде файлов на локальном диске пользователя. Пользователи имели прямой доступ к своим файлам и могли копировать, создавать резервные копии или удалять их по своему желанию. Рост популярности программного обеспечения как услуги|программного обеспечения как услуги (SaaS) и облачных приложений, таких как Google Docs, переместил хранение данных на централизованные серверы. Хотя облачные приложения упростили совместную работу на разных устройствах в режиме реального времени, они ввели зависимость от поставщика услуг: если поставщик прекратил предоставление услуги или произошел сбой, пользователи могли потерять доступ к своим данным.
Связанная с этим концепция «сначала оффлайн» появилась в начале 2010-х годов и была направлена на то, чтобы сделать веб-приложения устойчивыми к сбоям в работе сети. Подход «сначала локально» основан на этих предыдущих усилиях, но при этом уделяет больше внимания долгосрочному владению данными и сквозному шифрованию.
== Происхождение ==
=== Манифест Ink & Switch ===
Ink & Switch — это промышленная исследовательская лаборатория, соучредителем которой является Адам Виггинс, который ранее был соучредителем Heroku.
В манифесте предлагалось семь «идеалов» программного обеспечения, ориентированного на локальное оборудование:
# '''Быстро''' — операции отвечают без повторных сетевых сообщений.
# '''Несколько устройств''' — данные синхронизируются на всех устройствах пользователя.
# '''Офлайн''' — пользователи могут читать и записывать данные без подключения к сети.
# '''Совместная работа''' — несколько пользователей могут одновременно работать с одними и теми же данными.
# '''Долговечность''' — данные остаются доступными, даже если поставщик программного обеспечения прекращает работу.
# '''Конфиденциальность''' — сквозное шифрование защищает данные пользователя.
# '''Пользовательский контроль''' — поставщик не может ограничить доступ пользователей к своим данным или их использование.
В документе были рассмотрены существующие подходы к хранению данных и совместной работе — от вложений электронной почты и синхронизации файлов в стиле Dropbox (сервис)|Dropbox до веб-приложений и мобильных серверов — и утверждается, что ни один из них не удовлетворяет всем семи идеалам одновременно.
=== Роль CRDT ===
В манифесте бесконфликтные реплицируемые типы данных (CRDT) определены как многообещающая техническая основа для локальных приложений. CRDT — это структуры данных, которые позволяют независимо редактировать несколько реплик, а затем объединять их без конфликтов. Это свойство впервые было формализовано в исследовании Марка Шапиро и его коллег примерно в 2011 году. Клеппманн и сотрудники Ink & Switch разработали Automerge, программное обеспечение с открытым исходным кодом|библиотека CRDT с открытым исходным кодом для документов JSON, чтобы сделать эти алгоритмы доступными для разработчиков приложений.
== Критика и ограничения ==
Подробнее: https://en.wikipedia.org/wiki/%22Local- ... 2_software
Программное обеспечение «сначала локальное» ⇐ Васина Википедия
-
Автор темыwiki_en
- Всего сообщений: 105337
- Зарегистрирован: 16.01.2024
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
Мобильная версия