软件的二次开发是指支持软件二次开发的原软件系统都提供相应的SDK(Softwaredevelopkit)。二次开发人员可以根据SDK中提供的公开的API(应用程序接口)来访问软件原有的一些基本功能,并根据这些基本功能组合,扩展进而形成更加专业或新的功能以完成用户特殊的需求。
对已有软件产品的功能进行扩充或根据特殊需要组合扩展功能等。
扩展资料:
软件二次开发的条件:
1、要有这个开源产品的所用语言的语言基础。
2、要对这个开源产品的功能和使用要有比较熟悉,因为熟悉了,才知道一个需求下来,要改什么,什么是系统自带的,大概要怎么改。
3、要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录的熟悉。如果是用接口式的二次开发,则需要对这个接口比较熟悉,一般来说会有相应的文档。
4、根据需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到需求。
5、对其提供的SDK中的API函数有一定了解,以利于对SDK中个函数的使用更加灵活方便。
参考资料来源:
百度百科-软件二次开发
百度百科-二次开发
二次开发是相对于底层开发而言的。底层开发:所谓的底层开发是指通过计算机编程语言,在不基于(利用)其它平台软件的情况下
实现新的算法、模块,以及一款独立的新的平台软件。由于底层开发不基于别人的软
件平台,有很强的独立性;同时开发者可以从底层算法的基础上实现,各种功能的
优化和突破。具有很强的独立性和灵活性。但是由于是底层开发一切都要重头做起,
难度相当大,软件开发的周期相当长,同时为了更好地追求速度和可移植性多采用
较为低级的语言如:C++。而不提倡采用C#,Java等。
二次开发:所谓的二次开发是指通过计算机编程语言,在基于(利用)其它平台软件的情况下,
实现各种符合自主需要的新的模块、以及新的软件。由于二次开发是基于别人的平台
下开发出来的,注定了它不能脱离自己开发所依据的平台软件或者是该平台所发布的
运行时;同时很难或者说无法再算法和功能上实现新的突破。具有很强的依赖性和局
限性。但是由于是二次开发,许多困难的底层算法部分已经被制作成各个模块,可方
便开发人员随时调用,开发起来方便快捷,大大缩短了软件开发的周期。多采用的
开发语言为:C#、VB、Java等。
简单来说:底层开发是中国创造,二次开发是中国制造,其中的技术含量可想而知!
二次开发有哪些:那就得看你要对什么东西进行二次开发了。要是对AutoCAD进行二次开发那就
是AutoCAD二次开发;对ArcGIS进行二次开发那就是ArcGIS二次开发。以此类
推。可以说有多少可以依据的平台软件就可以有多少中二次开发。
怎么学:一、看你想在哪一方面发展了,例如:如果你想在GIS行业发展肯定要会一款GIS的二次
开发,而GIS平台软件也多种多样,如:ArcGIS、MapGIS、SuperMap等等,你可
以选一款市场前景大的平台软件进行二次开发(首推:ArcGIS)。
二、二次开发也是软件开发,只要你有过强的计算机语言功底和开发思想,一切问题
都会迎刃而解。要知道一通百通的道理。有过强的计算机语言功底和开发思想才是
成功的王道!
为什么要二次开发?
随着信息化技术的不断发展,IT行业涌现出了一系列优秀的开源作品,其作者或是个人,或是项目小组,或是软件公司。选择和应用这些优秀的开源软件,并在此基础上进行符合业务需求的二次开发,将给企业节省信息化成本(时间成本及开发成本)的同时,更能带来技术上的保障。这就是我们常听的:站在巨人的肩膀上,你将看的更远。所以国内很多公司需要二次开发的人才。
怎么做二次开发?
第一,你要有这个开源产品的所用语言的语言基础。
第二,你要对这个开源产品的功能和使用要有比较熟悉,因为你熟悉了,你才知道一个需求下来,你要改什么,什么是系统自带的,大概要怎么改。
第三,你要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录的熟悉。如果是用接口式的二次开发,则需要你对这个接口比较熟悉,一般来说会有相应的文档。
第四,根据你的需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到你的需求。
第五,对其提供的SDK中的API函数有一定了解,以利于你对SDK中个函数的使用更加灵活方便。
产品的二次开发的基本要求:
第一, 基本要求:HTML(必须要非常熟悉),PHP(能看懂代码,能写一些小系统,如:留言板,小型CMS),Mysql(至少会一种数据库),Javascript(能看懂,能改现成的一些代码),Div+Css(能进行界面的调整,明白CSS是怎么使用的)
第二, 熟悉开源产品的使用,比如 Dedecms,你要知道怎么登录,怎么新建栏目,怎么添加文章,模板标签的使用方法,模型的概念和使用方法等等一些功能
第三, 要熟悉这个开源产品的数据库结构,还要理解里面核心文件的内容,比如:数据库类怎么使用,常用的安全过滤是怎么做的,模板引擎又是怎么使用的等等一些核心内容。还要知道这个开源产品的目录结构,就是说,你要知道哪是放模板的,哪里是做控制的,哪里是放样式的,等等
第四, 熟悉你的需求,对需求进行解读,然后确定如何对这个开源产品进行修改和扩展。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)