“二次开发”是什么?有哪些?怎么学?

2024-05-19

1. “二次开发”是什么?有哪些?怎么学?

二次开发是相对于底层开发而言的。
底层开发:所谓的底层开发是指通过计算机编程语言,在不基于(利用)其它平台软件的情况下
          实现新的算法、模块,以及一款独立的新的平台软件。由于底层开发不基于别人的软
          件平台,有很强的独立性;同时开发者可以从底层算法的基础上实现,各种功能的
          优化和突破。具有很强的独立性和灵活性。但是由于是底层开发一切都要重头做起,
          难度相当大,软件开发的周期相当长,同时为了更好地追求速度和可移植性多采用
          较为低级的语言如:C++。而不提倡采用C#,Java等。
二次开发:所谓的二次开发是指通过计算机编程语言,在基于(利用)其它平台软件的情况下,
          实现各种符合自主需要的新的模块、以及新的软件。由于二次开发是基于别人的平台
          下开发出来的,注定了它不能脱离自己开发所依据的平台软件或者是该平台所发布的
          运行时;同时很难或者说无法再算法和功能上实现新的突破。具有很强的依赖性和局
          限性。但是由于是二次开发,许多困难的底层算法部分已经被制作成各个模块,可方
          便开发人员随时调用,开发起来方便快捷,大大缩短了软件开发的周期。多采用的
          开发语言为:C#、VB、Java等。

简单来说:底层开发是中国创造,二次开发是中国制造,其中的技术含量可想而知!

二次开发有哪些:那就得看你要对什么东西进行二次开发了。要是对AutoCAD进行二次开发那就
                是AutoCAD二次开发;对ArcGIS进行二次开发那就是ArcGIS二次开发。以此类
                推。可以说有多少可以依据的平台软件就可以有多少中二次开发。

怎么学:一、看你想在哪一方面发展了,例如:如果你想在GIS行业发展肯定要会一款GIS的二次
            开发,而GIS平台软件也多种多样,如:ArcGIS、MapGIS、SuperMap等等,你可
            以选一款市场前景大的平台软件进行二次开发(首推:ArcGIS)。
        二、二次开发也是软件开发,只要你有过强的计算机语言功底和开发思想,一切问题
            都会迎刃而解。要知道一通百通的道理。有过强的计算机语言功底和开发思想才是
            成功的王道!

“二次开发”是什么?有哪些?怎么学?

2. 二次开发是什么?有哪些呀?怎么学呀?

二次开发是相对于底层开发而言的。
底层开发:所谓的底层开发是指通过计算机编程语言,在不基于(利用)其它平台软件的情况下
          实现新的算法、模块,以及一款独立的新的平台软件。由于底层开发不基于别人的软
          件平台,有很强的独立性;同时开发者可以从底层算法的基础上实现,各种功能的
          优化和突破。具有很强的独立性和灵活性。但是由于是底层开发一切都要重头做起,
          难度相当大,软件开发的周期相当长,同时为了更好地追求速度和可移植性多采用
          较为低级的语言如:C++。而不提倡采用C#,Java等。
二次开发:所谓的二次开发是指通过计算机编程语言,在基于(利用)其它平台软件的情况下,
          实现各种符合自主需要的新的模块、以及新的软件。由于二次开发是基于别人的平台
          下开发出来的,注定了它不能脱离自己开发所依据的平台软件或者是该平台所发布的
          运行时;同时很难或者说无法再算法和功能上实现新的突破。具有很强的依赖性和局
          限性。但是由于是二次开发,许多困难的底层算法部分已经被制作成各个模块,可方
          便开发人员随时调用,开发起来方便快捷,大大缩短了软件开发的周期。多采用的
          开发语言为:C#、VB、Java等。

简单来说:底层开发是中国创造,二次开发是中国制造,其中的技术含量可想而知!

二次开发有哪些:那就得看你要对什么东西进行二次开发了。要是对AutoCAD进行二次开发那就
                是AutoCAD二次开发;对ArcGIS进行二次开发那就是ArcGIS二次开发。以此类
                推。可以说有多少可以依据的平台软件就可以有多少中二次开发。

