http://www.csdn.net/article/2014-02-27/2818564-best-compilers-and-ides-for-c-programmers
1.Turbo C
Turbo C是美国Borland公司的产品, 该公司在1987年首次推出Turbo C 1.0 产品, 其中使用了全然一新的集成开发环境, 即使用了一系列下拉式菜单,将文本编辑、程序编译、连接以及程序运行一体化, 大大方便了程序的开发。1988年, Borland 公司又推出Turbo C1.5版本, 增加了图形库和文本窗口函数库等, 而Turbo C 2.0 则是该公司1989年出版的。Turbo C2.0在原来集成开发环境的基础上增加了查错功能, 并可以在Tiny模式下直接生成.COM (数据、代码、堆栈处在同一64K 内存中) 文件。还可对数学协处理器 (支持8087/80287/80387等)进行仿真。
Borland 公司后来又推出了面向对象的程序软件包Turbo C++它继承发展Turbo C 2.0 的集成开发环境, 并包含了面向对象的基本思想和设计方法.
2.C++ Builder:
C++ Builder是由Borland公司 继Delphi之后又推出的一款高性能可视化集成开发工具。C++ Builder具有快速的可视化开发环境:只要简单地把控件(Component)拖到窗体(Form)上,定义一下它的属性,设置一下它的外观,就可以快速地建立应用程序界面;C++ Builder内置了100多个完全封装了Windows公用特性且具有完全可扩展性(包括全面支持ActiveX控件)的可重用控件;C++ Builder具有一个专业C++开发环境所能提供的全部功能:快速、高效、灵活的编译器优化,逐步连接,CPU透视,命令行工具等。它实现了可视化的编程环境和功能强大的编程语言(C++)的完美结合。
3.Dev C++
Dev-C++是一个C&C++开发工具,它是一款自由软件,遵守GPL协议。它集合了GCC、MinGW32等众多自由软件,并且可以从devpak.org上取得最新版本的各种工具支持,而这一切工作都是来自全球的狂热者所做的工作,并且你拥有对这一切工具自由使用的权利,包括取得源代码等,前提是你也必须遵守GNU协议。
Dev-C++每一天都在进步着,因为它是一个自由软件。 Dev-C++是一个非常实用的编程软件,多款著名软件均由它编写而成,它在C的基础上,增强了逻辑性。
AT&T发布的第一个Dev-C++编译系统实际上是一个预编译器(前端编译器),真正的Dev-C++程序是在1988年诞生的。
Dev-C++目前是NOI、NOIP等比赛的制定工具,唯一的缺点就是Debug功能过弱。
Dev C++本身仅仅提供一个单纯的图形界面,它并不是一个完整的开发环境。如果要想在这一环境中开发软件则需要GCC在Windows或者Linux上的变种如mingw,cygwin,djgpp等。借助这些以GCC为基础的开发环境再加上DEV C++方可构成一个完整的开放式集成开发环境IDE。Dev C++需要和编译器一起才能成为完整的开发环境
4、Code::Blocks
Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境. 可以支持多种编辑器,ode::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了蓍名的图形界面库wxWidgets(2.6.2 unicode)版。对于追求完美的C++程序员,再也不必忍受Eclipse的缓慢,再也不必忍受VS.NET的庞大和高昂的价格。
5、Visual Studio
Visual Studio 是一套完整的开发工具集,用于生成 ASP.NET Web 应用程序、XML Web Services、桌面应用程序和移动应用程序。Visual Basic、Visual C++、Visual C# 和 Visual J# 全都使用相同的集成开发环境 (IDE),利用此 IDE 可以共享工具且有助于创建混合语言解决方案。另外,这些语言利用了 .NET Framework 的功能,通过此框架可使用简化 ASP Web 应用程序和 XML Web Services 开发的关键技术。
VS本身有很多的版本
1998年,微软公司发布了 Visual Studio 6.0。
2002 年 Visual Studio .NET(内部版本号为 7.0)。
2003 年,微软对 Visual Studio 2002 进行了部分修订,以 Visual Studio 2003 的名义发布(内部版本号为 7.1)。Visio 作为使用统一建模语言(UML)架构应用程序框架的程序被引入,同时被引入的还包括移动设备支持和企业模版。.NET 框架也升级到了 1.1。
2005 年,微软发布了 Visual Studio 2005。
Visual Studio 2008
Microsoft Visual Studio 2008 使开发人员能够快速创建高质量、用户体验丰富而又紧密联系的应用程序,充分展示了 Microsoft 开发智能客户端应用程序的构想。借助 Visual Studio 2008,采集和分析信息将变得更为简单便捷,业务决策也会因此变得更为有效。任何规模的组织都可以使用 Visual Studio 2008 快速创建能够利用 Windows Vista? 和 2007 Office system 的更安全、更易于管理并且更可靠的应用程序。
Visual Studio 2008 在三个方面为开发人员提供了关键改进:
VS2008启动界面
Visual Studio 9
为了保持与 Office 系列的统一,Visual Studio 9 的名称为 Visual Studio 2008。2008年,Visual Studio9也就是Visual Studio 2008将和Windows Server 2008同时发布。
Visual Studio 2010
(2010年4月12日,北京)——微软公司今天宣布,全球最受欢迎的开发工具Visual Studio 2010在中国率先上市。
6、Eclipse
Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
7、Qt
Qt是诺基亚开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。
8、VC++
VC++是微软公司开发的一个集成开发环境(IDE),就是使用c++的一个开发平台。有些软件就是这个编出来的。另外还有VB、VF,只是使用不同语言。 VC++是Windows平台上的C++编程环境,学习VC要了解很多Windows平台的特性并且还要掌握MFC、ATL、COM等的知识,难度比较大。Windows下编程需要了解Windows的消息机制以及回调(callback)函数的原理;MFC是Win32API的包装类,需要理解文档视图类的结构,窗口类的结构,消息流向等等;COM是代码共享的二进制标准,需要掌握其基本原理等等。一款编程用的IDE,一定要不断根据自己的需要进行配置,才会变得好用起来。平台搭建好后,那就根据自己的需要配置合适的编辑器下面是编辑器的介绍
编辑器
1、Source Insight
Source Insight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++, C#和Java等程序的分析。Source Insight能分析你的源代码并在你工作的同时动态维护它自己的符号数据库,并自动为你显示有用的上下文信息。 Source Insight不仅仅是一个强大的程序编辑器,它还能显示reference trees,class inheritance diagrams和call trees。Source Insight提供了最快速的对源代码的导航和任何程序编辑器的源信息。 Source Insight提供了快速和革新的访问源代码和源信息的能力。与众多其它编辑器产品不同,Source Insight能在你编辑的同时分析你的源代码,为你提供实用的信息并立即进行分析。
Source Insight是如今最好用的语言编辑器,支持几乎所有的语言, 如C、C++、ASM、PAS、ASP、HTML等常见的,还支持自己定义关键字,如果您 是一个程序员或者网页制作人,这个软件对您都是有帮助的! Source Insight为您提供了可快速访问源代码和源信息的功能。Source Insight相较其它的编辑器产品来说,还可以帮您分析源代码,并在您编辑的同时立刻提供给您有用的信息和分析。
2、vi
vi或vim是Linux最基本的文本编辑工具,vi或vim虽然没有图形界面编辑器那样点鼠标的简单操作,但vi编辑器在系统管理、服务器管理中,永远不是图形界面的编辑器能比的。当您没有安装X-windows桌面环境或桌面环境崩溃时,我们仍需要字符模式下的编辑器vi;
vi或vim 编辑器在创建和编辑简单文档最高效的工具;
3、Cygwin
Windows平台下的C++编译器,基于gcc,又完全兼容Window特有的东西,比如对winsock的支持。
4、EditPlus
一款很不错的文本编辑软件,功能强大却又十分轻巧。支持不同语言的语法加亮,还有Project组织功能,具有丰富的自定义功能。通过设置User Tool,可以和其他语言编译器结合,形成一个简单的IDE。
5、Ultra Edit
功能和EditPlus相当,通过脚本文件提供的配置功能可以定制编辑环境,但自6.0版以后一直没多大变化,就编程而言,自定义设置没有EditPlus方便。
6、 MinGW
MinGW(这个是专用的C/C++的编译器,不象GCC是一个Compiler Collection)。优点是,有开源组织为他开发了一个MinGW Developer Studio。操作界面简直和VC++6.0一模一样。功能上面也不比它弱,一些小细节甚至强于VC++,比如代码伸缩功能(BTW:JBuilder到了X才有这个功能)。甚至默认的库有DDK的库,绝对超值。当然缺点有:MinGW和其他非VC++编译器比起来,编译速度是最慢的。最快的我感觉是GCC,其次是LCCWin32。当然和VC++不具备可比性,我也没有去比较。但是冲着这个功能如此强大的IDE,我想选择它没错的。生产的代码质量还不错。而且和Windows的跟进速度比GCC要快的。
7、cygwin
cygwin是一个在windows平台上运行的unix模拟环境,是cygnus solutions公司开发的自由软件(该公司开发了很多好东西,著名的还有eCos,不过现已被Redhat收购)。它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用gnu工具集在windows上进行嵌入式系统开发,非常有用。随着嵌入式系统开发在国内日渐流行,越来越多的开发者对cygwin产生了兴趣。
cygnus当初首先把gcc,gdb,gas等开发工具进行了改进,使他们能够生成并解释win32的目标文件。然后,他们要把这些工具移植到windows平台上去。一种方案是基于win32 api对这些工具的源代码进行大幅修改,这样做显然需要大量工作。因此,他们采取了一种不同的方法——他们写了一个共享库(就是cygwin dll),把win32 api中没有的unix风格的调用(如fork,spawn,signals,select,sockets等)封装在里面,也就是说,他们基于win32 api写了一个unix系统库的模拟层。这样,只要把这些工具的源代码和这个共享库连接到一起,就可以使用unix主机上的交叉编译器来生成可以在windows平台上运行的工具集。以这些移植到windows平台上的开发工具为基础,cygnus又逐步把其他的工具(几乎不需要对源代码进行修改,只需要修改他们的配置脚本)软件移植到windows上来。这样,在windows平台上运行bash和开发工具、用户工具,感觉好像在unix上工作
8、GCC
GCC(GNU Compiler Collection,GNU编译器套装),是一个用于linux系统下编程的编译器。是一套由 GNU 开发的编程语言编译器。它是一套 GNU编译器套装以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU计划的关键部分,亦是自由的类Unix及苹果电脑 Mac OS X 操作系统的标准编译器。
GCC 原名为 GNU C 语言编译器,因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C++。之后也变得可处理 Fortran、Pascal、Objective-C、Java, 以及 Ada与其他语言。
* NetBeans
NetBeans 是由Sun建立的开放原始码的软体开发工具,是一个开放框架,可扩展的开发平台,可以用于Java,C语言/C++等的开发,本身是一个开发平台,可以通过扩展插件来扩展功能,现在最新的稳定版本是Netbeans 6.1。在 NetBeans Platform 平台中,应用软体是用一系列的软体模组(modular software components)建构出来。而这些模组是一个jar档(Java archive file)它包含了一组Java程式的类别而它们实作全依据依 NetBeans 定义了的...
* Visual C++ 2008 Express
Visual C++ 2008 Express Edition 是一个微软提供的简化版本,Express Edition 中没有提供集成开发环境的大部分专业功能。不过,胜在是免费的(非开源)!
* CodeLite IDE for C C++
CodeLite IDE Revision 1202 for C/C++已经发布,这是一个强大的开源,跨平台的C/C++整合开发环境. 目前已经在Windows XP SP3,Ubuntu 7.10 Gutsy Gibbon, Fedora Core 6和Debian lenny/sid上测试通过,它遵循GPL协议分发. 主要的特征包括:支持gcc/g++/VC++等编译器支持通过插件来扩展功能内建GDB调试支持........
* openMP
OpenMP 是由OpenMP Architecture Review Board牵头提出的,并已被广泛接受的,用于共享内存并行系统的多线程程序设计的一套指导性注释(Compiler Directive)。OpenMP支持的编程语言包括C语言、C++和Fortran;而支持OpenMP的编译器包括Sun Compiler,GNU Compiler和Intel Compiler等。OpenMP提供了对并行算法的高层的抽象描述,程序员通过在源代码中加入专用的pragma来指明自己的意图,由此编译器可以自动将程序进行并行化,并在必...
* Code::Blocks
Code::Blocks (codeblocks)是一个开源、免费、跨平台的c++ IDE。官方网站上称其能满足最苛刻的用户的需求。虽有点夸张,但既然敢这样说,也说明它的功能肯定不差。可扩展插件,有插件向导功能,让你很方便的创建自己的插件。Code::Blocks是用c++编写的(用wxWidgets库),捆绑了MinGW编译器。
* VisualStudio
首先,这不是一个开源软件,也不是免费的。不用说了,目前Windows系统下最好的C/C++开发环境,估计市场占用率不只是90%吧?最新版本是2008,可以下载试用版。
* Dev C++
Dev C++是一个windows平台上使用g++内核的IDE,有诸多优点,但其IDE相对于VC6而言差得太多。Dev-C++安装注意点:如果以前安装过老版本或想更换安装目录,请将磁盘中残留的devcpp.cfg和devcpp.ini两文件删除掉再安装。最新版的dev-c++整合了Mingw的最新版,其对标准的支持不逊于vc7,里面很多原来g++不支持的,现在也已经支持。
* Intel C++ Compiler
Intel公司兼容GCC的C/C++编译器。据说同样的软件用Intel编译器编译的执行性能比GCC要好不少。
* CodeLite
CodeLite 是一个强大的开源,跨平台的C/C++整合开发环境. 目前已经在Windows XP SP3,Ubuntu 7.10 Gutsy Gibbon, Fedora Core 6和Debian lenny/sid上测试通过,它遵循GPL协议分发. 开源软件.
* GCC
GCC(GNU Compiler Collection,GNU编译器套装),是一套由 GNU 开发的编程语言编译器。它是一套以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU计划 的关键部分,亦是自由的 类Unix 及苹果计算机 Mac OS X 操作系统的标准编译器。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。 GCC 原名为 GNU C 语言编译器(GNU C Compiler),因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C++。之后也变...
* Midinux SDK
11 月21日,在北京嘉里中心,中科红旗发布了Midinux SDK。此次发布的SDK,是为MID Linux 开发商、爱好者所提供的,为MID开发应用软件的工具集,它为MID软件产业再次注入了强大的力量。此前,已经有众多的ISV基于Midinux SDK开发了大量高价值的应用,为MID市场提供了至关重要的组成部分。 Midinux SDK整合了Midinux所有的应用环境,支持库和头文件,包括了GTK,Clutter,EFL等架构、示例程序。SDK支持 C/C++,Python,Java等开发语...
* Boost
Boost 库是一个经过千锤百炼、可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一。 Boost库由C++标准委员会库工作组成员发起,在C++社区中影响甚大,其成员已近2000人。 Boost库为我们带来了最新、最酷、最实用的技术,是不折不扣的“准”标准库。 Boost中文站:http://www.stlchina.org/twiki/bin/view.pl/Main/BoostChina...
* doxygen
维护用 C/C++ 开发的遗留系统并添加新特性是一项艰难的任务。这涉及几方面的问题:理解现有的类层次结构和全局变量,不同的用户定义类型,以及函数调用图分析等等。本文在 C/C++ 项目的上下文中通过示例讨论 doxygen 的几个特性。但是,doxygen 非常灵活,也可用于用 Python、Java、PHP 和其他语言开发的软件项目。本文的主要目的是帮助您从 C/C++ 源代码提取出信息,但也简要描述了如何用 doxygen 定义的标记生成代码文档。...
* Open Watcom
Open Watcom 给C/C++ 和 FORTRAN程序员带来了一个集成的开发环境,包括了开发工具, SDK,以及库文件。可以用来开发强大的16位和32位应用程序
* Qt Creator
Qt Creator 是 Qt 被 Nokia 收购后推出的一款新的轻量级集成开发环境(IDE)。此 IDE 能够跨平台运行,支持的系统包括 Linux(32 位及 64 位)、Mac OS X 以及 Windows。根据官方描述,Qt Creator 的设计目标是使开发人员能够利用 Qt 这个应用程序框架更加快速及轻易的完成开发任务。在功能方面,Qt Creator 包括项目生成向导、高级的 C++ 代码编辑器、浏览文件及类的工具、集成了 Qt Designer、图形化的 GDB 调试前端,集成 ...
* Anjuta
Anjuta是一个C/C++ IDE,它最大的特色是灵活,同时打开多个文件,内嵌代码级的调试器(调用gdb),应用程序向导(Application widzards)可以方便的帮助你创建GNOME程序而不需要你自己写一些与你兴趣无关的代码。
* Open64
Open64 is a suite of optimizing compiler development tools for Intel Itanium(TM) systems running Linux. The Open64 project is the continuation of the SGI Pro64(TM) compiler suite which was released under the GNU General Public License (GPL). The Open64 compiler suite currently includes compilers for C, C++, and Fortran90/95 compilers for the IA-64 Linux ABI and API standards....
* distcc
distcc是一个分布式的C/C++编译工具,它可以组织一个网络内的多台计算机同时进行某个编译任务。下图是distcc提供的监控工具,用于查看编译执行的情况
* SWIG
SWIG 是个帮助使用C或者C++编写的软件能与其它各种高级编程语言进行嵌入联接的开发工具。SWIG能应用于各种不同类型的语言包括常用脚本编译语言例如 Perl, PHP, Python, Tcl, Ruby and PHP。支持语言列表中 也包括非脚本编译语言,例如C#, Common Lisp (CLISP, Allegro CL, CFFI, UFFI), Java, Modula-3, OCAML以及R,甚至是编译器或者汇编的计划应用(Guile, MzScheme, Chicken)。SWIG普遍应用于创建高级语言解析或汇编程序环境,...
* Vala
Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C....
* KDevelop
KDevelop-Project诞生于1998年,其目的是为KDE提供一个易用的集成开发环境(Integrated Development Environment)。此后,KDevelop IDE采用GPL进行发布, 它支持很多 程序设计语言. 全图请看这里。
* GCC for SPARC
这是专为 Sun 的 SPARC 系统优化的 GCC 编译器。下载地址
* mp_doccer
mp_doccer 是一个制作文档的工具,它扫描 C 源码文件,从中抽取特点的标识并生成文档,类似JavaDoc
* Cocoa
Cocoa 是苹果的面向对象开发环境,用来生成 Mac OS X 的应用程序。主要的开发语言为 Objective-c, 一个c 的超集。 Cocoa 开始于1989年9月上市的NeXTSTEP 1.0,当时没有Foundation框架,只有动态运行库, 称为 kit, 最重要的是AppKit. 1993 年 NeXTSTEP 3.1 被移植到了 Intel, Sparc, HP 的平台上,Foundation 首次被加入,同时Sun 和 NeXT 合作开发OpenStep 也可以运行在Windows 系统上。...
* Objective-C
Objective- C,通常写作ObjC和较少用的Objective C或Obj-C,是扩充C的面向对象编程语言。它主要使用於Mac OS X和GNUstep这两个使用OpenStep标准的系统,而在NeXTSTEP和OpenStep中它更是基本语言。Objective-C可以在 gcc运作的系统写和编译,因为gcc含Objective-C的编译器。 Objective-C是非常「实际」的语言。它使用一个用C写成、很小的运行库,只会令应用程式的大小增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统...
C-Free[C/C++初学者理想的开发工具]
C-Free是一款支持多种编译器的专业化C/C++集成开发环境(IDE)。利用本软件,使用者可以轻松地编辑、编译、连接、运行、调试C /C++程序。C-Free中集成了C/C++代码解析器,能够实时解析代码,并且在编写的过程中给出智能的提示。C-Free提供了对目前业界主流C /C++编译器的支持,你可以在C-Free中轻松切换编译器。可定制的快捷键、外部工具以及外部帮助文档,使你在编写代码时得心应手。完善的工程/工程组管理使你能够方便的管理自己的代码。
主要包含如下特性:
支持多编译器,可以配置添加其他编译器;
目前支持的编译器类型:
(1) MinGW 2.95/3.x/4.x/5.0
(2) Cygwin
(3) Borland C++ Compiler
(4) Microsoft C++ Compiler
(5) Open Watcom C/C++
(6) Digital Mars C/C++
(7) Ch Interpreter
增强的C/C++语法加亮器,(可加亮函数名,类型名,常量名等);
增强的智能输入功能;
可添加语言加亮器,支持其他编程语言;
可添加工程类型,可定制其他的工程向导;
完善的代码定位功能(查找声明、实现和引用);
代码完成功能和函数参数提示功能;
能够列出代码文件中包含的所有符号(函数、类/结构、变量等);
大量可定制的功能:
可定制快捷键
可定制外部工具
可定制帮助(可支持Windows帮助、Html帮助和在线帮助);
彩色、带语法加亮打印功能;
在调试时显示控制台窗口;
工程转化功能,可将其他类型的工程转化为C-Free格式的工程,并在C-Free中打开。
开发环境
—->Turbo c
DOS时代c语言开发的经典工具,目前适合两类人使用:c语言beginner(尤其是学生一族),具有怀旧情节的专业人士:)
—->Visual C++ 6.0/7.0
稳定而强大的IDE开发环境,具有丰富的调试功能,定制宏的功能也是其一大特色。Microsoft的经典之作,功能强大自不必言说。附带的一些工具也很不错,比如:Spy++。但编译器较之同类,支持c++标准的程度不够好,尤其6.0及以前的版本。
—->BCB
Borland的C++ Builder是可以与VC匹敌的另一个功能强大的IDE,速度和稳定性稍逊,但对c++标准支持的程度较好。
—->Cygwin
Windows平台下的C++编译器,基于gcc,又完全兼容Window特有的东西,比如对winsock的支持。从http://www.cygwin.com可以找到有关Cygwin的详细信息。
—->Dev-c++
Windows平台下,一个类似VC、BCB的c++ IDE开发环境,属于共享软件。界面亲切优雅,size也不大,其4.9.x版有中文语言支持,无需汉化。编译器基于gcc,完全支持STL。但是对于规模较大的软件项目,恐怕难以胜任。可以从:http://www.bloodshed.net/dev/devcpp.html找到有关Dev-c++的有关信息。
—->Source Insight
有着和Dev c++一样漂亮的界面,提供代码的编辑和察看功能,具有丰富的语法加亮功能,可以像VC一样自动弹出成员函数的提示,并具有快速方便的函数跳转功能(但是跳转速度似乎有点慢)。只是默认设置不适合时,需要仔细的调整和修改。无法查找经typedef之后的名字。
辅助工具
—->Visual Assist
VC IDE环境下的辅助编程工具,能识别各种关键字、函数、成员变量,自动给出tip,并自动更正大小写错误,标示拼写错误等。是VC开发的良好伴侣。
—->Understand for C++
一款c/c++IDE编程的辅助工具,支持反向工程,代码导向和一些统计功能,从http://www.scitools.com可以找到有关Understand for C++的详细信息。
程序编辑器
—->EditPlus
一款很不错的文本编辑软件,功能强大却又十分轻巧。支持不同语言的语法加亮,还有Project组织功能,具有丰富的自定义功能。通过设置User Tool,可以和其他语言编译器结合,形成一个简单的IDE。
—->Ultra Edit
功能和EditPlus相当,通过脚本文件提供的配置功能可以定制编辑环境,但自6.0版以后一直没多大变化,就编程而言,自定义设置没有EditPlus方便。
—->EMACS
公认的世界上功能最多,最复杂的文本编辑器,其实也可以当作程序员用的编辑器。
—->Visual Slick Edit
一个功能强大的程序员用编辑器。最值得一提的是其定制功能,很好用,可以和EMACS相比。自带了一套PCODE解释器,用c的语法,还可以挂接动态库。配合mingw一起使用很方便。从http://www.slickedit.com可以找到有关SlickEdit的详细信息。
—->IQEdit
全功能的程序员用编辑器,界面很漂亮,从http://pwksoftware.com可以找到有关IQEdit的详细信息。
UML/建模
—->Rational Rose
强大的建模工具,早已“家喻户晓”,功过自然不必多加评说了。从http://www.rationalsoftware.com.cn可以找到有关Rational Rose的详细信息。
—->Visual Modeler
MS Visual Studio 6.0所附的小工具。属于Rational和MicroSoft合作的战略产品,是Rose的简化版。
—->Visio
Microsoft的建模工具,感觉更人性化一些,但功能没有Rose多、强、专,支持正向的代码生成,以及对代码的反向工程。
—->Together
另一款功能强大的建模工具,用java编写而成,口碑不错,不过速度稍稍慢了一些。从http://www.togethersoft.com可以找到有关Togather的详细信息,另外,以下网址提供了一个有关Together的教程: http://www.cc.puv.fi/~tka/kurssit/Tietojarjestelmien_suunnittelu/together/TCCGuide6
—->Visual UML
支持多种语言类型,比如:VC、VB、DELPHI、CORBA IDL等,可以直接从UML设计图生成代码,简单易用,完全适合Personal use,界面也很清爽。从http://www.visualObject.com可以找到有关Visual UML的详细信息。
—->SmartDraw
通用图表制作软件,可以用来制作组织机构图、流程图、统计图表等。随带有图库,基本满足制作各类图表的需要。从http://www.smartdraw.com可以找到有关SmartDraw的详细信息。
—->PlayCase
国产面向对象的建模软件,兼容UML和IDEF,轻量级软件,只是界面看起来有点简朴,乃是高展先生用Delphi完成的。
版本控制
—->ClearCase
Rational的版本控制管理软件,功能强大,可以控制多种类型的文档,甚至包括Word、Excel、PowerPoint文档。但使用复杂,不易上手,且不是免费软件。
—->CVS
为基于Web的分布式协同开发提供了版本控制管理手段,且是免费软件,可以通过脚本定制功能。但在权限控制方面功能相对较弱。
—->VSS
微软的版本控制管理工具,功能相对简单,适合于小型团队开发,将其整合到微软的其他开发工具中,使用起来十分方便。
—->SourceOffSite
微软为开发人员提供的远程访问VSS数据库的工具,使数据库得以远程更新,以支持远程办公。其他的版本管理工具还包括:PVCS、VCS、RCS等。
XML
—->expat
用于读取和处理XML文档的c函数库,最初是James Clark的个人作品,简单轻巧,且速度快。但支持的编码方式有限,最遗憾的是不支持中文。从http://expat.sourceforge.net可以找到有关expat的详细信息。
—->xml4c
IBM的XML P***r,用c++语言写就,功能超级强大。号称支持多达100种字符编码,能够支持中文,适合于大规模的xml应用。若只是很小范围的应用,则非最佳选择,毕竟,你需要“背负”约12M左右的dll的沉重负担。从http://www.alphaworks.ibm.com/tech/xml4c可以找到有关xml4c的详细信息。
—->Xerces c++
Apache的XML项目,同样是c++实现,来源于IBM的xml4c,因此编程接口也是和xml4c一致的。但是目前只支持少数的字符编码,如ASCII,UTF-8,UTF-16等,不能处理包含中文字符的XML文档。从 http://xml.apache.org/xerces-c可以找到有关Xerces c++的详细信息。
测试
—->CppUnit
一个c++的单元测试框架,可以通过派生测试类的方式,定制具体的测试方案。xUnit家族的一员,从JUnit移植而来,JUnit是Java语言的单元测试框架。从http://cppuint.sourceforge.net可以找到有关CppUint的详细信息。
—->Rational ROBOT
Rational的自动化测试工具,通过编写脚本的方式提供自动化测试特性。其GUI方式的脚本录制功能,有助于对GUI软件进行功能测试;其VU方式的脚本录制功能,有助于测试某些软件的数据通讯功能。
—->Rational Purify
同样是Rational的自动化测试工具,不需要被测程序的源代码,可以用来检查内存访问错误、Windows API调用错误等,以完成软件的可靠性测试,属于白盒测试。
其他的Rational测试工具还包括:TestFactory、PureCoverage、TestManager等。
日志
—->log4cpp
一个用于日志记录的c++函数库,可以将内容以定制的方式记录到不同的目的地,比如:文件、控制台syslog等,同时还可以通过控制记录级别来屏蔽掉某些无关记录。从http://log4cpp.sourceforge.net可以找到有关log4cpp的详细信息。
注释
—->Doc++
注释文档生成工具,根据源程序中的文档注释,可以输出TeX和HTML格式的文档。除了支持c/c++语言外,还支持IDL和java。仅提供命令行使用方式。从http://docpp.sourceforge.net可以找到有关Doc++的详细信息。
—->Doxygen
注释文档生成工具,较之Doc++功能更为齐全,可以生成包括HTML、PDF、RTF在内的多种格式的文档,并有GUI界面,除了支持c/c++语言外,还支持IDL、java、PHP、c#等。从http://www.stack.nl/~dimitri/doxygen可以找到有关Doxygen的详细信息。