开发一致库的最佳实践是什么?

3 投票
6 回答
528 浏览
提问于 2025-04-11 09:34

我正在开发一对库,用来和一个REST API打交道。因为我需要在不同的环境中使用这个API,所以我打算做一个PHP版本(用于网页应用)和一个Python版本(用于桌面应用和长时间运行的程序)。在开发这些库的时候,有没有什么好的建议可以让我保持清醒呢?

6 个回答

2

试着为这两种语言写一个通用的单元测试套件。可以考虑把一个语言中的类包装起来,以便从另一个语言中调用。如果实在做不到,至少要确保这两个版本的测试是等价的,也就是说它们测试的内容和结果应该是一样的。

2

“做你自己的客户”:我发现先写测试的这个方法非常好,可以确保你的API(应用程序接口)使用起来很简单。先写测试意味着你会像一个‘用户’那样思考你的API,而不仅仅是作为一个实现者。

6

开发不同语言的并行库时,常常会遇到一个问题,那就是不同的编程语言在处理同样的任务时,有各自不同的写法和习惯。我自己就有这样的经历,曾经把一个库从Python移植到PHP。这里的“习惯”不仅仅是命名方式,比如Python有很多神奇的功能,可以通过获取器和设置器让对象的属性表现得像魔法一样;Python还有一种叫做“猴子补丁”的技术;还有命名参数的用法。

在移植的时候,你需要选择一种“基础”语言,然后尽量在另一种语言中模仿这些习惯(这可不是件简单的事);而在并行开发时,最好不要做太复杂的事情,尽量考虑到最基本的需求。然后再加上一些语法上的小花样。

撰写回答