要满足的需求
满足功能需求首先,要设计一个SDK一定要考虑用户需求,确定边界,SDK需要包含哪些功能。个人认为SDK应当精简,专注实现一部分功能即可。满足性能要求此外除了功能性需求,软件设计开发中还需要考虑非功能性需求。比方说,稳定性、性能、安全等。稳定性:如果sdk不稳定,功能时好时坏,用户是不是很懵逼。如果sdk有bug,导致了宿主应用崩溃,对实际用户造成体验多不好。故而一个高水准的sdk一定是一个稳定性非常好的sdk。性能:性能实际包含多个方面,比方说包体积、电量、内存等。这些因素对于SDK设计者挑战非常大,但又是对用户影响十分深远的部分。要设计好一个sdk,性能必须满足一定标准。安全:前两者是面向用户的,安全大多数情况是对自己而言的。在编写sdk中,应当要考虑如何保证容器代码安全,保证核心数据、接口不被暴露,保证核心代码不被获取。遵循的几个基本原则接口隔离设计应当小而精简;开闭原则。对于扩展开放,对于内部修改封闭。对外交互部分尽量面向接口编程,实现抽象。接口的易用性设计符合“人性”的接口,面向“大众”的接口,减少奇技淫巧的使用。sdk是给别人使用的,不是用来炫技的,朴实就好。向后兼容不能让用户升级你的sdk后原有功能不可用了。编写文档最后,完成sdk编码工作后,一定要记得编写文档。俗话说,程序员最讨厌两件事,一个是写文档,另一个是使用sdk没有文档。一份好的文档能让用户事半功倍,快速接入使用sdk,并减少后续bug。
SDK设计要求
最新推荐文章于 2024-03-12 08:58:53 发布