开源动态   

推荐php开发利器 快速创建web应用

时间:2013-01-22 17:09:00

推荐php开发利器 快速创建web应用

引文
近日美国“开源软件”项目Openbiz新发布了一款名为Openbiz Cubi Dev的PHP的应用开发利器,宣称可以让开发人员在3分钟内通过配置和向导完成创建一个功能完善的企业级应用程序。这是空穴来风 还是 锋芒毕露,让我们拭目以待。
 
上手体验:与 Openbiz的第一次接触
笔者下载了开发安装包后,发现它提供了一个可以在Windows下运行的自动部署工具。跟着官方提供的安装视频教程,很方便就安装在了本地。进入我本机的运行环境,是进一步的数据库配置向导和初始化系统向导。给人的第一感觉就是界面风格很清新完全不象以往开源软件“不堪入目”的样子,倒是感觉更像一个成熟的商业软件的风格。
 

 
登陆后根据提示看到了一个功能丰富的管理面板,包括用户、角色、组这些基础的系统元素,也就是说如果我基于Openbiz Cubi开发程序,那么如何进行用户权限划分和会话管理都完全不需要我在重新考虑,直接在已经完善的系统架构之上去开发我关系的应用程序就可以了,这个管理面板还提供了很多高级功能的设置,比如缓存、自动备份、安全防火墙、多语言翻译、主题切换。还有最近比较热门的社交登陆、支付集成、短信发送这些模块。
 

 
这里值得一提的是正如Openbiz官方宣传的那样,这次主要是面对中国大陆用户做了优化,我们可以在所社交网络列表中看到 新浪微博、腾讯、淘宝、支付宝的影子,还有支付宝的付款集成,以及多家国内的短信网关服务商。

 
在进行进一步初始化设置的时候,我们还可以看到厂商精心设计的方便实用的这个“新手向导”,除了能很方便能让我这样的操作人员摸清楚门路,同时我自己开发的新的应用程序也可以重用这个功能来给用户提供入门向导,这样将可以减轻很多售后的服务工作。
 
也许你觉得我什么还都没做,但是是实际上我的开发工作已经完成了30%, 对!因为用户管理、角色管理这些功能都已经有了。简单设置一下默认的属性,我们就已经将这些可重用的功能设置为我需要的模式。
 
小试牛刀:用它做一个资料管理系统吧
现在让我们来看一下这个开发环境真正的开发工具,传说中的利器登场。
就是直到11月才发布出来的 Openbiz Appbuilder 2.0 。
 

 
看起来很酷吧!它主要包括了 新应用创建向导、模块连接向导 和 元数据可视化编辑器。让我们跟着应用创建向导试手操作了一下,首先看到的是漂亮有趣的欢迎界面如下图所示。
 

 
点击“下一步”,跟着向导逐步输入选择要要使用的信息,包括使用哪个数据库、哪个表、创建哪些字段,启用哪些高级特性。这里我们选择了一个我事先创建好的数据表,里面包括了我的资料系统所需要的所有字段,比如 性别、年龄、学籍等信息。在Appbuilder的新应用向导里面里分别为他们填写的描述以及信息分组等。

然后设置是否为这些资料启用一些高级特性。比如为每条资料添加附件、图片等特性,并且为资料启用了分类管理,允许为每一种分类设置设置不同的自定义扩展字段。如下图所示。

然后继续下一步,完成!
 
没错,我的要的程序开发完了,没有敲一行代码,难以置信的方式。似乎所有的开发工作都集中在思考这个数据表结构 和 实现一些除了“增删改查”以外的高级功能特性上,比如,当创建一条资料后 自动发送邮件或者短信通知,这时候才需要写几行代码。
 
这些自动生成出来的代码和我们预想的不同,生成出来并不是PHP的源代码。而是90%以上的XML文件。这些XML文件仅描述了数据影射关系和业务逻辑关系,但完全不包含业务逻辑的实现代码。这应该就是Openbiz所提出的元数据的编程思想。
 
这样的好处是如果当我们日后需要对程序进行维护或改动的时候,例如添加一些字段,我们并不需要去象以前那样去修改大量的程序源代码,而只需要更新一下这些简单易懂的XML文件。
 
代码范例如下图所示

 
 
功能测试:这是一个见证奇迹的时刻
这个新生成出来的程序拥有一个默认的看起来也很清新的界面,整体操作界面可以说与Openbiz Cubi的主题风格容为一体,所有系统具备的高级特性 比如,列表页的数据导航、搜索的自动建议、动态按列排序结果 这些特性我们的新程序全都支持。如果不是接触过的Openbiz的人,一定会认为这是我花了几周 时间完成的精致细节。
 
介绍了这么多,到底这个自动生成出来的程序使用起来感觉如何,我们分别做了如下测试并的得到满意的结果:
l   创建一个资料条目
l   编辑一个资料条目,并为本次修改进行批注
l   删除一个和多个资料条目
l   为某个资料条目添加多个相关的图片
l   为某个资料条目添加多个相关的文件附件
l   将某个资料条目对某人隐藏不可见
l   将某个资料条目交由某人管理维护(只有他可以编辑,其他人只能看)
l   将某个资料条目交由某个部门管理维护(只有该部门的人可以编辑)
l   为某一条资料设置相关链的其它资料
 
哇,这就是我要做的资料管理软件!难以置信这么多功能的是在几下鼠标点击中自动创建出来的。最后,把它修改为属于“我的作品”,这也是我最喜欢的功能啦。 看下图:

 
替换Logo,替换页头,让他看起来就像是完全为这个应用程序制定的一样。这个功能实在是太友好啦,都不需要去修改底层的源文件,厂商直接就做出UI来让你修改。
 
剩下的事情,喝杯咖啡然后等着去和领导交差了。看看表,是不是真的不到3分钟的时间。或者说写完这个这个程序至少比写完这篇文章轻松的多啦。

 
此物大有来头
Openbiz 是一个发起于2003年的开源项目,这意味着如果你感觉哪里还不够好,直接修改源代码去完善,不用被底层的限制所拘束。这一点和使用其他商业框架比如 Java 和 .Net Framework 的感觉完全不同。并且历经9年的不断完善,相信它的内涵远不止我们所看到的这些表明皮毛。
 
由于篇幅有限不能将Openbiz Cubi Dev的所有特性向支持我们的读者逐一介绍,还有更多的功能和技巧等着你的探索。
 

 

来源:PHPchina

Notice: Constant RUNTIME already defined in /srv/html/srccn/news/config.php on line 15 Notice: Constant ROOTDIR already defined in /srv/html/srccn/news/config.php on line 16 Notice: Constant SITEDIR already defined in /srv/html/srccn/news/config.php on line 17 Notice: Constant DATAURL already defined in /srv/html/srccn/news/config.php on line 20 Notice: Constant VERSION already defined in /srv/html/srccn/news/system/kernel.php on line 17 Notice: Constant COREDIR already defined in /srv/html/srccn/news/system/kernel.php on line 18 Fatal error: require(): Cannot redeclare class mysql in /srv/html/srccn/news/system/kernel.php on line 22