在 8 月 22 日晚 20:00 的讲座 【Typecho 那些事(上)】,Typecho 发起人:Joyqi 将首次开播他的讲座,在讲座中他会分享一些开发过程中的趣事,他和他的伙伴们是怎么运作这样的项目。此外,他还会给大家带来一些关于 Typecho 开发和使用技巧,Joyqi 最期待的是通过本次讲座和用户作一个直接交流了。
趁着讲座尚未开播,小编专门抓住 70 大大 写了这篇访谈,带大家走进 Typecho 的世界。
Typecho 是一个简单轻巧的博客程序。基于 PHP 使用多种数据库(Mysql、PostgreSQL、SQLite)储存数据,在 GPL Version2 许可证下发行的开源程序,使用 SVN 做版本管理。
来自用户羽中对 Typecho 的解读
Typecho 是一套追求精简到极致 PHP 博客代码,个性鲜明 UI 设计和精悍的代码构架是 Typecho 的精髓所在。与大家最熟悉的 WordPress 程序相比,当你打开 WordPress 搭建博客需要调用至少 20 多个函数钩子进行查询,错综交互,插件越多运行越慢。然而 Typecho 整站只需几个接口,通过静态继承快速传递参数,插件越多,功能只会越强大,对速度影响却微乎其微。
Typecho 精简的是代码架构运行效率,在功能扩展性和安全性方面丝毫没有打折扣。有健全的日志编辑和发布功能,自带评论嵌套和分页,强大的标签管理,支持自定义页面和永久链接,多用户权限管理,自如的主题和插件扩展……各种主流博客交互技术从 RSS,ATOM 到 TRACKBACK,XMLRPC 一应俱全,更多想象中的功能放任插件作者自由发挥。
访谈 Typecho
给大家介绍下 Typecho 名字的由来、开发初衷以及架构?
当时市面上的博客程序 WordPress 并不是最大的,国内也有好多优秀的开源程序,因为那会刚毕业,年轻气盛,一心想着开发一款能让更多人使用的开源软件,所以就开始了它的开发。这个名字是团队头脑风暴最后我想出来的,它是由"type"和"echo"两个单词叠加组成的,代表了这个程序的设计思路,我们想用更简单和直接的方式传达用户的信息。
Typecho 没有使用 WEB 里面流行的诸如 MVC 之类架构,而是使用一种很独特的模块化架构,主要是考虑到扩展的方便。
Typecho 到现在快 10 年,在开发 Typecho 和 Typecho 社区运营过程遇到的最大挑战是什么?
最大挑战是持续的投入问题,这个程序第一行代码到现在也快 10 年,虽然后来迭代的速度越来越慢,但是毕竟还在坚持持续更新,国内很少有开源程序能坚持这么久还保持开发活力。我采用的是一种类似冬眠的开发方式,在我比较忙的时候就只保持最核心功能和 bug 的修复,以最低的消耗维持开发活力。闲下来的时候,就会持续更新。
作为一款开源作品 Typecho 无疑是成功的,那么一个普通开发者如何参与到这个开源项目中?
成功完全谈不上,想参与非常简单,在 GitHub 上提 PR 即可,目前代码的贡献者已经超过 30 位了。而且还有很多外国朋友贡献语言包,前几天刚刚合并了希腊语的语言包。
下个版本及未来规划
不少粉丝关心 Typecho 的最新动态,请问:Typecho 下一版本什么时候发布,有哪些新功能及未来规划,以及下一个版本希望给用户提供哪些服务?
由于我的开发时间并不确定,我只能说下一版在以下三个功能开发完毕并达到稳定状态后,我会放出正式版。
- Hypedown 解析器,这是这一版新引入的 Markdown 解析器,也是 SegmentFault 正在使用的,主要可以保证 js 和 php 渲染的严格一致性。
- 导入和导出数据功能,这是呼声最高的功能,目前考虑会完全兼容 WordPress 的 wxr 格式,这样除了备份外,还可以在两个系统间做无缝地迁移。
- 对自定义字段的加强,会加入更多的交互功能,主要是方便那些做商业皮肤的用户。