现在的位置:首页 > 软件开发行业资讯 > 新闻详情

程序的库设计

“库设计就是语言设计,语言设计就是库设计”,二者从先定义问题域到后解决问题的思路是类似的。

1、考虑库的目标用户。这是确切的问题,这是开源库还是你只是在小组内部使用的库,或者是公司内部使用的?用户的能力和需求是不一样的,要求当然不同。

2、要解决的核心问题。不要重复发明轮子,那么每一个新库都有其存在的价值,这个问题既要通用又要具体,“通用”指的是库总有一个普适性,解决的实际问题对于不同的用户来说是不一样的;而“具体”是指库解决的问题对于程序员来说是非常清晰和直接的。例如设计一个库,根据某种规则把不同的数据类型(XML,BSON或者某种基于行的文本等等)都转换成JSON。

3、统一的编程风格。很多库都有自己精心设计的一套DSL,比如链式调用等等几种方式,当然,这也和使用的语言有关系。定义一种用起来舒服的编程风格对于程序库的推广是很有好处的。这也是一致性的一个体现。

4、内聚的调用入口。这和面向对象的“最少知识原则”有类似的地方,把那些不该暴露出去的库内部实现信息隐藏起来,在很多情况下,程序库不得不暴露和要求用户了解一些知识的时候。

5、向后兼容。这一点也可以归纳到一致性里面去。containsValue和contains方法其实是一样的,造成这种情况的一个原因就是为了保持向后兼容。

6、依赖管理。依赖管理很多情况下是一个脏活累活,但是却不得不考虑到。通常来说,任何一个库考虑自己的依赖库时都必须慎重,尤其是面对依赖的库需要升级的时候。如果依赖的库出了问题,自己设计的程序库也可能因此连累。

7、完善的测试用例。通常来说,程序库都配套有单元测试保证,无论是什么语言写的。

8、健全的文档组织。通常包括教程、开发者文档和接口API文档。前者是帮助上手和建议使用的,中间的这个具备详尽的特性介绍,后者则是传统的API参考使用文档。


----烟台软件开发----


想要了解更多详情欢迎来电咨询18678812288,或登陆网址www.jnwzjs.cn 联系人:王经理。

威海软件开发成功案例 查看更多+

  • 烟台环卫人员管控平台--威海在外

    烟台环卫人员管控平台--威海在外

  • 威海智慧照明管理平台--烟台单灯

    威海智慧照明管理平台--烟台单灯

  • 烟台智慧井盖---威海智慧井盖智能

    烟台智慧井盖---威海智慧井盖智能

  • 威海应急管理局智慧化平台整体解

    威海应急管理局智慧化平台整体解

  • 烟台、威海智慧井盖_污水井盖智能

    烟台、威海智慧井盖_污水井盖智能

  • 烟台、威海检察机关检察人员分类

    烟台、威海检察机关检察人员分类

  • 烟台交规速成系统|威海交规考试平

    烟台交规速成系统|威海交规考试平

  • 检察院网络服务大厅软件平台

    检察院网络服务大厅软件平台

  • 企业在线考试系统

    企业在线考试系统

  • 党员在线考试系统

    党员在线考试系统

  • 烟台心理测评软件|威海心理测评系

    烟台心理测评软件|威海心理测评系

  • 烟台内部培训管理系统|威海出国留

    烟台内部培训管理系统|威海出国留

  • 烟台物流软件开发|威海快递软件开

    烟台物流软件开发|威海快递软件开

  • 狠刹“四风”网络监督平台软件

    狠刹“四风”网络监督平台软件

  • 党员领导干部德廉知识在线学习测

    党员领导干部德廉知识在线学习测

  • 烟台在线考试系统|威海在线考试软

    烟台在线考试系统|威海在线考试软

  • 菏泽新巨龙煤矿采掘资料达标管理

    菏泽新巨龙煤矿采掘资料达标管理

  • 科技信息评价信息系统

    科技信息评价信息系统

  • 绩效考核系统

    绩效考核系统

  • 济钢炼铁厂管理信息系统

    济钢炼铁厂管理信息系统

联系我们| 汇款方式| 法律声明| 开发 流程

手机:18678812288 在线客服1069706080 版权所有2008- 2018 鲁ICP备08107739号-22

相关搜索:烟台软件开发| 威海软件开发| 烟台APP软件开发| 威海APP开发| 威海政府管理软件| 威海教育管理APP软件| 烟台政府管理软件| 烟台教育管理APP软件| 烟台手机应用软件开发| 软件开发外包| 游戏软件开发| 威海oa软件开发自学| 我想学APP开发| 如何进行软件开发| 威海软件开发工程师| 威海软件设计| 烟台短信开发平台| 烟台软件开发公司排名| 威海App开发有多难?