标题：IDE
集成开发环境
IDE，即Integrated Development Environment，是“集成开发环境”的英文缩写，可以辅助开发程序的应用软件。
软件是用于程序开发环境的应用程序，一般包括代码编辑器、编译器、调试器和图形用户界面工具。就是集成了代码编写功能、分析功能、编译功能、debug功能等一体化的开发软件套。所有具备这一特性的软件或者软件套（组）都可以叫做IDE。如微软的VisualStudio系列，Borland的C++Builder,Delphi系列等。该程序可以独立运行，也可以和其它程序并用。例如，BASIC语言在微软办公软件中可以使用，可以在微软Word文档中编写WordBasic程序。IDE为用户使用VisualBasic、Java和PowerBuilder等现代编程语言提供了方便。不同的技术体系有不同的IDE。比如可以称为C++、VB、C# 易语言等语言的集成开发环境，所以可以叫做IDE。同样，Borland的JBuilder也是一个IDE，它是Java的IDE。zendstudio、editplus、ultraedit这些，每一个都具备基本的编码、调试功能，所以每一个都可以称作IDE。　
IDE多被用于开发HTML应用软件。例如，许多人在设计网站时使用IDE（如HomeSite、DreamWeaver、FrontPage，等等），因为很多项任务会自动生成。IDE集成代码编辑，代码生成，界面设计，调试，编译等功能，目前还融合了建模功能。
英文资料
Visual Studio Integrated Development Environment (IDE)[1]
When you start a new project in Visual Studio .NET, you will see a group of windows opened within the development environment (one possible layout is shown in Figure 3.4). The following subsections describe each of these windows.
Figure 3.4. Several windows will be open when you start a new Visual Studio .NET project.
Toolbox Window
The Toolbox window contains a list of controls or components that you can drag and drop onto your design surface. The Toolbox window contains several tabs that make different sets of components available, depending on the typeof designer active in the editor window (the window in the middle of the environment). If you are designing a Windows Form, you will get a specific set of tools that work with Windows Forms. If you are designing a Web Form, you will get a specific set of tools for working with Web Forms. 
If you are designing an XMLdocument, there will be other options you can choose. To view the Toolbox window, select View, Toolbox from the Visual Studio .NET menu bar. Figure 3.5 shows the Toolbox window displaying controls available on Windows Forms.
Figure 3.5. The Toolbox holds a list of controls.
TIP
In addition to providing the standard tools and tabs that Visual Studio .NET provides, you can add tabs, aswell as your own code snippets, to the Toolbox. Right-click the Toolbox window to add or delete tabs. You can drag code from the code editor onto the Toolbox, as well, for later use.
If you wish to customize the list of tools displayed in the Toolbox window, or if you wish to add any additional .NET components, ActiveX controls, or third-party controls, choose the Tools, Customize Toolbox menu item to display the Customize Toolbox dialog box, as shown in Figure 3.6 and Figure 3.7. Figure 3.6 shows a list of available COM components, and Figure 3.7 shows the available .NET Frameworkcomponents.
Figure 3.6. Customize Toolbox lets you add COM components to your Toolbox.
Figure 3.7. Use Customize Toolbox to choose which .NET Framework components 
are displayed in the Toolbox window.
Solution Explorer Window
In Visual Studio .NET, a solution is a set of one or more projects that are part of the same application. The Solution Explorer window shows you an expandable list of projects, each project's references, and each project's components. If this window is closed, you can open it by selecting the View, Solution Explorer menu item. Components may be made up of forms, classes, modules, and any other file types it takes to create your application. Double-click an item in order to edit that item within the IDE. Figure 3.8 shows the Solution Explorer window displaying the contents of a sample Windows application solution.
Figure 3.8. The Solution Explorer gives you a graphical representation of all the files that make up your project(s).
The Solution Explorer window displays a series of buttons across its top, and these buttons dynamically change based on the item you have selected in the Solution Explorer window. Table 3.3 describes some of these buttons, starting with the leftmost and proceeding right.
Table 3.3. Buttons on the Solution Explorer Window Button Description View Code Displays the code for the file that has focus in the Solution Explorer View Designer Displays the designer for the specific file that has focus in the Solution Explorer Refresh Refreshes the Solution Explorer Show All Files Displays all files associated with the project, including files normally hidden by Visual Studio Properties Displays the Properties window, which shows roperties for the selected file 
ClassView Window
When you start creating your own classes, you may want to see a list of all the properties and methods available in those classes. You can use the Class View window, as shown in Figure 3.9, to get an overview of these items. You can bring up this win-dow using the View, Class View menu item. 
Once the window is displayed, you can expand each item in the list to see the members of the class. If you choose any of these members, you can right-click and see a menu of actions that apply directly to the definition of that member. Double-click any of the members of the class to display a code window with the item definition displayed in the editor.
Figure 3.9. The Class View is an excellent way to view all the properties and methods of your classes.
Server Explorer Window
The Server Explorer window (accessed using the View, Server Explorer menu) allows you to view the various services available on a particular server. 
These services include Crystal Services (for working with Crystal Reports), Event Logs, Message Queues, Performance Counters, and SQL Servers.
For most of these services, you can drill downand see a list of existing items梐nd you can even add new items. You can drag and drop a service from the Server Explorer window, shown in Figure 3.10, onto a design surface so that you can interact with the element programmatically in your 
application. For example, you can drag a performance counter onto a Web Form and use that componentto interact with the counter. You could also drag a databasetable onto a page, and it will automatically create the necessary "plumbing" so that you can work with data from that table.
Figure 3.10. The Server Explorer window shows a list of servers, Windows services, databases, event logs, and more, available on your server or any server to which you can attach.
Properties Window
The Properties window provides a visual means of investigating and altering the properties of any objectwithin the Visual Studio .NET environment. You can display the Properties window using the View, Properties Window menu item. Once this window is visible, you can either view the list alphabetically or categorized by attribute. Some properties within this window can be selected from a list; others allow you to click a button that brings up a dialog box. Still others require you to supply text by typing into a text box. Figure 3.11 shows the Properties window.
Figure 3.11. The Properties window is where you will spend a lot of time.
Object Browser Window
Similar to the Class View window, the Object Browser window shows you a list of classes and their respective members. The main difference between these two tools is that the Object Browser allows you to browse all referenced components, not just the components for the current project like the Class View window does. A nice feature of the Object Browser is that it also shows you the full declaration for the method or property. Bring up the Object Browser by using the View, Other indows, Object Browser menu item. Figure 3.12 shows the Object Browser window in use.
Figure 3.12. The Object Browser shows you a complete list of all classes, properties, and methods in your project.
Task List Window
The Task List window displays, among other items, any To Do items that you have entered in your code. In addition, you'll see information about build errors in this window. Bring up the Task List window using the View, Other Windows, Task List menu item. You will then see a window in your design environment similar to the one shown in Figure 3.13. To add a new task, you can click where the window reads "Click here to add a new task," or you can add comments in a specific format right in your project code. The default comment that adds to the Task List looks like his:
'TODO: Write the RepeaterBind procedure here
Figure 3.13. Tasks can help you organize your thoughts on what needs to be done to complete your project.
Use TODO: after the comment mark (the apostrophe), and the Task List will display your comment. You can double-click a task in the Task List window to take you directly to the associated comment in your code.
TIP
You can create your own Task List items using the Tools, Options menu item. 
Within the Options dialog box, select Environment, Task List in the left pane. In the right pane, add new items. By default, Visual Studio .NET uses HACK, TODO, and UNDONE as Task List indicators. Add your own tag items to this list and click the Add button to make them available as tags that link comments in your code with the Task Li

