《低功耗蓝牙开发权威指南》——2.8节模块化架构-阿里云开发者社区

开发者社区> 华章计算机> 正文

《低功耗蓝牙开发权威指南》——2.8节模块化架构

简介:
+关注继续查看

本节书摘来自华章社区《低功耗蓝牙开发权威指南》一书中的第2章,第2.8节模块化架构,作者 (英)Robin Heydon,更多章节内容可以访问云栖社区“华章社区”公众号查看

2.8 模块化架构
一个常被忽视的基本概念是面向未来的架构。大多数无线标准往往是在匆忙间完成的制定工作,只想让技术尽快脱颖而出,并不太关注该技术在未来10年或20年的时间里将如何运作。在“时间就是市场”的压力下产生的很多糟糕的结构设计无疑会对平台的长期可用性带来负面的影响。为了解决该问题,蓝牙技术联盟建立了一个特别架构工作组,专门研究基于通用属性规范的架构,以确保该技术不会很快过时。
该工作组的主要成果是基于通用属性规范的模块化的服务架构,允许设备以标准的方式将原子的、可封装的行为比特装进单个服务并将其公开。(此处,原子指的是只做一件事情,可封装指的是能够从其他功能剥离并自我封装。)服务可以引用其他的服务,比如有温度传感器的电池可以引用温度服务;相同的温度服务可被重复使用,比如家庭温度计、冷藏室的温度传感器、汽车发动机的冷却液温度传感器等。
在此架构中,一个有趣的副作用在于设备上公开的服务不必与某个给定的规范直接相关。规范要求设备提供一组给定的服务,但也仅仅需要一个链接而已。这意味着如果可以利用设备上的不同服务创建新的规范,则利用已有服务将其组合,就可以形成多个新的规范。事实就是如此,虽然只有在设备上设计和实现服务之后才会编写规范。
上述高度灵活的模块化架构有利于随着时间的推移逐步建立生态系统。例如,家庭可以首先部署智能电表,提供当前或者未来的价格信息和使用信息。随后可以部署智能家电,使其支持远程开关,并采用网关模式在离家时实现自由控制。之后,部署的能源管理器可以利用智能电表的信息,“聪明”地调度各种智能家电,为屋子的主人节省用电开销。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Prism for WPF初探(构建简单的模块化开发框架)
原文:Prism for WPF初探(构建简单的模块化开发框架)   先简单的介绍一下Prism框架,引用微软官方的解释: Prism provides guidance to help you more easily design and build, flexible, and easy-to...
1369 0
蚂蚁金服 SOFAArk 0.6.0 新特性介绍 | 模块化开发容器
Scalable Open Financial Architecture Stack 是蚂蚁金服自主研发的金融级分布式架构,包含了构建金融级云原生架构所需的各个组件,是在金融场景里锤炼出来的最佳实践。
631 0
在macOS上安装配置golang开发环境
本文主要介绍如何在macOS上安装配置golang开发环境。 一、安装 Homebrew 打开终端,输入以下命令安装 Homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.
1650 0
Notepad++配置Golang开发环境
简述 Notepad++ 不支持 Go 语言的立即使用,可以为其安装 GOnpp 插件。安装之前,需要先配置好 Go 的环境。 简述 安装 Go 开发插件 配置语法高亮 更多参考 安装 Go 开发插件 运行 Notepad++ 软件 打开菜单,选择:插件 -> Plugin Manager -> Show Plugin Manage
1305 0
Schema – 模块化,响应式的前端开发框架
  Schema 是一个模块化的,响应式的前端框架,方便,快捷地帮助您迅速启动你的 Web 项目。Schema 配备完整的创建多个视图的能力。从桌面显示器到移动设备,它的12列网格提供强大的灵活性。   Schema 借助了强大的 LESS,这使得代码结构干净简洁,超级容易维护。
764 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载