怎么学:一、看你想在哪一方面发展了,例如:如果你想在GIS行业发展肯定要会一款GIS的二次
            开发,而GIS平台软件也多种多样,如:ArcGIS、MapGIS、SuperMap等等,你可
            以选一款市场前景大的平台软件进行二次开发(首推:ArcGIS)。
        二、二次开发也是软件开发,只要你有过强的计算机语言功底和开发思想,一切问题
            都会迎刃而解。要知道一通百通的道理。有过强的计算机语言功底和开发思想才是
            成功的王道!

3. 二次开发的举例

PRO/ENGINEER二次开发PRO/ENGINEER在提供强大的设计、分析、制造功能的同时,也为用户提供了多种二次开发工具。常用的二次开发工具有:族表(Family Table)、用户定义特征(UDF)、Pro/Program、J-link、Pro/toolkit等。1)族表(Family Table) 通过族表可以方便的管理具有相同或相近结构的零件,特别适用于标准零件的管理。族表通过建立通用零件为父零件,然后在其基础上对各参数加以控制生成派生零件。整个族表通过电子表格来管理,所以又被称为表格驱动。2)用户定义特征(UDF) 用户定义特征是将若干个系统特征融合为一个自定义特征,使用时作为一个整体出现。系统将UDF特征以gph文件保存。UDF适用特定产品中的特定结构,有利于设计者根据产品特征快速生成几何模型。3)Pro/ENGINEER软件对于每个模型都有一个主要设计步骤和参数列表―Pro/Program。它是由类似BASIC的高级语言构成的,用户可以根据设计需要来编辑该模型的Program,使其作为一个程序来工作。通过运行该程序,系统通过人机交互的方法来控制系统参数、特征出现与否和特征的具体尺寸等。4)J-link是PRO/ENGINEER中自带的基于JAVA语言的二次开发工具。用户通过JAVA编程实现在软件PRO/ENGINEER中添加功能。5)Pro/Toolkit同J-link一样也是Pro/E自带的二次开发工具,在Pro/Toolkit中,PTC向用户提供了大型的C语言函数库,函数采用面向对象的风格,通过调用这些底层函数,用户能方便而又安全地访问Pro/ENGINEER的数据库及内部应用程序,进行二次开发,扩展一些特定功能。6)基于VB API的二次开发过程,Pro/E Wildfire 4.0开始可以采用Visual Basic API,通过 Visual Basic NET应用程序和应用程序 (如 Microsoft Word、Excel 或 Access) 中的 Visual Basic 宏来进行二次开发。7)pro/web.link 这种方法使用的语言是javascript,以网页的形式来访问proe 模型一般情况下,采用比较多的是Pro/Toolkit,进行二次开发。Pro/Toolkit下的开发的程序有两种模式:同步模式(Synchronous Mode)和异步模式(Asynchronous Mode)。同步模式下,Pro/E根据注册文件中的信息启动应用程序,Pro/Toolkit应用程序和Pro/E产生各自的进程,程序的控制权在两个进程之间切换。该应用程序不能够独立于Pro/E而运行。在异步模式下,Pro/Toolkit应用程序和Pro/E能够进行各自的操作,在通信方面,异步模式使用远程调用(Remote Procedure Calls,RPC)方式,程序(含有独立主函数)能独立于Pro/E启动。由于异步模式采用远程调用,程序运行速度相比同步模式慢很多,整合性也不好,所以一般基于Pro/E的Toolkit开发采用同步模式。在同步模式下又有两种开发方式:动态链接库(DLL Mode)和多进程(Multiprocess 或Spawned Mode)。前者为的动态连接库文件,无自身主程序函数,直接连接于Pro/E进行程序调用。后者为.exe文件,有独立的主程序和Pro/E进行相连接。一般为了调试方便,开发程序时可以采用多进程模式,在程序完成时,采用动态连接库提高程序运行效率ecshop二次开发ECShop是一款B2C独立网店系统,适合企业及个人快速构建个性化网上商店。系统是基于PHP语言及MYSQL数据库构架开发的跨平台开源程序。目前最新版本为2.7.3。系统在实际使用过程中用户会有各种不同的需求,往往需要进行二次开发,针对这些需求 php服务中心专门建立ecshop二次开发部门,来解决用户以上问题,同时 php服务中心齐永东齐老师总结二次开发经验录制了大量ecshop二次开发视频并提供免费下载。

