文档章节

我为什么要基于 PHP-CPP 去实现 zendAPI 项目

zendapi
 zendapi
发布于 2017/09/11 15:34
字数 549
阅读 53
收藏 0

记得去年的这个时候,我刚来奇虎的时候,在研究 PHP 的时候无意之中发现了 PHP—CPP 这个项目,立刻就被她吸引了,原来 PHP 的扩展居然还可以这样去实现,以一种面向对象的方式去开发,我感觉这个是个很好的开头。中间辗转反侧,我也尝试了两个项目,一个是 TOPJS 现在暂时停止了,另一个是 qingeditor,同样暂停开发,折腾最终我也是觉得在 PHP 领域做点东西,所以开始构思 zendAPI。

我现在的情况是:

  1. 我从未开发过 c++ 项目
  2. 我从来没有开发过 PHP 扩展
  3. 我需要一个由我控制的项目,实施自己的想法,可能不成熟

基于这两个条件,我急需要一个类似的项目作为原型进行开发,所以选择了 PHP-CPP。这个项目文档还算完整,有简单是使用文档,但是没有 API 接口文档,对 zend engine 进行了封装,但是封装的不够完整。使用了一些面向对象的风格去封装,但是又没装的不彻底。最不好的一个是,php-cpp 是一个动态库,但是却不具备 Qt 那样的二进制兼容保证。
其实之前有想过给 php-cpp 提需求,但是我没什么名气,也是个菜鸟,所以打住了这个想法。

基于以上的原因,我开始了 zendAPI 项目,同时基于 php-cpp 进行开发,第一版中我们会有很多接口,编程模式跟 php-cpp 保持基本相似,这样可以让我快速的切入 php 扩展开发,在做的过程中有项目比较成熟的项目进行参考,大大节约了我填坑的成本,同时也防止了我掉进一些坑的可能性。在研究 php-cpp 我也可以实践 c++ 编程和熟悉 php 接口,为进一步改进 php-cpp 奠定坚实的基础。

相信我,我会努力将 zendAPI 打造好,等到成熟的那一天,我也会将代码贡献给 php-cpp。

© 著作权归作者所有

共有 人打赏支持
zendapi

zendapi

粉丝 10
博文 12
码字总数 9448
作品 1
程序员
加载中

评论(1)

华仔php
加油~
10月新增开源项目:号称最快的 Node.js 应用框架来了

立冬已过,人们认为这是夏天的终结,冬天的开始。立,建始也;冬,终也,万物收藏也。不过在开源的世界里,开发者并不畏惧寒冷,对技术的不懈追求也未曾终结。 开源的世界总是精彩纷呈,十月...

编辑部的故事
2017/11/07
0
16
C语言/C++编程学习:不做C/C++工作也要学C/C++的原因!

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你学知识
06/13
0
0
C语言/C++编程学习:不找C/C++的工作也要学C/C++的原因!

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界
06/01
0
0
计算机的革命----编译器体系的战争-----集团军的危险信号

Symantec C/C++ 已经不见踪影,Symantec现在专心做他的安全软件,诺顿杀毒软件,还有一些其他的,Boland C/C++最后还是被收购了,现在的RAD C++ Builder混的一直不愠不火,WATCOM 被Sybase败...

Force武装卫队
2012/11/23
0
9
拿Erlang来拯救谁?---Erlang学习总结一

工作中主要使用C/C++作为开发语言。 也曾在PHP,JAVA,JS,LUA上逗留过,但对它们,我没有花费过多的精力。部分原因可能是由于工作不能实际使用这些语言来开发项目,而我的理解是它们对我的吸引...

逍遥客
2011/11/08
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

qduoj~前端~二次开发~打包docker镜像并上传到阿里云容器镜像仓库

上一篇文章https://my.oschina.net/finchxu/blog/1930017记录了怎么在本地修改前端,现在我要把我的修改添加到部署到本地的前端的docker容器中,然后打包这个容器成为一个本地镜像,然后把这...

虚拟世界的懒猫
今天
1
0
UML中 的各种符号含义

Class Notation A class notation consists of three parts: Class Name The name of the class appears in the first partition. Class Attributes Attributes are shown in the second par......

hutaishi
今天
1
0
20180818 上课截图

小丑鱼00
今天
1
0
Springsecurity之SecurityContextHolderStrategy

注:下面分析的版本是spring-security-4.2.x,源码的github地址是: https://github.com/spring-projects/spring-security/tree/4.2.x 先上一张图: 图1 SecurityContextHolderStrategy的三个......

汉斯-冯-拉特
今天
1
0
LNMP架构(Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl)

Nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时...

蛋黄_Yolks
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部