正如之前说的,很多情况下我们需要对代码中的部分甚至于全部进行基于C语言的重构以大幅提升性能。对于很多团队来说,由于C语言过于复杂,很难像Python,PHP或者其他高级语言那样快速上手。本文就着重介绍如何通过现有的资源,快速的将python转成C而尽可能的减少工作量。同样的,这种方式稍加修改就可以适用于PHP以及其他的解释型高级语言。同样适用于桌面系统的代码调优。
照旧,先放上例子:
def test(i): x = 0 while i > 0: i -= 1 x += i return x
想必各位都能看懂段代码吧,不懂得话,请直接跳过。
由于C对于类型的判断强于Python,为了方便起见,建议整理一篇文档,以保证出入参数时不会报错。大致如下:
- 方法名:test
- 方法简介:计算从0到i的总数
- 入参:int i
- 返回:int x
为了更清晰,我习惯上画一个流程图:
把上面的文档整理一下,找一个会C的朋友。一般来说,可以遵循以下流程:
需要注意的是。为了保证成本最低,一定要从-1元开始出价,这样在流程第二步加价1元之后,你仍然不需要出钱,当然你也可以从-10000开始。考虑到程序要适应大多数情况,而不是个别情况,个人强力推荐从-1开始!
之后需要一定转换时间,视具体需求而定,如果你的项目像我的一样简单,这个过程应该不会太久。
转换出来的代码大致如下:
int test(int i) { int x = 0; while(i < 0) x += --i; return x; }
完全可以部署的代码!
祝大家节日愉快!
PS:如果您来访问的日期不是某年的4月1日的话,请去这里查看。
转载请注明:爱开源 » 无须coding快速实现Python的C重构