概述
IDE的英文全称为“Integrated Drive Electronics”，即“电子集成驱动器”，或者叫“集成设备电路”。它的本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。IDE是一种磁盘驱动器接口类型，硬盘和光驱通过IDE接口与主板连接。控制器电路就驻留在驱动器中，不再需要单独的适配器卡。
IDE背后的基本思想是应该将硬盘驱动器和控制器组合在一起。控制器是载有芯片的小型电路板，这些芯片对硬盘驱动器如何正确存储和访问数据进行控制。大多数控制器还带有一些内存，它充当缓冲器以增强硬盘驱动器性能。 
对用户而言，硬盘安装起来也更为方便。IDE这一接口技术从诞生至今就一直在不断发展，性能也不断的提高，其拥有的价格低廉、兼容性强的特点，为其造就了其它类型硬盘无法替代的地位。
IDE代表着硬盘的一种类型，但在实际的应用中，人们也习惯用IDE来称呼最早出现IDE类型硬盘ATA-1，这种类型的接口随着接口技术的发展已经被淘汰了，而其后发展分支出更多类型的硬盘接口，比如ATA、UltraATA、DMA、UltraDMA等接口都属于IDE硬盘。
PIDE硬盘
PIDE硬盘的传输模式有以下三种：PIO(ProgrammedI/O)模式、DMA(DirectMemoryAccess)模式、UltraDMA(简称UDMA)模式。
PIO(ProgrammedI/O)模式的最大弊端是耗用极大量的CPU资源。以PIO模式运行的IDE接口，数据传输率达3.3MB/s(PIOmode0)-16.6MB/s(PIOmode4)不等。
PDMA(DirectMemoryAccess)模式分为Single-WordDMA及Multi-WordDMA两种。Single-WordDMA模式的最高传输率达8.33MB/s，Multi-WordDMA(DoubleWord)则可达16.66MB/s。
PDMA模式同PIO模式的最大区别是:DMA模式并不用过分依赖CPU的指令而运行，可达到节省处理器运行资源的效果。但由于UltraDMA模式
的出现和快速普及，这两个模式立即被UDMA所取代。
PUltraDM模式(简称UDMA)是UltraATA制式下所引用的一个标准，以16-bitMulti-WordDMA模式作为基准。UDMA其中一个优点是它除了拥有DMA模式的优点外，更应用了CRC(CyclicRedundancyCheck)技术，加强了资料在传送过程中侦错及除错方面的效能。
P自UltraATA标准推行以来，其接口便应用了DDR(DoubleDataRate)技术将传输的速度提升了一倍，目前已发展到UltraATA/100了，其传输速度高达100MB/s。
工作原理
无论你用计算机做什么，存储系统都是整个系统的一个重要组成部分。实际上，大多数个人电脑都有一个或者多个诸如硬盘、CD-ROM、DVD刻录机以及早期像软驱这类存储装置。
通常情况下，这些设备都是通过IDE（集成设备电路IntegratedDeviceElectronics的英文缩写）接口与电脑相连的，IDE接口是用来连接存储设备和计算机的标准方式。其实“IDE”并不是这项接口技术的真正名称，最初人们管这种接口技术称为“ATAttachment”，即AdvancedTechnologyAttachment，也就是我们常说的ATA接口了，它最初是发展于IBM的“AdvancedTechnologyPC”。

