用户管理系统 PHP项目开发银弹?

所属分类: 网站运营 / 建站经验 阅读数: 124
收藏 0 赞 0 分享

银弹,是针对狼人等超自然怪物的特效武器。后来也被比喻为具有极端有效性的解决方法,作为杀手锏、最强杀招、王牌等的代称。

作为一个在php开发岗位上小有几年经验的开发者,我的日常工作是从事基于TP框架的php项目开发。一直以来,我都执着于独立自主开发,包括最基本的用户管理和后台管理系统。最困扰我的东西就是权限管理、用户的登陆注册等等。每个项目的需求不一样,所以我采用的方式就是修修改改,维护自己的用户管理系统。然后应用到各种项目中。

直到有一天,我在OSC上看到一个新的开源项目——OpenCenterphp用户管理系统。让我突然产生一种相见恨晚的感觉。

我为什么会有这种感觉呢?

首先,OC是遵循Apache2.0开源协议的,也就是和TP一样的协议。打消了我在版权方面的疑虑。

再者,它作为一款用户管理系统,提供了较为完善的用户注册流程,包括多种注册方式,如手机号注册、邮箱注册、用户名注册,同时还支持真实性验证,可见开发团队的诚意。

另外,它对用户权限管理方面所做的努力,也可见一斑,开发团队称继承自OneThink,我也曾经在项目中使用OneThink,发现OC还是有很大不同之处的,它还加入了前台权限的管理。

为了给广大tper一个参考,我特别拿OneThink和OC进行了一个比较。

1.开源协议

两者都是基于Apache2.0的,没什么好比较的。

2.系统框架

两者都是基于ThinkPHP的。不过OC基于OneThink,这一点让我很疑惑。因为从表面上,很难看出来两个系统的是同一个内核。不过研究之后,还是发现一些共同之处。OC有很浓重的OneThink基因。

前端方面,OC采用zui,算是一个比较大胆的尝试(据我所知,zui就是bootstrap的一个改进版本,学习成本比较低),OneThink比较传统,采用了bootstrap。

3.系统重点

OneThink着重于内容管理,从后台的结构也可以看出来。导航栏中可以很醒目地看到内容管理的部分,内容管理部分的功能也已经初具雏形。

OC着重于用户管理,所以后台导航完全没有内容管理的部分,比较有特色的是,导航部分把“模块”概念突出了,左侧栏位专门放置模块,同时也支持模块的安装卸载,这一点应该说是比较大的改进吧。

&OC还有一个比较突出的特性,就是支持用Php构建后台管理页面,这对像我这样的,没有太多前端经验的后端开发人员来说,是最大的吸引力。通过AdminBuilder类库,可以纯php来构建管理页面。还有更牛的开发者自己改进了一套用于前台的AdminBuilder。

图一、OC后台局部截图

4.前台功能

这方面,两者均只提供了一个基础的demo,OneThink提供了一个博客形式的demo。而OC更加彻底,只提供了一个演示模块和一个演示首页。不过OC的默认风格更加小清新,可能和采用zui框架作为前端有一定关系吧。

OneThink注册登录方面,并没有提供完整的流程。在这方面,OC做得可圈可点。多种形式的注册登录、第三方登陆、同时还支持头像的裁剪、扩展字段,密码修改等功能。值得一提的是,OC还提供了一种消息机制,研究之后,发现是基于轮询技术实现的,这里,我觉得还有可改进的空间。不过基本都能满足我的需求。

图二、资料修改界面

图三、消息提醒菜单

5.扩展

说到扩展,我觉得OneThink还是做得比较赞的,OneThink有比较多的开发者贡献插件,算是一个比较大的竞争优势。而OC,因为刚出来,没有这方面的支持,不过我试着把OneThink的插件移植到OC上,发现还是比较好兼容的,毕竟父子关系摆在那里。

不过OC的官方也是比较努力的,提供了一些内置插件,比如图片水印,空间换肤等。值得一提的是,开发团队改进了一些OneThink的第三方插件之后仍然保留作者,比起某些所谓的“具有分享精神”的人高尚一点。

6.文档

文档这块,我个人感觉OC还不具备和OneThink比较的能力。首先,OC的文档不够齐全,这一点也算是OC的痛处吧。虽然开发团队提供了一个离线文档,但还是很不详细。比起OneThink还差很多。不过群里面每天都有更新进度,也算是不错的了。

