资讯专栏INFORMATION COLUMN

zendAPI 项目开发计划

nevermind / 2731人阅读

摘要:如果内核这方面如果做得好的话,估计也没有我们这个项目了。规范化版本号与版本发布流程,针对主流平台进行测试,提供相应的二进制包等等。

因为时间有限,开发在每天的上午6点到9点,晚上9点到12点以及周末,所以项目周期可能比正常的要长一点,我的计划如下:

7月到8月完成对 zend engine 的一些核心数据库的封装

这个阶段主要针对 zend engine 一些常用的数据接口做一些面向对象的封装,比如用的最多的 HashTable, zendAPI 会为其提供一个STL风格的迭代器进行数据访问,常见的 HashTable 的访问语义接口,方面开发者的日常调用, 避免用到类型不安全的宏调用。

8月到9月初步完成函数与面向对象语义这部分接口的封装

这部分主要让开发者方便的往 zend engine 挂载自己定义的函数,变量和类等等,将一些日常的参数获取以及返回值进行标准化,让书写自定义函数的时候只关心自己的业务逻辑,让这部分代码远离 zend engine 底层的细节。在面向对象这一块跟函数的思想也差不多,主要让开发者创建自己的名称空间,自定义的类更加的简明,不用太关心底层一些繁琐的细节, zendAPI 到时候会提供对 PHP 版本号的兼容,所以对以后的升级,可以让您的扩展最大限度的避免修改。

9月到10月完成全局资源的统一访问接口的封装

PHP 从最开始的时候带入了一些很不好的全局变量和资源,其实这个并不是很好,会让程序维护性大大降低。但是历史已经已经无法改变,我们只能以一种相对比较安全的方式去使用它,慢慢的淘汰它,在 zendAPI 中我们将对其提供一些统一的访问接口。

10月到11月完成 zend engine 启动过程的封装

扩展是不能脱离 zend engine 而存在的,我们必须将我们开发的扩展挂载到 zend engine 内核上去,zend engine 有自己的一套启动流程,也有自己明确的生命周期的概念并对外提供了很多的钩子函数和大量的宏去帮组我们完成这个工作,但是相对来说还是相当繁琐和复杂的,而我们有时候并不一定需要陷入这种细节之中浪费我们的宝贵的开发时间,所以我们在 zendAPI 中会对这个过程进行一些封装,尽量去以一种面向对象的方式去简化整个启动过程。

11月到12月使用手册与例子文档的完善

我从来都认为,一个好的开源项目,文档这部分很重要,甚至有时候比项目本身还重要,因为现在大家的节奏都比较快,没有时间对研究代码,一个项目如果有好的文档支持,会大大降低入门门槛,让更多的人去使用这个项目,才能让其发挥出价值。如果 zend engine 内核这方面如果做得好的话,估计也没有我们这个项目了。zendAPI 的文档主要在官网上进行提供,共有三个方面

使用手册
API接口文档
开发博客

12月到2018年1月完善软件打包发布流程

因为是暂时就我一个人开发,包括网站的维护,文档的书写,所以很多方面很欠缺,到这个阶段第一版的开发基本结束,我在这个阶段基本是完成打包脚本的优化和一些小工具的开发,比如生成项目结构的小程序。规范化版本号与版本发布流程,针对主流平台进行测试,提供相应的二进制包(rpm, deb)等等。

总的来说,这个对我来说挑战非常大,很多事情对我来说都是第一次,希望 zendAPI 能顺利的跟大家见面,谢谢。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25834.html

相关文章

  • polarphp:一个新的 PHP 语言运行时环境

    摘要:项目介绍是一个全新的语言的运行时环境,基于目前最新的进行打造,支持最新的语言规范,同时提供了自己的运行时标准库。同样也在的基础上进行打造,实现了一个除开发之外的一个全新的运行环境。发布核心虚拟机的镜像。整合运行时框架。 showImg(https://segmentfault.com/img/bVbnQXK); polarphp 项目介绍 polarphp是一个全新的PHP语言的运行时...

    宋华 评论0 收藏0
  • zendAPI 项目简介

    摘要:项目是什么是对的接口使用的最新标准进行而面向对象的封装,从而屏蔽了底层的接口复杂性,加快开发扩展的效率。国内同类型的项目推荐目前国内有一个跟比较类似的项目,这个项目是项目作者开发,值得推荐。项目名字项目的地址是大家有兴趣可以研究。 项目Logo showImg(https://segmentfault.com/img/bVVtW8?w=716&h=218); zendAPI 是什么? ...

    Pluser 评论0 收藏0
  • 360正式开源zendAPI 项目,让 PHP 的扩展开发成为一种享受

    摘要:从而让的扩展开发成为一种享受,不用在考虑不同版本带来的差异性,让开发者专注于自身的业务逻辑。怎么参与交流下面是我们项目的线上交流群和微信的二维码,大家可以扫码加入技术圈欢迎大家在这两个平台上与我们进行互动特别感谢无线电安全研究部独角兽团队 360开源项目介绍: 360开源官方github: https://github.com/qihoo360 今天给大家介绍一个360最新开源的产...

    DrizzleX 评论0 收藏0
  • hellozapi项目CMake编译脚本详解-CPP开发PHP之旅第二节

    摘要:项目编译脚本整体代码编译脚本逐行解说我们推荐的版本是这里如果您的版本低于的话,会报错。这里我们定义我们的项目名称为使用的编程语言为。这行代码的意思就是指示编译器使用的标准对代码进行编译。在项目中我们主要有三个文件,在这里进行添加。 原文链接:http://www.zendapi.org/manual... 因为 zendAPI 采用的是 CMake 进行编译,所以我们的 helloza...

    Kerr1Gan 评论0 收藏0
  • zendAPI 的 CMake 参数详解

    摘要:类型字符串默认值无描述这个变量的值将会传递给编译器比如等等参数。类型字符串默认值无描述参考当可执行文件在非主流的路径下的时候可以指定这个变量,帮助编译系统进行探测。 zendAPI 是采用 CMake 进行编译的,我们在项目中定义了一些 CMake 的函数,变量和选项,下面我们在这篇文章中对这些进行详细的说明,有助于节省大家的时间。 CMake 内置重要变量 CMAKE_INSTALL...

    walterrwu 评论0 收藏0

发表评论

0条评论

nevermind

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<