二次开发的举例

4. 什么是软件的二次开发?

软件的二次开发是指支持软件二次开发的原软件系统都提供相应的SDK(Softwaredevelopkit)。二次开发人员可以根据SDK中提供的公开的API(应用程序接口)来访问软件原有的一些基本功能,并根据这些基本功能组合,扩展进而形成更加专业或新的功能以完成用户特殊的需求。
对已有软件产品的功能进行扩充或根据特殊需要组合扩展功能等。
/iknow-pic.cdn.bcebos.com/ae51f3deb48f8c54eff6fa7b34292df5e0fe7fb8"target="_blank"title="点击查看大图"class="ikqb_img_alink">/iknow-pic.cdn.bcebos.com/ae51f3deb48f8c54eff6fa7b34292df5e0fe7fb8?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto"esrc="https://iknow-pic.cdn.bcebos.com/ae51f3deb48f8c54eff6fa7b34292df5e0fe7fb8"/>
扩展资料:
软件二次开发的条件:
1、要有这个开源产品的所用语言的语言基础。
2、要对这个开源产品的功能和使用要有比较熟悉,因为熟悉了,才知道一个需求下来,要改什么,什么是系统自带的,大概要怎么改。
3、要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录的熟悉。如果是用接口式的二次开发,则需要对这个接口比较熟悉,一般来说会有相应的文档。
4、根据需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到需求。
5、对其提供的SDK中的API函数有一定了解,以利于对SDK中个函数的使用更加灵活方便。
参考资料来源:
/baike.baidu.com/item/%E8%BD%AF%E4%BB%B6%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91/8954832"target="_blank"title="百度百科-软件二次开发">百度百科-软件二次开发
/baike.baidu.com/item/%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91/5819124?fr=aladdin"target="_blank"title="百度百科-二次开发">百度百科-二次开发

5. 什么是软件的二次开发

软件的二次开发是指支持软件二次开发的原软件系统都提供相应的SDK(Softwaredevelopkit)。二次开发人员可以根据SDK中提供的公开的API(应用程序接口)来访问软件原有的一些基本功能,并根据这些基本功能组合,扩展进而形成更加专业或新的功能以完成用户特殊的需求。
对已有软件产品的功能进行扩充或根据特殊需要组合扩展功能等。
/iknow-pic.cdn.bcebos.com/ae51f3deb48f8c54eff6fa7b34292df5e0fe7fb8"target="_blank"title="点击查看大图"class="ikqb_img_alink">/iknow-pic.cdn.bcebos.com/ae51f3deb48f8c54eff6fa7b34292df5e0fe7fb8?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto"esrc="https://iknow-pic.cdn.bcebos.com/ae51f3deb48f8c54eff6fa7b34292df5e0fe7fb8"/>
扩展资料:
软件二次开发的条件:
1、要有这个开源产品的所用语言的语言基础。
2、要对这个开源产品的功能和使用要有比较熟悉,因为熟悉了,才知道一个需求下来,要改什么,什么是系统自带的,大概要怎么改。
3、要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录的熟悉。如果是用接口式的二次开发,则需要对这个接口比较熟悉,一般来说会有相应的文档。
4、根据需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到需求。
5、对其提供的SDK中的API函数有一定了解,以利于对SDK中个函数的使用更加灵活方便。
参考资料来源:
/baike.baidu.com/item/%E8%BD%AF%E4%BB%B6%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91/8954832"target="_blank"title="百度百科-软件二次开发">百度百科-软件二次开发
/baike.baidu.com/item/%E4%BA%8C%E6%AC%A1%E5%BC%80%E5%8F%91/5819124?fr=aladdin"target="_blank"title="百度百科-二次开发">百度百科-二次开发

什么是软件的二次开发

6. 什么是软件的二次开发?

软件的二次开发是指支持软件二次开发的原软件系统都提供相应的SDK(Softwaredevelopkit)。二次开发人员可以根据SDK中提供的公开的API(应用程序接口)来访问软件原有的一些基本功能,并根据这些基本功能组合,扩展进而形成更加专业或新的功能以完成用户特殊的需求。
对已有软件产品的功能进行扩充或根据特殊需要组合扩展功能等。

