引言
用python编程是我最幸福的时刻,相信有过python编程经验的童鞋都有体会。没有过多的束缚,没有过多的技巧,即使只用最平实的代码也依然能完成想要的功能。如果可以,我真希望这辈子只用python和c编程。
长久以来native应用为了能将新版本推送给用户,都是采用自动更新的方案。后来出现了hybrid应用,用native做个容器承载web内容,这样新的内容可以直接在线载入给用户。但hybrid应用有一些明显的弊端:
带有沉重的运行时,为了能渲染web页面,一个渲染引擎运行时就有好几十M。
接口功能有限,因为js天生被设计为运行在沙箱里,所以较为敏感的底层接口都需要渲染引擎或者native容器提供接口进行扩展,功能性更新时web页面更新还不够,还得让底层的native容器也更新。
hybrid的这些弊端native代码都没有,但native同样没有web页面的即时推送最新内容的能力,都说python是一个胶水语言,这个时候如果能让python介入调和这些问题实在是再好不过了。python代码可以即时解释执行,它的标准运行时只有4M,而且借助cffi使用ctypes调用底层接口实在是跟玩一样。那摆在面前的问题显而易见,如果能让python脚本像web页面一样被即时加载解释执行就好了。
pygain
让python脚本获得web页面的即时加载解释执行功能我们可以借助一个叫pygain的库,pypi上的地址是: pygain。可以直接使用pip install pygain安装,使用pygain只需要import pygain加载即可,现在假设我们要加载一个存放在远程服务器上叫hello.py的脚本在http://oeb1qxnpc.bkt.clouddn.com/hello.py,它看起来像是这样:
#