c / c ++源代码浏览器比较,求意见 [英] c/c++ source code browser comparison, seeking opinion

查看:493
本文介绍了c / c ++源代码浏览器比较,求意见的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

最近,我们的团队继承了庞大的代码库,大约1千兆字节的c / c ++源代码。核心部分(我们实际上可能会不时修改或更新)大约是650MB和57,000个文件。所以我得到了一个完美的测试用例,看看哪些源代码浏览器实际上和他们声称的一样好。以下是我的测试结果,我想看到其他意见。我知道这个主题已经在stackoverflow中多次提出,但我对他们的任何答案都不满意(或者我错过了一些,如果是这种情况请告诉我)。顺便说一句,通过源代码浏览器,我的意思是它可以帮助您轻松找到类/函数定义;显示调用树,交叉引用,类似的东西。

Recently our team inherited a huge code base, about 1 gigabyte c/c++ source codes. The core part (which we may actually modify or update from time to time) is about 650MB and 57,000 files. So I got a perfect test case to see which source code browsers are actually as good as they claim. Following are my test results and I would like to see other opinions. I know this topic had been raised several times in stackoverflow, but I am not satisfied with any of their answers (or maybe I missed some, if this is the case please let me know). BTW, by source code browser I mean it can help you find class/function definition easily; show call tree, cross reference, something like that.


  1. visual c ++ 2010 express edition (免费的)。太糟糕了,它没有费心做任何分析工作只是抱怨它找不到头文件。顺便说一句,这就是为什么我从不喜欢visual c ++;它总是希望你以自己的方式做事,而不是让事情变得更容易。

  1. visual c++ 2010 express edition (the free one). Too bad, it does not bother to do any analysis work just complains it can't find the head files. BTW, that's why I never like visual c++; it always wants you to do things in its way instead of making things easier for you.

源导航器。我几年前使用过source navigator。我发现新的名称源navigaor NG正在开发中,所以我决定尝试一下。太糟糕了,650MB代码添加到项目中,它已经死了。

source navigator. I used source navigator couple of years ago. And I found out that it is under development again with the new name source navigaor NG, so I decided to give it a try. Too bad, with 650MB codes adding to project, it just went dead.

了解C ++ 。我看到有人推荐在这里理解c ++,所以我也尝试了一下。也不好。随着1G文件添加到它的项目,它也死了。 650MB,它可以工作,但没有留下深刻印象。由于它是一个商业工具,我刚刚通过它。

Understand C++. I saw someone recommended understand c++ here so I also gave it a try. Not good too. With 1G files added to its project, it went dead too. With 650MB, it can work but not impressed. Since it is a commercial tool I just passed it.

代码块。 1G文件将使它死亡但650MB它可以工作。当你的鼠标指向一个函数时(例如source insight和slickedit),它不能自动显示函数定义,但是当你右键单击一个函数并选择pop时,它可以找到函数defition的大部分时间(好消息)菜单项转到功能定义。坏消息是,当我关闭项目并再次打开它时,仍然需要很长时间才能加载。

code block. 1G files will make it dead but with 650MB it can work. It can't automacticlly show the function definition when your mouse points to a function (like source insight and slickedit do), but it can find the function defition most of time(the good news) when you right click a function and choose the pop up menu item "go to function definition". The bad news is that when I close the project and open it again it still takes a long time to load.

codelite 。 codelite看起来像代码块(毕竟他们都使用wxWidget)。但我发现codelite比代码块更好,因为当我重新打开已关闭的项目时,它的加载速度比代码块(650MB文件)快得多。它也可以通过弹出菜单找到功能定义。因此,如果有人想选择一个免费的c / c ++ IDE,我的投票就是代码。

codelite. codelite looks like code block(after all they both use wxWidget). But I find codelite is better than code block because when I re-open the closed project it loads much quicker than code block(with 650MB files). It can find function definitions too with pop-up menu. So if someone wants to choose a free c/c++ IDE my vote goes for codelite.

cscope 。当我在摩托罗拉GSM部门工作时,我们使用了cscope,并且有数百万行代码。但问题是我的团队成员都没有擅长vim或emacs,我们只想要一个能让我们的生活更轻松的IDE(我猜这些评论可能会让某些人失望。很抱歉)

cscope. When I worked for motorola GSM department we used cscope and there were million lines of codes. But the problem is that none of my team memebers are good at vim or emacs and we just want an IDE that make our lives easier (I guess these remarks may piss someone off. Sorry for that)

来源洞察。当然,我的测试不会错过源代码洞察力。源洞察力确实很好。但它的UI有点丑陋,它不支持unicode。这太糟糕了。

source insight. Of course my test won't miss source insight. And source insight does its work pretty good. But its UI is kind of "ugly" and it does not support unicode. That is too bad.

光滑编辑。在我的测试中,光滑的编辑和源洞察是唯一可以处理1G文件的工具,当你指向一个函数并在你输入时提供函数完成时自动显示函数定义。在我看来,光滑编辑的UI比源洞察力要好得多。我唯一的问题是它们都没有提供代码折叠(而像codelite和codeblock提供的免费代码)。这里有一个修正:slickedit实际上有代码折叠(在视图菜单中有选择性显示),它不是那么明显,你必须先设置选择性显示!

slick edit. In my test slick edit and source insight are the only 2 tools that can handle 1G files and show function defintion automaticlly when you point to a function and provide function completion when you are typing. In my opinion the UI of slick edit is way much better than source insight. The only problem I have is that none of them provide code folding (while the free one like codelite and codeblock provides). One correction here: slickedit actually does have code folding (with selective display at view menu), it is just not that obvious, you have to set your selective display first!

我不尝试基于java的IDE,如eclispe CDT或netbean,因为我不认为他们可以处理1G文件。

I do not try the java based IDE like eclispe CDT or netbean because I do not think they can handld 1G files.

总结一下我所做的事情,我会说如果你想要一个商业工具,我的投票就是slickedit(这不是一个卖点。我与浮油编辑没有任何关系);如果你想要一个免费的,肯定会有代码。

So to summarize what I have done I will say if you want a commercial tool, my vote goes for slickedit (This is not a sells pitch. I am not in any way related to slick edit); if you want a free one, codelite definitely.

但我想听别人的意见。

推荐答案

我们有类似的问题(1GB代码库,15k文件),实际上Eclipse CDT适用于我们,如果你给它足够的内存。专用于Eclipse的1GB RAM似乎是最佳选择。

We have a similar problem (1GB code base, 15k files) and actually Eclipse CDT works for us, if you give it enough memory. 1GB RAM dedicated for Eclipse seems to be the sweet spot.

这篇关于c / c ++源代码浏览器比较,求意见的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