科技信息博士·专家论坛
防霉片1.什么是二次开发
二次开发,简单的说就是在现有的软件上进行定制修改、功能的扩展,然后达到自己想要的功能,一般来说都不会改变原有系统的内核。一般的来说,一些大公司如IBM开发了一个大型的软件系统平台,根据不同的客户的需要,一些其他的中小公司为根据客户需求在该平台上进行第二次有针对性的开发。是否提供相应的接口,有的软件公司只提供软件,但也有小公司连代码一起出售,如是后者,就更方便进行二次开发。比如售票系统,车站里面弄好了,提供几个储存过程给银行,银行就可以代理售票了,这也是一种,还有一种如我们利用delphi, C#等操作word等。 1.1二次开发的基本要求
一般进行软件的二次开发,需要掌握以下基本要求:
第二,要对这个开源产品的功能和使用比较熟悉,因为你熟悉了,你才知道一个需求下来,你要改什么,什么是系统自带的,大概要怎么改。
压铸机料筒的设计第三,要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录的熟悉。如果是用接口式的二次开发,则需要你对这个接口比较熟悉,一般来说会有相应的文档。
第四,根据你的需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到你的需求。
第五,对其提供的SDK中的API函数有一定了解,以利于你对SDK 中个函数的使用更加灵活方便。
1.2使用PHP的开源产品的二次开发的基本要求
第一,基本要求:HTML(必须要非常熟悉),PHP(能看懂代码,能写一些小系统,如:留言板,小型CMS),Mysql(至少会一种数据库),Javas-cript(能看懂,能改现成的一些代码),Div+Css(能进行界面的调整,明白CSS是怎么使用的),也就是说,要懂得网页开发的一些基本知识。
第二,熟悉开源产品的使用,比如Dedecms,你要知道怎么登录,怎么新建栏目,怎么添加文章,模板标签的使用方法,模型的概念和使用方法等等一些功能。当然,想了解这些,只需要在上,到并下载相关的文档,仔细学习文档,了解开源产品的使用。
第三,要熟悉这个开源产品的数据库结构,还要理解里面核心文件的内容,比如:数据库类怎么使用,常用的安全过滤是怎么做的,模板引擎又是怎么使用的等等一些核心内容。还要知道这个开源产
品的目录结构,就是说,你要知道哪是放模板的,哪里是做控制的,哪里是放样式的。在ECSHOP中所使用的数据库是MySQL,要学会使用。
第四,熟悉你的需求,对需求进行解读,然后确定如何对这个开源产品进行修改和扩展。
第五,PHP中的一个通用性很强的模板Smarty在PHP的相关开源产品中得到了很大的应用,如,ECSHOP中就使用了Smarty的模板引擎。
2.ECSHOP系统的特点
二维码访客系统在PHP中,现在流行的开源的二次开发软件很多,譬如,PHPWind,分商业版和免费版,但在功能和版本上没有区别,软件全面开源并且免费。版本现已有累积超过60万的用户;电子商务系统如ECSHOP,是一款B2C独立网店系统,适合企业及个人快速构建个性化网上商店。系统是基于PHP语言及MYSQL数据库构架开发的跨平台开源程序,由于开源程序面向多用户,所以它的弹性好,随之而来的就是它的结构体系复杂,代码量巨大,一个开源系统往往是页面套页面,几百个页面,每个页面少则几百,多则几千行代码,所以也经常有不少的程序员在报怨公司为什么要做二次开发,其实,一款二次开发的软件有很多需要我们学习的地方,有那么大的市场份额,也说明它有很多的优点。简单的说,有如下几点:
(1)是一款开源的网上商店系统。
(2)操作简便,只需轻点鼠标+简单录入即可完成商城管理。
感应式冲洗阀(3)在系统架构、数据库、程序等方面都经过精心设计,保证了系统的健壮和效率。
ECSHOP系统已经有不少的成功案例,比如,NOKIA的,MOTOROLA摩托罗拉的,海尔商城等,ECSHOP在市场上的应用很广,不是使用ECSHOP建立的电子商务网站都可以使用ECSHOP 进行开发。
3.ECSHOP案例
现在电子商务发展非常的迅速,有很多的电子商务网站营运而生,一个很小的团队想开发出一个很强大的购物网站将需要付出很多的时间和精力。淘宝网就是一个很成功的购物网站,以下实现修改EC-SHOP商品页,加入购物车弹出浮动层,仿淘宝效果,对一些电子商务的购物网站美化效果。
下面以ECSHOP的二次开发为例,介绍一下如何使用ECSHOP进行软件开发。
ECSHOP版本:ECShop_V2.7.2铜制品制作
二次开发的功能:修改ECSHOP商品页,加入购物车弹出浮动层,仿淘宝效果在ECSHOP商品详情页点“加入购物车”,直接在当前页弹出一个漂亮的小窗口,此方法比较简单,不需要修改PHP程序,也不需要在ECSHOP模板页预设隐藏层,主要是修改JS文件。
1)首先将需要用得到的图片下载到你网站的/data/images/下面,注意,保存图片的时候不要重命名,要用原来的名字直接保存。
2)以下修改以官方默认模板为例,打开ECSHOP模板文件/themes/ default/goods.dwt
将<li class="padd"><a href="javascript:addToCart({$ds_id}) "><img src="images/bnt_cat.gif"/></a>修改为<li class="padd"id="gwc"><a href="javascript:addToCart({$ds_id}) "><img src="images/bnt_cat.gif"/></a>
3)下面修改ECSHOP语言包文件,打开/languages/zh_cn/common. php
到$_LANG['cart_info']将它的值修改为购物车共%d件商品,总计%s修改后是这个样子$_LANG['cart_info']='购物车共%d件商品,总计%s';
4)打开/js/common.js到所示代码Case‘1’
:If(ssage))location.href=cart_url;Break;Case‘2’
:if(ssage))location.href=cart_url;Case‘3’
:location.href=cart.url;并修改为Case‘1’
:If(ssage))location.href=cart_url;openDiv_ECSHOP t);Break;Case‘2’
:if(ssage))location.href=cart_url;openDiv_ECSHOP t);Case‘3’:openDiv_t);
5)修改/js/common.js文件,在文件的最末尾增加如下两段代码夫妻草
//关闭图层
function cancel_div_ECSHOP120(){ElementByid (‘gwc’).removeChile(docile(‘speDiv’));vari=0;var sel_-tElementsByTagName(‘select’);while(sel_boj[i]){sel_boj[i].style.visibility=’visible’;i++;}}
4.结束语
其实,进行二次开发不难,不需要把二次开发的软件完全阅读个遍,只需要读懂整个二次开发软件的局部,甚至是一个页面中的某一行,到文件,通过Dreamweaver、记事本等工具的查都可快速的到,对其修改即可。在对ECSHOP进行开发的时候,可以进行页面的新建,添加你所使用的任何功能。
经过二次开发后,能完成你所需要的需求,积累丰富经验,做软件开发的经验有自己的,也有别人的。所谓别人的,就是在做这个软件的二次开发的时候,能吸收到这个软件系统的精华,然后把这个精华融入到自己的思想里,还能总结项目架构的经验,供自己以后使用。有句话说的好,就是:聪明的人会把别人失败的经验当作自己的经验,而傻的人就是自己无数次体验失败后才作为自己的经验。二次开发不仅仅是开发、提高我们做软件开发的能力,而更重要的是吸取精华,总结经验,理顺思路,少走弯路,提升自己。
21世纪的今天,计算机软件技术正在快速迅猛的发展,公司为了在市场上求得更巨大的商业利益,不少软件都提供开源,而且完全免费,功能上比大多数非开源的软件功能还要强很多,为什么我们不去用呢?
参考文献
[1]刘光.地理信息系统二次开发实例教程.北京:清华大学出版社, 2004
[2]刘言松.AutoCAD2009中文版二次开发实例教程.北京:化学工业出版社,2009
基于PHP技术的ECSHOP的二次开发
芜湖信息技术职业学院软件工程系殷佳庭陆婷婷
[摘要]目前,在市场上流行的计算机编程语言有很多,其中PHP的市场份额很大,在最新的一期的编程语言排名中,PHP排在第5位,用PHP开发一个大型的电子商务的购物网站将会消耗大量的时间和精力,为了克服这些困难,不少公司推出了自己的开源产品,便于进行二次开发,比如购物类的网站ECSHOP,对它的功能进行定制和扩展,就能在较短的时间内开发出产品。本文简要介绍基于PHP技术的ECSHOP的二次开发。
[关键词]二次开发开源电子商务Smarty ECSHOP
基金项目:本文系2010年安徽省高校省级质量教学研究项目《基于校企合作的动漫设计与制作专业课程体系的建设和研究》,项目编号:20101296。
—
—29