简介
IDE=Integrated-Drive-Electronics）是原来普遍使用的外部接口，主要接硬盘和光驱。采用16位数据并行传送方式，体积小，数据传输快。一个IDE接口只能接两个外部设备。 
IDE的英文全称为“Integrated Drive Electronics”，即“电子集成驱动器”，它的本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。把盘体与控制器集成在一起的做法减少了硬盘接口的电缆数目与长度，数据传输的可靠性得到了增强，硬盘制造起来变得更容易，因为硬盘生产厂商不需要再担心自己的硬盘是否与其它厂商生产的控制器兼容。对用户而言，硬盘安装起来也更为方便。IDE这一接口技术从诞生至今就一直在不断发展，性能也不断的提高，其拥有的价格低廉、兼容性强的特点，为其造就了其它类型硬盘无法替代的地位。
发展过程
早期的IDE接口有两种传输模式，一个是PIO（Programming I/O）模式，另一个是DMA（Direct Memory Access）。虽然DMA模式系统资源占用少，但需要额外的驱动程序或设置，因此被接受的程度比较低。后来在对速度要求愈来愈高的情况下，DMA模式由于执行效率较好，操作系统开始直接支持，而且厂商更推出了愈来愈快的DMA模式传输速度标准。而从英特尔的430TX芯片组开始，就提供了对Ultra DMA 33的支持，提供了最大33MB/sec的的数据传输率，以后又很快发展到了ATA 66，ATA 100以及迈拓提出的ATA 133标准，分别提供66MB/sec，100MB/sec以及133MB/sec的最大数据传输率。值得注意的是，迈拓提出的ATA 133标准并没能获得业界的广泛支持，硬盘厂商中只有迈拓自己才采用ATA 133标准，而日立（IBM），希捷和西部数据则都采用ATA 100标准，芯片组厂商中也只有VIA，SIS，ALi以及nViidia对次标准提供支持，芯片组厂商中英特尔则只支持ATA 100标准。
注意事项
各种IDE标准都能很好的向下兼容，例如ATA 133兼容ATA 66/100和Ultra DMA33，而ATA 100也兼容Ultra DMA 33/66。 　要特别注意的是，对ATA 66以及以上的IDE接口传输标准而言，必须使用专门的80芯IDE排线，其与普通的40芯IDE排线相比，增加了40条地线以提高信号的稳定性。 　IDE代表着硬盘的一种类型，但在实际的应用中，人们也习惯用IDE来称呼最早出现IDE类型硬盘ATA-1，这种类型的接口随着接口技术的发展已经被淘汰了，而其后发展分支出更多类型的硬盘接口，比如ATA、Ultra ATA、DMA、Ultra DMA等接口都属于IDE硬盘。目前硬件接口已经向SATA转移，IDE接口迟早会退出舞台。
优缺点
IDE接口优点：价格低廉、兼容性强、性价比高 　
IDE接口缺点：数据传输速度慢、线缆长度过短、连接设备少
主机适配器
现在绝大多数的主板都带有IDE接口，我们常常听见这种接口被叫作IDE控制器，而实际上这是不对的。接口实际上是一个主机适配器，也就是说它提供的是一种连接设备和计算机（主机）的方法。而真正的控制器是位于硬盘上的电路板，这也是它被称为IDE——集成设备电路的原因。
最初IDE接口是用来连接硬盘设备的，而后发展成为一种通用接口用来连接软驱、CD-ROM以及一些磁带备份设备。虽然在内部设备中，IDE接口非常流行，但它们却极为少有的用于外部设备的连接。
ATA发展至今经过多次修改和升级，每新一代的接口都建立在前一代标准之上，并保持着向后兼容性。第一代是ATA-1，就是用于康柏桌面386系列的最初的标准规范。它被制定为“主/从”结构。ATA-1是建立在ISA96-pin标准连接器上的附属设备，使用40或44pin的连接器和电缆。在44pin方案里，额外多出的4个引脚用来向那些没有单独电源接口的设备提供电力支持。另外，ATA-1同时提供DMA和PIO两种方式传送信号。ATA-2常被称为EIDE(EnhancedIDE)、FastATA或FastATA-2，此时DMA已经完全执行于这个版本里了，标准DMA传输速度已经由ATA-1里的4.16MBps提升到16.67MBps了。ATA-2还提供对电源管理、PCMCIA卡和可移动设备的支持，通过标准寻址方法CHS（柱面、磁头、扇区）支持最高8.4GB的硬盘容量。此外，ATA-2还引入LBA方式，这一方法突破了硬盘按照CHS方式访问磁盘的老观念，为适应以后硬盘容量的快速增长打下了的良好基础。同时通过不断升级的BIOS版本或者第三方软件，能够达到支持最大137.4GB的容量。只要你的电脑支持EIDE，就可以在CMOS设置中找到LBA（LBA，LogicalBlockAddress）或（CHS，Cylinder、Head、Sector）的设置选项。EIDE支持的硬盘数目也有增加，它允许主板上具有两个插口，每个插口可以分别连接一个主设备和一个从设备，从而可以支持四个IDE设备。
随着自我监控检测和SMART等技术的介入，IDE驱动器被设计制造得更加可靠。ATA-3也增加了密码保护措施来控制存取设备，提供了一个很有意义的安全特性。
ATA-4融合的最大两个特点就是支持UltraDMA和整合了ATAPI（ATAttachmentProgramInterface）标准。ATAPI为CD-ROM、磁带备份机和其它可移动存储设备提供了通用接口。而在此之前，ATAPI是一个完全独立的标准。伴着ATAPI的入盟，ATA-4对可移动介质的支持得到了立竿见影的改善效果，同时UltraDMA也将DMA的数据传输率从原有的16.67MB/s提高到了33.33MB/s。除此之外，在原有的40pin的接口和线缆基础上，ATA-4外加了40个引脚，总共80个，其中的40根是地线，分散于标准的40根线缆之间用于增强信号质量。ATA-4也被叫做UltraDMA、UltraATA或UltraATA-33。
相比ATA-4，ATA-5主要的升级在于自动侦测设备使用的是何种线缆，40pin还是80pin？在使用80pin线缆时，UltraDMA传输率上升为更高的66.67MB/s。所以ATA-5也被称为UltraATA-66。发展到后来，还出现了ATA-100/133两个非正式标准，只是速度有所提升，不过由于硬盘内部传输速度的限制，100/133MBps只不过是一个标志罢了。
6数据线缆
IDE设备使用的是扁平带状数据线来相互连接，每一条线都是平齐的位于另一条的旁边，并非捆扎成束。数据线分为40股和80股两种，两头都有一个连接器，并在距离主板2/3的距离的位置还有另一个连接器，而且数据线的长度不能超过46厘米以保证数据传输的完整性。标准的数据线连接器的颜色应该分为蓝色、黑色和灰色三种。其中蓝色一头连接主板，黑色连接第一个（主）设备，灰色连接第二个（从）设备。沿着线缆的一边有一条不同于数据线颜色的条纹，这是为了方便告诉用户在这一边是第一引脚，以便正确的将数据线插入到设备中去，并且设备厂商还在连接器上下功夫，采取了“防倒插”设计思想，设置了一个卡扣，若线路接反是无法插进去的。
主设备与从设备
一个单独的IDE接口能够支持2个设备。一般主板都采用双IDE接口，可以提供四个IDE设备。因为控制器集成在设备之中，并没有一个全局控制器来判断哪一个设备正在与计算机通话。如果每个设备在单独的接口上工作并不会有多大问题，但在同一线缆上增添第二个设备则会带来一点麻烦。
为了允许两个设备工作在同一数据线上传输数据，IDE使用了一种特殊的“主/从”结构来解决这一问题。这种结构让一个设备的控制器告诉其它设备什么时候能够向主机发送或从主机接收数据。其实，实现的原理很简单，从设备向主驱动器发出请求，考察其是否正在与主机通话。如果主设备空闲，那么从设备就可以进行连接了；如果主设备正在通话，则发出回应让从设备等待并且适时通知何时能够进行连接。
主机通过连接器上的第39号引脚来确定是否存在第二个设备。39号引脚传送的是一种特殊的信号，叫做DASP（DriveActive/SlavePresent），用来检测设备。
虽然驱动器可以工作在任何一个接口上，但还是建议主设备连接在数据线末端的接口上使用，并且设备上的跳线必须设置在正确的位置上以表明该设备是主设备。从设备必须将设备上的跳线拿去或者更改为特殊的设置，这取决于设备自身。同样，从设备需要连接在数据线中间的那个连接器上面，控制器可以通过跳线的设置位置来确定自己是“主”还是“从”，这可以告诉设备该如何工作。每个驱动设备的都可以被设置成为“主”或者“从”，如果只有一个设备，那么它将永远是主驱动设备。
许多设备都带有一个特色的选项开关，称为CableSelect。配合使用某些主板，这些设备能够自动的配置成为“主”或者“从”。CableSelect的工作原理比较简单，一个跳线装置被安放在CableSelect开关上。其线缆本身就好像一个IDE的数据线，除了第28号引脚只连接主设备连接器。当打开计算机电源，IDE接口沿28号引脚发出信号，只有连在主设备连接器上的驱动器才能接收到。如果某一个驱动器接收到信号，则将自己配置为主设备，而没有接收到的则默认配置为从设备了。
结语
IDE作为一种通用接口，在计算机发展史上留下了不可磨灭的作用，这种并行线缆目前正逐步被串行ATA所取代，可以说IDE很好的完成了人们赋予它的使命。许多电脑初学者对于机箱来本就纷繁复杂的连线弄得摸不清头脑，相信通过本文至少对IDE接口、设备以及它们如何工作有一个大致的了解，更多的知识需要大家多动手、勤钻研。