SDK和IDE的区别

27

我有一点困惑这两个术语,有人可以解释一下它们的区别吗?例如Eclipse是一个IDE,我可以在里面编辑、调试、编译我的程序,但我也可以用SDK做同样的事情,我错了吗?先谢谢。


6
我认为唯一的相似之处就是字母 **'D'**。 - BlueRaja - Danny Pflughoeft
3
为什么这个问题被投票为“不构建性”的,我真的不理解。解释关闭原因会是一个好主意。 - samprat
3个回答

45

软件开发工具包(SDK)通常只包括开发应用程序所需的必要构建块。这包括框架、库、头文件,以及编译器、调试器和各种其他工具,例如分析器等。

集成开发环境(IDE)只是使这些构建块更易于使用(或集成),因此得名。然而,例如Eclipse也带有自己的编译器。

无论如何,IDE允许您从单个环境开发应用程序,可以是Emacs、Visual Studio或Eclipse。如果您只有一个SDK,则需要使用文本编辑器编写程序,使用编译器进行编译(而不是按F\d+键),使用通常具有笨重文本界面的调试器进行调试,等等。


1
以下是关于编程的内容,请将其翻译成中文。请仅返回翻译后的文本:+1为简明、人性化、友好的描述 - Jon Smock
Rössel:请问您能推荐一下吗?我刚刚完成了C++课程,想要编写一些带有图形窗口的程序来训练我的技能。您可以推荐哪个SDK给我?Qt足够好吗? - helloWorld
@helloWorld:我没有C++的经验。 - Joey
@Joey,我的Eclipse IDE自带SDK吗? - Kraken

6

SDK代表软件开发工具包,是执行上述任务的工具。IDE代表集成开发环境,是访问SDK工具及其他功能的图形用户界面(功能有所不同)。


6
一个SDK包含DLL库、编译器和其他工具,可以将源代码编译成可执行程序(或中间字节码以在JVM或.NET上运行)。您可以使用任何文本编辑器编写源代码,并使用SDK从所有文本文件构建程序。
一个IDE集成了所有这些SDK功能,包括编译器,以GUI菜单的形式使访问所有这些功能更容易,开发软件也更容易。它为您创建构建脚本,使项目管理更加容易。我的最爱是它允许您通过逐行调试代码来进行调试。
Visual Studio、Eclipse、NetBeans是IDE的示例。.NET Framework 4.0和Swing应用程序框架是SDK的示例。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接