扩展资料:
软件二次开发的条件:
1、要有这个开源产品的所用语言的语言基础。
2、要对这个开源产品的功能和使用要有比较熟悉,因为熟悉了,才知道一个需求下来,要改什么,什么是系统自带的,大概要怎么改。
3、要熟悉这个开源产品的数据结构,代码结构,系统的框架结构,核心是哪里,附属功能是在哪里。简单点说,就是数据库,代码逻辑,文件目录的熟悉。如果是用接口式的二次开发,则需要对这个接口比较熟悉,一般来说会有相应的文档。
4、根据需求,然后利用开源产品的内核,进行系统的扩展和修改,以达到需求。
5、对其提供的SDK中的API函数有一定了解,以利于对SDK中个函数的使用更加灵活方便。
参考资料来源:
百度百科-软件二次开发
百度百科-二次开发

7. 什么是软件的二次开发?

管理软件的二次开发就是在现有软件产品的基础上,针对客户的个性化需求进行的开发,一般是由软件产品的开发厂商进行,或由厂商提供二次开发接口和源码由第三方来进行。不同于完全的定制开发,二次开发不是从头开发,是在已有软件的基础上进行的。评估一个软件产品是否合格,二次开发接口的成熟、完善、是否容易是一个重要的标志。
现有的产品功能不能满足客户的需求,或需要和其他软件进行对接、实现数据的交换和传输等。二次开发一般会根据现有产品技术和设计情况,需要提供相关的接口或源码,同时需要了解个性化的功能和需求,综合进行设计和开发。
二次开发的工作量是由现有产品的功能与客户个性化需求的差异程度,接口的难易程度、系统的设计(如:模块之间耦合程度低)、产品的扩展性(是否适合于二次开发)等综合因素决定的。二、管理软件二次开发的优势
1、相对于完全的定制开发,二次开发的工作量小、时间短、风险低。
2、二次开发是在已有产品的基础上进行的,原有产品功能和业务的积累能够很好的被继承。
3、解决了单纯的产品化个性化需求不能满足的问题。三、管理软件二次开发存在的问题
二次开发存在问题总体上讲是和现有系统息息相关的,特别是软件系统的架构和设计、二次开发接口的难易程度。
1、二次开发最好是基于系统提供的接口进行开发,如果是直接针对源码修改开发,特别是在核心源码的基础上进行处理,不仅会导致已有功能出现新的错误和不稳定,厂商标准产品升级后不能直接进行覆盖升级需要重新整合,这种情况是灾难性的,很多用户不清楚问题的严重性,这也是很多软件厂商不愿意提供二次开发的原因之一。
2、现有产品需提供成熟和完善的系列接口,这是考察一个软件产品是否成熟和规范的重要指标之一,否则二次开发只能由原厂商进行,如果厂商的服务和支持不及时、不能提供良好的服务,后续的服务和开发无法进行。
不能进行二次开发导致现有系统不能深入的使用或只能替换,现有的投资和时间投入都付之东流。
3、不是所有的产品都能进行二次开发,没有成熟和规范的接口,系统设计和编码非常差的系统,二次开发的时间和成本要远远高于系统的替换和完全定制开发,这点也是至关重要、容易被忽略。

什么是软件的二次开发?

8. 找软件公司二次开发需要注意哪些事项

1、资金预算
众所周知,经济基础决定上层建筑。企业如果想找软件公司进行二次开发,那么资金预算肯定得首先考虑好。如今专业的技术人员进行开发,人工费用基本是几百块一天,再加上其他费用,这笔花销可真的不少,因此首先需要注意的事项无疑就是资金预算了。

2、重视需求沟通
找软件公司进行二次开发之前,需求沟通无疑是重要的一步。软件公司毕竟是属于第三方技术公司,对本企业并不了解,因此在进行二次开发之前务必得多沟通需求,多了解原来系统的构成等。

当然也并不是所有软件都支持二次开发,因此建议企业在找软件公司二次开发之前得确认自己的系统是否支持二次开发才行。
同时也建议企业在最初搭建或者购买系统时尽量选择能支持2次开发的系统,这样的话让你在后续的发展中拥有可扩展的空间与技术,能够省掉不少的资金与时间,提高工作效率。例如:百数搭建的任意系统,都支持二次开发。