7.开发者

其实这一项进行比较,对OC挺不公平的,毕竟一个年前才推出第一个版本,而OneThink已经发布有个把年头了。不过个人觉得,OC作为一款用户管理系统,还是大有可为的,毕竟不是每个开发人员都喜欢自己去开发维护一套用户管理系统的,有一个现成可以用的项目会方便很多。

8.总结

通过对两个开源项目的比较,不知道大家是不是了然了。从我个人的角度来说,不管黑猫白猫,能抓住老鼠就是好猫,看需求!

我个人的选择建议:

1.如果你是做CMS类的项目,那么首选OneThink,这个毫无疑问,毕竟OC,还没有这方面的模块扩展,而从OneThink中再整合这个部分,可谓难度不小。

2.如果你是做一些需要用户系统,并且用户交互比较多的新项目,那么选OC吧,OC的存在,无疑会让你如虎添翼,节省下大量的开发时间。

期待

通过两个开源项目的比较,很显然,OC目前尚达不到银弹的程度,但最近我发现OC在开源中国OSC@GitPHP类目排名是第一名,无疑也是给了开发者一个不错的选择。

留在本文最后,容我发表一下自己对OC未来发展的期望。模块化的系统构建理念不错,如果OC的开发团队能够重视开发者,给开发者提供更多的支持,相信会有越来越多的php开发者采用OC,同时也希望用过OC的开发者能够积极分享功能扩展,这样OC才能够越走越远。

&相关资料:

&OneThink:项目主页www.onethink.cn项目源码库:http://git.oschina.net/liu21st/onethink

&OpenCenter:项目主页www.ocenter.cn在线演示demo.ocenter.cn 项目源码库:http://git.oschina.net/yhtt2020/OpenCenter

更多精彩内容其他人还在看

网站分析工具 通过流量特点来分析网站

使用一些网站分析工具的时候会发现一般报表会被分成三大模块:用户访问、内容浏览和流量来源。
收藏 0 赞 0 分享

提高博客阅读体验的六个方法说明

博客的阅读体验有很多方面,如果您要建立一个受欢迎的博客,那么,你可能要善待你的读者,提高阅读体验,这样会提高他们再次访问你博客的机会,让他们成为你的博客或网站的常客之一,当然你的网站如果可以注册的话,还可以成为你的注册用户之一,下面我就提供较为实用的
收藏 0 赞 0 分享

让网站上的Adsense广告匹配的更加精准的方法

大家都知道做AdSense 广告的话,网站内容与广告内容匹配程度是很关键的,而Google广告内容又是以网页本身的关键词所觉得,那么如何让网页中出现匹配度最高的Adsense 广告呢?
收藏 0 赞 0 分享

Favicon 在线生成器工具小结

favicon 就是出现在浏览器地址栏左侧的那个小图标。所谓favicon,即Favorites Icon的缩写,中文名称是网站头像,顾名思义,便是其可以让浏览器的收藏夹中除显示相应的标题外,还以图标的方式区别不同的网站。
收藏 0 赞 0 分享

网站备案注销方法 关于网站备案问题的解答

关于网站备案问题的解答 如何注销网站备案
收藏 0 赞 0 分享

一家大型行业网站的编辑的职场真实经历分享

想了很久,终于把干了8个月的网络编辑工作给辞掉了。如今静下心来,把8个月来的思绪给缕一下,也给向往这个职业的朋友们些参考。
收藏 0 赞 0 分享

转化率最高的10个网站的经验分享

之前分享过如何提升网站转化率之:谷歌9条和AIDAS模型,这篇文章直接提到了国外网站转化率最高的10个网站他们是如何有效提升转化率的
收藏 0 赞 0 分享

地方门户型网站运营与发展经验的几点总结

地方门户网站获得发展,还需要和当地的实际情况结合起来,不断的尝试和多方的合作,这样就可以在当地将网站打开知名度,同时使门户网站的营运获得很大的发展。
收藏 0 赞 0 分享

地方类网站的建立(从零起步)

只是个人见解和参考前辈的经验,希望对你有所帮助,难免有错误观点和见解,请您及时告知与我,共同成长,共同进步。最后分享一句话:“认准了,就去做;不跟风,不动摇”。
收藏 0 赞 0 分享

博客网站的运营和推广四步基本经验

网站运营经验:博客网站的运营和推广四步走.
收藏 0 赞 0 分享
查看更多