博客程序按照语言类别进行分类,比较便于整理,时下博客程序采用的编程语言主要有下面几类:ASP、ASP.net、PHP、CGI、JSP等,其中现在最为火爆的非PHP莫属,并且随着现有PHP主机价格的走低,可以想见的是PHP博客程序的普及大幕才刚刚展露它的一角!而基于ASP语言自身的局限,该类博客程序的发展也要受到影响,其实这些也可以从现在流行的论坛程序看出,PHP与ASP.net正在走向主流或者说现在已经成为主流!
我选择博客程序有这么几点要求:首先,程序是免费的;其次,简洁但不简单;其三,拥有友好的后台 *** 作;再者,最好可以支持友好的URL(静态化URL)等。对于模板与插件倒不是很感冒,当然比较偏好侧边栏右置的模板,至于插件,如果能够给读者提供一些方便最好,不是的话,宁可不安装。
http://webeta.cn/?action=show&id=1447
好了,下面就把我自己接触过的ASP、PHP以及其他类型的程序归结到下面,给后来者一个参考:
1、ASP类
1.1、L-Blog:
程序简介:由Loveyuki(卫慧杰)自主开发的基于ASP+Access的小型单用户博客系统,也是我接触并使用的第一个博客程序。其功能简洁使用,比较符合刚刚接触独立建博的用户。本来Loveyuki对程序的更新很勤奋的,后来不知是何种缘故停止了开发与更新,现在就连官方站点也处于关闭状态。据悉,Loveyuki曾供职于i170,后突然离职,现情况不明,但是感兴趣的朋友可以去i170看一下他的博客。
官方站点:http://www.loveyuki.com/(已经打不开)
1.2、LBS
程序简介:开发者是SiC/CYAN,早期基于L-Blog架构,自从LBS2推出以后,大部分程序属于自己原创,该程序简单高效、速度快、全英文,界面用的是XHTML+CSS构架,比较合理,但是由于作者是Maxthon开发组的成员,这也造成程序更新速度相当慢。目前基本已经停止了对主程序的开发与更新,最近的一次是发布修补漏洞程序。对于Spam,与下面将要介绍的PJBLog一样,显得办法不多。
官方站点:http://www.voidland.com/blog/
1.3、Z-Blog
程序简介:由zx.asd(朱煊)和sipo(刘星晨)联合开发的ASP+Access的单用户博客系统,其创始人是zx.asd。我曾经体验过一段时间(V1.6Plus)后来由于个人原因(主要是不喜欢该程序的后台)而放弃,因此未做长期使用,但是现在使用该程序的人非常多,其中我理解最重要的一点原因就是该博客程序支持生成静态文件,而这个功能便于搜索引擎对站点文章的收录。而且两位开发者比较勤奋,其官方论坛也比较活跃。
官方站点:http://www.rainbowsoft.org/
1.4、PJBlog
程序简介:由PuterJam(舜子)独自开发的基于ASP+Access的单用户博客系统,其初始开发阶段参考过LBLOG和PLblog。该博客系统以其丰富的可扩展功能、丰富的插件和模板而著称,在国内拥有大批的用户,然而不知道是由于舜子供职于腾讯后(负责Q-zone的前台JS设计)精力受限还是源码被小偷盗窃的缘故一度更新缓慢,现在最新的版本是v2.7,主要解决了前一个版本的Spam问题等,但感觉效果不是很理想。该系统也是我使用时间最长的程序,最主要是喜欢他的后台,给人的感觉是完善、人性化、强大又不失简洁,而且布局也是我比较喜欢的,当然还有一点就是该博客系统支持前台直接发表日志!至于其他的功能就不赘述了,喜欢写博客并且有ASP空间的同学不妨试试看!同Z-Blog一样,其官方支持论坛也是很有人气,比较活跃!
官方站点:http://www.pjhome.net/
1.5、Dlog
程序简介:暂无
官方地址:http://www.duoluo.com/
1.6、小结:国产的ASP程序不止上述五款博客程序,但其中前四款是比较主流的程序,上述博客程序适合刚刚接触独立建博的用户,从中可以跟着学习很多的知识。如果你想选择ASP博客程序的话,推荐你选择Z-Blog,当然也考虑PJBlog。
2、PHP类
2.1、O-Blog
程序简介:由风色(ShiShiRui)开发的一款给人感觉清新简洁而功能全面的基于PHP+MySQL环境的单用户博客程序,其主要特色对静态URL生成有很大的灵活度,而且系统后台采用类似Discuz!4.0的左侧导航设计,但是作者由于学业问题,目前已暂停开发该程序,但是作者还会发布重大漏洞补丁,因而用户还是可以下载并使用该程序的。
官方站点:http://www.phpblog.cn/
2.2、BO-Blog
程序简介:由Bob Shen(论坛程序BMForum核心开发成员)开发的一款单用户博客程序,界面华丽(模板丰富),功能强大(插件超多),最初是采用PHP+文本数据库,后转投PHP+MySQL阵营,现在可以说在PHP类单用户博客中占有首屈一指的地位,但是同样程序的整体开发也是比较缓慢。
官方站点:http://www.bo-blog.com/
2.3、SaBlog-X
程序简介:由angel独自开发的基于PHP+MySQL的单用户博客程序,以其简洁、安全、高效等特点吸引了众多用户的目光,现在本博就是采用该程序,同时作者也是Discuz! Lite版本的制作者,或许是受Discuz!影响,后台 *** 作很是类似;该博客程序现有的插件以及模板相对较少,但是其发展空间应该还是很大的,现有阶段比较适合对博客功能要求不高的用户。在执行速度方面,相比较PJBlog来说,速度快很多。
官方站点:http://www.sablog.net/
2.4、F2Blog
程序简介:国内拥有开发成员最多的博客系统(拥有11个人的开发团队),同样基于PHP+MySQL环境,其最主要的特点有:可以与PJBlog共用皮肤、集成多个博客程序的优点(例如WordPress、TT等),后台 *** 作类似SaBlog-X(这一点比较找人喜欢),而且预先安装大量的插件,这就省去了用户不少的麻烦。感觉比较适合需求界面华丽、功能丰富的用户,如果你不喜欢SaBlog-X的简单,那么推荐你使用这款程序。
官方站点:http://www.f2blog.com/
2.5、C-Blog
程序简介:暂无
官方地址:http://saysay.cn/
2.6、ExBlog
程序简介:暂无
官方地址:http://www.exblog.net/
2.7、小结:是的,这里并没有WordPress的名字,这篇写的主要是国内开发的博客程序,所以不好意思,我在后面还会陆续介绍的(卖个关子,嘿嘿^.^)。国内PHP博客程序的发展现在势头良好,用户也像PHP语言的效率一样而逐步增加起来,真是希望这些程序开发者能一直保持激情与斗志,因为那样才是我们这些用户的福音。
3、ASP.NET类
3.1、ZJ-Blog
程序简介:基于ASP.net 1.1环境开发的单用户博客程序,支持Access和MySQL两种数据库,其最大的特点是采用.net开发并大量的使用了Ajax技术,本人还没用使用过此程序但是直觉上觉得大量应用Ajax也未必是一件好事,个人觉得给用户适当的体验或许更能引起用户的兴趣。当然用户其实最关心的并非是这些技术问题,而是程序的功能与界面以及安装运行环境。当然使用微软力推的.net环境开发,其前景还是应该被看好的。
官方站点:http://www.zj-blog.com/
4、JSP类
4.1、DLOG4J
程序简介:暂无
官方地址:http://dlog4j.sourceforge.net/
5、CGI类
6、小结:其实国内程序员开发的博客系统远远不止上面提及到的这些,从上面的统计可以看出目前国内博客系统主要集中在两类ASP与PHP,其中前者由于对架设环境的低要求而在国内流行的很广,但现在PHP的迈步赶上也给了用户更多的选择,这也使得原有的博客程序江湖变得更加的“血雨腥风”。
出处:http://webeta.cn/?action=show&id=1447
Github在3月19号开放了新的项目展示页面(Showcase),Showcase根据项目属性来组织、定义一系列的开源项目列表,可以更清晰的发现你所需要的开源项目。在3月26日的Showcase中,Github放出了一个新的类目:支撑Github的开源技术,这里列举了Github所使用的一些主要的开源项目。如下是这些开源项目的介绍:
linguist
语言识别库,能够自动根据项目的代码来识别你所使用的语言。 在你的项目源代码页面,可以看到一个彩条,点开以后会显示项目中的编程语言比例。linguist主要通过文件的后缀来识别,对于一些通用的扩展名,例如.m文件,linguist通过一些语言的特征片段来做判断。由于编程语言很多,linguist还不能覆盖所有语言的检测。
jquery-pjax
pjax是Github的联合创始人之一defunkt的作品,它使用html的pushState特性与ajax,可以实现页面内容动态局部刷新,当点击项目源代码页面中具体的一个文件或者文件夹时,你将会看到页面的其他部分是不变的,只有定义的页面DOM会刷新,这里使用的就是pjax。
elasticsearch
Eleasticsearch支撑了Github的搜索功能,2年之前Github使用Solor做搜索,随着用户和托管项目的增加,索引的大小超过了solor节点的最大存储空间,也出现了很多的问题,Github团队在思考解决方案时决定使用Elasticsearch做替换。Github最开始使用ES时,使用了44台亚马逊EC2实例,每台实例配备2T的存储,其中8台实例指负责查询请求。目前,Github已经将原有的EC搜索集群迁移到了东海岸的一个数据中心,使用8台物理主机替换了44台EC2。
Rails
Ruby实现的MVC Web框架。Github的用户界面和功能大部分基于Rails构建,不过需要注意的是现在虽然Rails的项目版本已经发展到了Rails 4,但是Github依旧使用的是自己维护的2.3分支,对于不保持和现有的Rails主版本号一致的原因,Github员工Kneath做了如下的解释:
. 花更过的时间来升级更新Rails,将会减少为用户构建新特性的时间,我们更关注用户;
. 性能问题是一个很重要的考虑。在过去的几年中,我们极大的减少了响应时间。而升级Rails不仅会带来一个更慢的框架,而且还会引入一个不同的架构——我们需要再根据新的框架特性来定位优化性能。我们对于现有的框架已经做了很多的优化以保持性能稳定,最主要的是:将时间花费在升级上不会让我们的架构更快。
. 过去的三年我们一直在升级这个堆栈,不升级Rails版本我们依然可以使用新的特性。
Redis
Redis是K/V存储系统,知名的NoSQL实现之一,在Github,主要使用Redis来进行队列中的异常处理。在Github早期,曾尝试过很多的基于Ruby的队列机制,也曾使用Amazon SQS,但是这些方案都不能在Github快速增长的同时满足稳定性要求,最终Github迁移到了使用Redis的技术方案resque。
sprocket
Sprocket是一个网站资源打包的Ruby库,它不仅能够管理JavaScript和CSS资源,还可以按照pipline的方式来流式预处理CoffeeScript、Sass、SCSS和LESS代码等;
libgit2
libgit2是一个可移植、纯C语言实现的Git核心方法类库,提供API重新链入Git方法。Github的背后使用的原生的git来实现commit、push等功能,但是使用libgit2来针对桌面应用调用、Ruby代码中调用等;
rugged
libgit2的Ruby类库;
bcrypt-ruby
OpenBSD bcypt()密码哈希算法的Ruby实现;
html-pipeline
html-pipline是一个gem包,可以将现有Github前端HTML中的一些特性进行流式处理,例如在Github的评论框中,你可以@某一个人、输入emoji的表情、使用markdown的语法来写内容等,但是这些都是由单独的插件来控制的,html-pipeline可以流式的使用相应的插件处理原始内容,例如先将markdown转义成html,继而自动添加emoji表情,然后进行代码的语法高亮等。
gemoji
在2013年的QCon北京前夜:Github Drink Up活动中,来自Github的工程师Tim在现场的活动中谈到了他们的一个文化:使用emoji。他解释道:“很多情感使用文字不能做出形象的表达,但是使用emoji表情却能够起到不一样的效果”。在Github现有评论框或其他内容中,都可以看到emoji的身影,所使用的就是gemoji这个gem包。
jekyll
Jekyll是一个静态博客生成的程序,Github中项目的Page页面,默认选型使用的就是jekyll。
gollum
Gollum是一套基于git的wiki系统,Github项目的wiki系统背后使用的就是这套开源框架;
octokit.rb
Github API的官方Ruby SDK;
Hubot
Hubot是Github自行开发的一个聊天机器人,当然它已经超过了聊天机器人的范畴,Github作为一个异步办公的团队,日常的协作、沟通很大部分依赖于聊天室,通过Hubot,Github的员工可以在聊天室中给机器人定制一些特定的回复、3D打印模型,甚至通过hubot来部署生成环境的代码、获取服务状态等,在2013年的QCon北京中,Giuthub的工程曾针对如何使用Hubot做运维进行过分享:《ChatOps at GitHub》。
d3
d3是使用JavaScript实现的数据可视化框架,使用HTML、SVG和CSS等,在d3的基础之上发展处诸如crossfilter、NVD3.js等一系列扩展或者简化框架,并且形成了一个良好的社区。作者mbostock目前供职于NYTimes,d3是他的博士论文项目,目前Github使用d3来展示托管项目提交历史、记录等的可视化效果图。
plax
plax是控制视差元素的JavaScript类库,你可以在404、505等页面看到它的实现效果。
ace
Ace是一个使用Javascript开发的代码编辑器,具备语法高亮、快捷键绑定等特性, Github使用Ace实现基于web的代码编辑功能。
zepto
Zepo是一个JavaScript框架,其特点是兼容现有jQuery API的同时,自身体积十分小;
zeroclipborad
Github的“点击复制到粘贴板”的功能就是使用的zeroclipboard,zeroclipboard使用一个不可见的Adobe Flash动画来实现复制粘贴,并提供Javascript的API接口以供调用。
charlock_holmes
charlock_holmes用来检测字符编码格式,并可以自动将字符编码转化成UTF-8。
puppet
服务器运维工具,可以进行自动化部署、集群管理等。
moment
moment是一个日期框架,用于解析、验证、格式化日期等,其中一个常用的功能是将原始的Javascript时间类型转化成方便阅读的时间说明格式,例如:”2小时之前“、”3天之前“这种形式。
bower
前端资源包管理工具,可以通过bower install <package>的形式将常用的前端资源下载到本地的项目目录中,例如:bower install bootstrap将会自动下载bootstrap的项目资源到本地的项目目录中,不需要自己手动来下载、移动资源文件,并且通过配置文件可以方便分享给同事、简化项目初始化等;
resque
Resque是Github Enterprise中使用的一个基于Redis的后台作业控制系统,提供可视化的界面,可以方便的监控后台作业的运行状态和监控情况。
另外,Github还发布了“支撑Github Windows客户端的开源项目”和“支撑Github Mac客户端的开源项目”两个Showcase。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)