赛微电子百科 >>所属分类 >> 嵌入式系统    开发工具   

SDK

标签: SDK 软件开发 软件开发工具包

顶[0] 发表评论(0) 编辑词条
SDK(Software Development Kit, 即软件开发工具包 )一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
目录

SDK简介编辑本段回目录

  SDK,Software Development Kit 的缩写,中文即“软件开发工具包”。广义上指辅助开发某一类软件的相关文档、范例和工具的集合。   

  SDK是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发 Windows 平台下的应用程序所使用的SDK。它可以简单的为某个程序设计语言提供应用程序接口 API 的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。SDK 还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。   

  为了鼓励开发者使用其系统或者语言,许多 SDK 是免费提供的。软件工程师通常从目标系统开发者那里获得软件开发包,也可以直接从互联网下载,有时也被作为营销手段。例如,营销公司会免费提供构件SDK 以鼓励人们使用它,从而会吸引更多人由于能免费为其编程而购买其构件。   

  SDK 可能附带了使其不能在不兼容的许可证下开发软件的许可证。例如产品供应商提供一个专有的SDK可能与自由软件开发抵触。GPL能使SDK与专有软件开发近乎不兼容。LGPL下的SDK则没有这个问题。

软件开发工具编辑本段回目录

  指的是很方便地把一种编程语言代码化并编译执行的工具。其中主要的语言开发工具有几大类:java开发工具、。net开发工具、delphi开发工具等.   

软件开发工具的分类

  

基于工作阶段的工具   

  基于各个阶段对信息的需求不同,软件开发工具可分为三类:设计工具、分析工具、计划工具。   

  设计工具是最具体的,它是指在实现阶段对人们提供帮助的工具。例如各种代码生成器、一般所说的*语言和帮助人们进行测试的工具(包括提供测试环境或测试数据)等,都属于设计工具之列。它是最直接的帮助人们编写与调试软件的工具。   

  分析工具主要是指用于支持需求分析的工具,例如,帮助人们编写数据字典的、专用的数据字典管理系统帮助人们绘制数据流程图的专用工具,帮助人们画系统结构图或ER图的工具等。他们不是直接帮助开发人员编写程序,而是帮助人们认识与表述信息需求与信息流程,从逻辑上明确软件的功能与要求。

  计划工具则是从更宏观的角度去看待软件开发。它不仅从项目管理的角度帮助人们组织与实施项目,把有关进度、资源、质量、验收情况等信息有条不紊地管理起来,而且考虑到了项目的反复循环、版本更新、实现了跨生命周期的信息管理与共享,为信息以及软件的复用创造了条件。   

基于集成程度划分的工具   

  集成化程度是用户接口一致性和信息共享的程度,是一个新的发展阶段。集成化的软件开发工具要求人们对于软件开发过程有更深入的认识和了解。开发与应用集成化的软件开发工具是应当努力研究与探索的课题,集成化的软件开发工具也常称为软件工作环境。   

基于硬件、软件的关系划分的工具   

  按与硬件和软件的关系,软件开发工具可以分为两类:依赖于特定计算机或特定软件(如某种数据库管理系统)和独立于硬件与其它软件的软件开发工具。一般来说,设计工具多是依赖于特定软件的,因为它生成的代码或测试数据不是抽象的,而是具体的某一种语言的代码或该语言所要求的格式的数据。而分析工具与计划工具则往往是独立于机器与软件的,集成化的软件开发工具常常是依赖于机器与软件的。   

基于应用领域划分的工具   

  照应用领域的不同,应用软件可以分为事务处理、实时应用、嵌入式应用等。随着个人计算机与人工智能的发展,与这两个方面相联系的应用软件,也取得较大的进展。

相关背景 编辑本段回目录

  指的是很方便地把一种编程语言代码化并编译执行的工具。其中主要的语言开发工具有几大类:java开发工具、。net开发工具、delphi开发工具等.   
API
  API(Application Programming Inte*ce)其实就是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的 API 而使操作系统去执行应用程序的命令(动作)。其实早在 DOS 时代就有 API 的概念,只不过那个时候的 API

  是以中断调用的形式(INT 21h)提供的,在 DOS 下跑的应用程序都直接或间接的通过中断调用来使用操作系统功能,比如将 AH 置为 30h 后调用 INT 21h 就可以得到 DOS 操作系统的版本号。而在 Windows 中,系统 API 是以函数调用的方式提供的。同样是取得操作系统的版本号,在 Windows 中你所要做的就是调用 GetVersionEx() 函数。   

  可以这么说,DOS API 是“Thinking in 汇编语言”的,而 Windows API 则是“Thinking in 高级语言”的。   

  DOS API 是系统程序的一部分,他们与系统一同被载入内存并且可以通过中断矢量表找到他们的入口,那么 Windows API 呢?要说明白这个问题就不得不引入我们下面要介绍得这个概念——DLL。

DLL
  
  DLL,即 Dynamic Link Library(动态链接库)。在windows环境下含有大量 .dll 格式的文件,这些文件就是动态链接库文件,其实也是一种可执行文件格式。跟 .exe 文件不同的是,.dll 文件不能直接执行,他们通常由 .exe 在执行时装入,内含有一些资源以及可执行代码等。其实 Windows 的三大模块就是以 DLL 的形式提供的(Kernel32.dll,User32.dll,GDI32.dll),里面就含有了 API 函数的执行代码。为了使用 DLL 中的 API 函数, 必须要有 API 函数的声明(.H)和其导入库(.LIB),导入库可以先这样理解:导入库是为了在 DLL 中找到 API 的入口点而使用的。   

  为了使用 API 函数,我们就要有跟 API 所对应的 .H 和 .LIB 文件,而 SDK 正是提供了一整套开发 Windows 应用程序所需的相关文件、范例和工具的“工具包”。   

  SDK 包含了使用 API 的必需资料,所以人们也常把仅使用 API 来编写 Windows 应用程序的开发方式叫做“SDK 编程”。而 API 和 SDK 是开发 Windows 应用程序所必需的东西,所以其它编程框架和类库都是建立在它们之上的,比如 VCL 和 MFC,虽然他们比起“SDK 编程”来有着更高的抽象度,但这丝毫不妨碍它们在需要的时候随时直接调用 API 函数 。
参考资料
[1].  软件开发工具   http://baike.baidu.com/view/973702.html
[2].  SDK简介   http://baike.baidu.com/view/429424.htm

附件列表


→如果您认为本词条还有待完善,请 编辑词条

上一篇NTFS-3G下一篇Empress数据库

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
0

收藏到:  

词条信息

水果篮子
水果篮子
赛微团队
词条创建者 发短消息   

相关词条