网志

您应该知道的10个软件工具

杰森·萨克斯(Jason Sachs)2012年5月20日15条评论

除非您正在设计小型模拟电子电路,否则如今很难在没有计算机帮助的情况下完成嵌入式系统设计中的工作。我以为我会分享一个软件工具列表,以帮助我完成工作。其中大多数是免费或廉价的。它们中的大多数还用于使用软件。如果您不必设计,阅读或编辑任何软件,那么您就是从中受益的少数人之一。  

免责声明:“最佳”软件工具通常是一个意见问题。您可能不同意我的观点,所以只考虑它的价值。

1. 修订控制系统 -无论您是一个100人的团队,还是一个人,如果您正在设计中,都应该使用 版本控制 软件。该软件可让您管理不同版本的文档,无论是原理图还是源代码。诸如源代码或配置文件之类的文本文档尤其适合进行版本控制,因为它很容易查看版本之间的差异并将合并从一个版本到另一个版本的更改,特别是如果有多个人员在一组文档中工作时。

本文以PDF格式提供,便于打印

版本控制系统中的文档集合称为 资料库。存储库的位置在某种程度上取决于您使用哪种版本控制系统-版本控制系统有两个基本类别:集中式和分布式。集中版本控制涉及包含存储库的服务器。当您到达方便的时间点时, 承诺 您对存储库的更改。分布式版本控制系统(DVCS)不需要集中式服务器:每个在存储库中工作的人都有自己的本地缓存(包括整个历史记录),并且可以通过“推送”将新的提交从一个存储库转移到另一个存储库。从源系统“”或从目标系统“拉”。

2012年开源社区中最流行的三种版本控制系统是 颠覆 (SVN), 水星 (hg),以及 吉特。 颠覆是集中式的,但是Mercurial和Git是分布式的。

I use 水星 for my personal software development. Setting up a 资料库 is as easy as going into the root of the directory where you're working 和 typing hg init. You then add the files you like with hg add 和n 承诺 with hg 承诺. It takes me only a few minutes 和 all of a sudden I have the ability to go back to an earlier version of a file. I do this especially with server configuration files on my home PC (for the Apache webserver, for instance) -- if I 使 a change in one file 和 it causes a bug, I can just roll back to an earlier version of the file.

如果您是唯一在项目上工作的人,那么管理修订控制系统非常容易,只要您到达一个好的停止点,就不时地提交。如果您正在与其他人一起工作,那么有一种方法可以调和当一个人进行更改而另一个人进行不同更改时引起的冲突。这称为“合并”,对于文本文档,只要您经常这样做,通常就很容易;对于二进制文档,这几乎是不可能的,并且适当的处理方式是在存储库中的文档上放置锁,该锁本质上声明您正在处理特定文件,而其他人则不应。

所有这三个系统(svn,hg和git)都是作为命令行工具启动的,但是都具有多种不同的GUI前端,包括Tortoise系列的UI,这是系统文件浏览器的轻量级附件。在您的操作系统(例如Windows资源管理器或Mac OSX Finder)中。与非免费版本控制系统相比,它们不那么易于使用。我们在工作中使用了SurroundSCM,尽管我有点不喜欢后端的行为,但我发现,更易于使用Surround UI来解决分支之间的差异。

还值得注意的是,有许多用于存储库的在线托管系统,包括 bitbucket.org, SourceForge, 谷歌代码的GitHub;所有这些都为公共存储库提供免费托管; bitbucket为您自己的个人项目(最多5个用户)提供免费的私人存储库托管。我绝对会建议使用Mercurial或Git之类的DVCS,因为这意味着您可以将项目从一个托管站点转移到另一个托管站点,即使该站点暂时关闭,您仍然可以使用本地存储库副本。

2. 文件比较工具 -无论是将源代码合并到版本控制系统中,还是试图查看一个文件与另一个文件之间的区别,都需要文件比较软件。有诸如“ diff”之类的命令行工具,还有GUI文件比较软件。我喜欢这个程序 超越比较 -它不是免费的,但价格便宜且易于使用。它还允许您比较两个目录,并进行三向文件比较。 超越比较有Windows和Linux版本,并且OSX版本正在开发中,但尚不可用。还有其他工具 SourceGear DiffMerge (免费的跨平台= Win / OSX / Linux), 比较一下! (价格便宜,仅Windows), DeltaWalker (成本适中,OSX)和 超比较 (成本适中,跨平台)。

3. 编者 -根据所使用的软件,处理文本文件可能很容易,也可能很困难。重量级的编辑器是集成开发环境(IDE),例如Eclipse或NetBeans或Visual Studio。如果您正在使用特定的软件工具来对特定处理器进行编程,那么这些功能非常有用。但是有时您只需要快速编辑文件即可。操作系统附带的基本编辑器(例如Windows中的记事本,或Mac上的TextEdit)虽然很轻便,但没有很多功能。我喜欢有一个中量级的编辑器:这个类别中一些不错的免费编辑器是 记事本++ 对于Windows和 文字牧马人 对于Mac;我也用过非免费的 超编辑 它功能更强大,可用于Win / OSX / Linux。 SlickEdit 是一名专业级编辑,几百美元,对于大多数任务来说可能过高,但我的一些同事对此表示肯定。 (希望他们不发誓!)

不提编辑就不公平 GNU emacs -这是一个免费的开源编辑器,它起源于大多数操作系统都是基于终端的操作系统,并且如果您喜欢那种东西,大多数命令都是用晦涩的键盘序列激活的,我不喜欢。它是一个非常强大的编辑器,可以通过Lisp编程进行自定义。如果可以在终端中显示,您几乎可以在emacs中执行任何操作。

我要寻找的编辑器的两个主要功能如下:

  • 大文件支持。如果您有非常大的文本文件(兆字节),请确保获得一个可以打开文件而无需一次将所有文件立即加载到内存中的编辑器。这是 对于记事本为true,但对于记事本++和UltraEdit也是如此。
  • “查找文件”功能 -典型的源代码树跨越一个以上的文件,并且通常您会忘记放置内容的位置。 (好吧,至少我忘记了放东西的地方!) 能够在多个文件中搜索单词或模式的功能非常宝贵。 Unix实用程序“ grep”允许您在命令行中执行此操作,但是编辑器中的“文件中查找”功能允许您双击搜索结果并跳转到编辑器中的特定行。

您可能还需要在十六进制编辑器中编辑二进制文件-这使您可以查看和编辑不可打印字符的字符代码。 Notepad ++和UltraEdit都具有十六进制编辑模式。如果您使用的是Mac,请尝试使用独立版 十六恶魔 - 这个很不错。

也有专门 XML文件的编辑器 -在免费类别中,有 XML记事本firstobject XML编辑器“ foxe”; foxe的用户界面有点笨拙,但是对于大文件来说效果非常好。

4. 构建工具 -如果您开始在IDE中编写软件,则只需单击“构建”,程序便会为您编译源代码。当心这种做法。这意味着您要让IDE担心细节,这对于正在学习某些东西的小型系统来说很好,但是有很多选项可以更改软件的编译方式,并且在IDE中,这些选项被埋在菜单中,并且不容易从一个项目转移到另一个项目。如果幸运的话,您可以标识用于存储构建设置的文件,以便可以将其检入到版本控制系统中,因为否则您将不会存储完整的项目源。

再次,这是我的观点,专业软件工程师应使用已定义的构建工具。标准的普通香草解决方案(我只是错误输入了“ pain-vanilla”,并且非常想保持这种方式)是一个名为 使 它是在1970年代引入的,不幸的是仍在使用。 Makefile由几行组成,如下所示:

    foo.obj: foo.c
            cc -o $@ $<

这些“规则”告诉make如何通过执行程序将源文件(例如上述“ foo.c”)转换为目标文件(例如“ foo.obj”)来构建软件。 (在这种情况下为“ cc”。)它们还指示 依存关系:假设文件F3依赖于运行命令X从文件F2创建文件F3,文件F2依赖于运行命令Y从文件F1创建文件F2-构建工具将能够推断依赖关系图,因此如果您更改文件F1,可以确定它必须相应地重建文件F2和F3。这看似微不足道,但是在除了很小的软件项目之外的任何事情中,它都非常重要。我一直在从事一个相对简单的软件项目,该项目有几十个源文件,并且编译所有文件需要5分钟。拥有正确捕获依赖关系的正确构建工具将使您能够执行增量构建,并且仅根据所做的更改来编译必要的构建。

使有很多缺点;除其他外,makefile的语法非常含糊,难以处理特殊情况,即您需要在编译时执行特殊操作而无需编写单独的脚本来执行它们。

对于Java程序,标准工具是 蚂蚁专家;这些使操作更容易,并且可以用于构建Java软件以外的其他系统,但是在一般情况下不经常使用。

还有许多其他构建工具。在最近几年中,我开始将偏好从具有声明性语法的工具(例如makefiles或ant脚本)转移到具有更通用语法的工具。这里的想法是,对于大多数简单的任务,您可以非常简单地描述这些任务,但是如果您想做一些复杂的事情,则可以拥有通用编程语言的全部功能。 (例如,如果您要在特定的构建任务中使用命令行选项“ -On”,其中“ n”等于模7文件的大小,则可以编写一个函数来自动执行此操作)这些包括 (基于Ruby)和 摇动 (基于Groovy)和 坏话af (均基于Python)。我已经使用scons大约3年了,因为我了解Python,并且向我推荐了一位同事。它在某些情况下效果很好,并且非常灵活,但是在其他情况下,很难更改scons的默认行为来执行您真正想做的事情。最近,我刚刚开始使用waf,我发现它可以轻松完成所需的工作,因此,如果您有一个新项目,我建议您查看waf,尽管我希望它的名称不要那么神秘。

5. 脚本工具 -有时您需要组装一个快速软件来完成某项工作。在C或C ++中通常很难做到这一点,因为您必须花费精力编写代码来解析字符串或读取文件等,然后必须将C / C ++程序编译为每个计算机平台上的一个可执行文件。啊。

更好的解决方案是使用脚本语言。这些通常是解释型计算机语言,大多数操作系统都具有解释器的版本,因此,如果编写脚本,则应该能够在多个操作系统上使用它。

现代脚本语言的示例是 蟒蛇, 红宝石Groovy. (I prefer 蟒蛇.) Earlier languages include awk 和 Perl. I have avoided using Perl for a couple of reasons: it has a very strange 和 cryptic syntax, with different prefixes for different types ($foo is a single variable, but @foo is an array), 和 encourages use of "pseudovariables" (<>$_) with side effects that depend implicitly on other actions that have been executed in the program. These encourage bad programming style: making short cryptic scripts that can do something clever in a few lines of punctuation is 不 easily read 要么 maintained by others. I am embarrassed to admit that 10 years ago I used to use awk a lot, because it was simpler than perl; awk is an ancient text processing scripting language that had its place, but in some ways it's just as bad as Perl in encouraging bad programming practices.

无论您的喜好如何,我都强烈建议您使用一种可以在调试器中测试的语言。我在awk方面的经验很糟糕,在调试程序时,我必须输入一些打印语句来确定发生了什么。我对Python非常满意,因为有一个很棒的Eclipse插件叫做 pydev,您可以在其中设置断点并单步执行脚本。

我还使用了一个名为 JSDB 时。 JSDB是使用Firefox网络浏览器中的SpiderMonkey JavaScript引擎构建的独立JavaScript外壳,其中还包括许多用于访问文件,数据库,网络流,串行端口等的实用程序类。它没有集成的调试器(尽管有一个奇怪的调试器具有即时Web服务器,所以您可以将Web浏览器指向计算机上的端口,这将允许您调试程序),有时有点古怪,但是它比Python和Windows XP轻巧得多。对于某些事情,我发现我可以快得多。

我在本节中提到的所有脚本语言都是免费的。

6. 数值分析工具 -除非您做的事情非常简单,例如启用互联网的交通信号灯,否则您可能会在嵌入式系统项目中进行某种数学运算。也许您想对数据进行图形化处理,或对数据拟合曲线,或求解方程式,或设计低通滤波器,或者研究更改参数时系统中的某些变化。数值分析工具将帮助您完成这些任务,并包括以下程序 的MATLAB, MathematicaMathCAD。这些工具都不是免费的,带有所有工具箱的功能齐全的MATLAB版本可以使您花费数千美元,但它们提供了很多功能。 的MATLAB专长于数据分析,而Mathematica专长于符号代数。 MathCAD介于两者之间,采用“所见即所得”的方法:该工作表中可以看到用于导出在MathCAD工作表中看到的输出的每个操作,因此该操作非常透明,如果您打印出工作表,某人可以看到重复您的工作所需的所有步骤。例如,将其与Excel电子表格进行比较,您所看到的是操作的结果;要查看执行该操作所需的步骤,您必须查看每个单元格并查看其中是否有公式。

的MATLAB也有一些免费的软件“克隆”: 科学实验室, 八度PyLab 它们都提供了MATLAB提供的一些基本功能,它们的语法完全相同或非常相似,但是没有一个像MATLAB那样精巧专业。 PyLab的额外卖点是它是使用Python实现的,并为Python提供了科学和图形库,因此,如果您了解Python,则可以利用该知识进行科学计算。

我与MATLAB有恋爱关系。一方面,它是一款精美的软件,可让您进行数值分析和可视化,并带有适用于日光下几乎所有事物的附加工具箱(信号处理,滤波器设计,控制回路仿真等)。另一方面,它并不便宜,MathWorks的销售MATLAB的人们似乎在装作假装,因为他们炫耀自己的最新功能并不关心它的成本。

我对数值分析工具的最后一句话是恳求和简短的抱怨:

不要使用Excel进行数值分析!

当我于1996年开始担任电气工程师时,MATLAB对我并不熟悉,因此当我不得不对数据进行图形处理时,我使用了我所知道的:Microsoft Excel。 Excel是主要针对业务应用程序的电子表格软件,但它具有读取文本分隔文件(例如,逗号分隔的值= CSV文件)并允许您对结果进行图形绘制的能力,并且可以控制绘制图形的方式,因此它适用于图形数据。但是,如果您仅做基本情节之外的其他事情,您会发现它变得非常困难,并且很快就会感到沮丧。如果您要绘制一组数据,则可能还不错,并且可以使它看起来像您想要的交互方式。如果您有一堆想要以相同方式绘制图形的数据文件,那将是一个真正的麻烦,最终您将不得不一遍又一遍地重复做同样的事情。当然,您可以在Visual Basic中编写宏,这是我想在页面上放置多个绘图并使轴对齐时所做的事情,但是随后您会发现可用的对象模型很奇怪,并且可能有些古怪,可能无法让您做自己想做的事情,并且您开始对华盛顿雷德蒙德的某些人产生不良想法。 如果到达Excel中要编写宏的地步,请停止并重新考虑您的情况。 一直以来,您都在花时间让Excel来做您想做的事情,您可以将时间花在学习其他软件工具上,而在其他软件工具中,出于科学目的而不是商业目的来绘制和分析数据要容易得多。请记住,Microsoft的人们正在尝试开发供销售人员和营销人员用来解决问题的软件,而作为工程师,我们获得了碰巧遇到的任何功能。

7. 文档实用程序 -通常,您需要与他人交流您的想法,并且有许多不同类型的软件可以帮助您做到这一点。是的,有一些非免费的Microsoft程序,例如用于流程图/图形的Visio,用于文档的Word和用于演示的PowerPoint。有时,对于某些特定类型的文档,您想要一些免费的或更专业的东西。

  • 图形可视化-在这里我们不是在谈论x-y图表,而是在可视化节点和边的网络。我用过 Graphviz (基于命令行)和 (互动),并且会推荐两者。
  • 序列图-这些序列图使您可视化一系列事件导致软件组件进行交互的用例。 快速序列图编辑器 是相当基本的,但可以帮助绘制这些图表。 

  • “排版”工具(非所见即所得 用于生成文档的软件)- cut狮身人面像 两者都采用ReStructured Text(一种Wiki风格的标记语言)并生成Python风格的文档。编写代码文档所需的工作量很少,尽管两者均适用于Python,但将它们用于任何文档并不难。我前一阵子放弃了TeX和LaTeX,但这是我的个人怪癖,并且两者在科学界都得到了广泛使用,因此您会在这里找到很多支持。还有 DocBook。或者您可以使用所见即所得的软件。谨防。
  • “自我记录”代码工具: 氧气 是其中最常见的一种,它将代码中的注释转换为文档; Java文档 是特定于Java的文档工具。

8. 终端和通讯软件:当您需要通过串行端口进行通信时,该使用终端软件了。在Web浏览器之前,这种情况更为普遍。哪个软件好?朋友不要让朋友使用 超级终端 与Windows捆绑在一起-它不是很健壮-微软最终在发布Vista时停止将其包含在Windows中。我的最爱是 腻子TeraTerm专业版.

其他通信软件处理FTP及其安全变体SFTP和SCP。我这本书中不负众望的获奖者 数码鸭 -它真的很容易使用,虽然最初仅是Mac,但现在可用于OSX和Windows。 (此外,您怎么会不喜欢带有橡胶小鸭徽标的程序?)

9. 软件质量保证(QA)工具:如果您编写软件并且认为自己编写的是没有错误的软件,那么您就在自欺欺人。有很多软件工具可以帮助您在发现错误之前发现它们。好的,在这里我不得不承认我实际上只是一个初学者,并且对那里的内容不是很熟悉。 (对我感到羞耻!)但是我确实知道足够建议一些要看的地方。以下是一些主要类别:

  • 静态分析工具。该软件可以通过原始源代码或编译的目标文件来解析您的软件。最著名的例子是 皮棉 因为C. Lint就像您高中的英语老师一样,在您的论文上撒满了红色的墨水,当您使用“谁”而不是“谁”,或者如果您以介词结束句子时,他们会抱怨。您是否需要严格遵守所有这些规则才能有效地进行英语交流?不,但是这样做可以帮助您防止错误。在C语言中是一样的-编写代码来避免某些不良模式将有助于您防止错误,而lint帮助您查找错误。 Java有 查找错误 并且有类似的程序可用于其他计算机语言。衡量代码复杂性的软件也属于这一类。良好的软件设计通常会使函数的大小保持较小;如果发现编写的函数包含超过20至30行代码,则有可能将它们拆分为更容易设计和调试的较小块。
  • 单元测试和代码覆盖率。通常公认的是,测试大型软件包非常困难,使用“单元测试”来测试较小的软件模块要容易得多,编写“单元测试”可以在单个代码模块上尝试各种输入模式。嵌入式系统中的单元测试可能很困难。一种方法是在PC上交叉编译软件,并希望可以在PC编译版本中检测到软件中的任何错误。当您可以编写自动化测试脚本时,这也很有用,这样,当您对软件进行更改时,就可以运行测试脚本并检查是否引入了任何新的错误。对于 代码覆盖率,我在医疗行业的一些同事使用 大合唱++,这并不便宜,但这些都是医疗设备。
  • 代码“美化”-如果您和您的同事都使用相同的代码样式编写代码,那么您可以更轻松地捕获愚蠢的语法错误。通常我们有自己的样式,但是那里有可以自动缩进并将制表符转换为空格或其他功能的软件。我看过的一个叫做 脱壳,以及称为 UniversalIndentGUI.

10. 基本命令行实用程序

以下许多程序是 UNIX命令行实用程序 从没有图形用户界面的时代开始,必须手动完成工作。除非GUI有了革命性的改进,否则您将始终可以通过命令行进行更多操作,仅因为您可以通过脚本执行的操作组合更多。如果您正在运行OSX或Linux,则已经有这些。如果您使用的是Windows,则可以从以下位置下载将在您的操作系统上运行的二进制版本: http://unxutils.sourceforge.net/ 要么 http://sourceforge.net/projects/unxutils/

  • -这可能是我最常使用的那个;它使您可以逐页显示文件的内容。您也可以搜索文本内容,或者如果您正在查看不断更新的日志文件,则可以键入F,它会不断向您显示最新添加的行。
  • grep -可让您在一组文件中搜索正则表达式。
  • 触摸 -这会将文件的最新修改时间更新为当前日期/时间,或者如果文件不存在,则会创建一个空文件。
  • 三通 -- piping a command through 三通 (e.g. someprog | 三通 logfile) lets you copy the output of that command to a file while also printing the output to the terminal.

  • 哪一个 -如果在终端上运行程序foo.exe并想知道该程序的位置,只需键入 哪一个 foo.exe
  • 尾巴 -这些使您可以打印文件的前N行。
  • 优衣库 -过滤输出以删除相同的连续行。
  • -打印目录的磁盘使用情况(占用的总空间)。
  • 厕所 -计算文件的行数,单词数和字符数。 (我在写给编辑的信中使用它,以便使字数保持在报纸允许的最大数量以下。)
  • cp,rm,mv,ls,cat-这些都具有DOS等效项(复制,删除,重命名,目录,类型),但是脚本有时需要UNIX等效项,因此我将它们安装在了自己的路径中。
  • md5sum -通过计算文件的MD5哈希值来验证文件完整性。
  • gzip 和gunzip-这些压缩和解压缩单个文件; .gz格式不如.zip常见,但是您偶尔会发现它,尤其是在以压缩形式传输的网页中。
  • get卷曲 -这些程序可让您在浏览器外部通过HTTP下载网页,例如,如果您想直接将已知网页下载到文件中,或“屏幕抓取”页面内容。它们不是标准的UNIX程序。 get来自GNU项目,而curl是它自己的特色。在大多数情况下,我更喜欢卷曲,因为它可以使您做更多。

好吧,这就是清单的全部内容。很难将我的名单减少到10个。其他一些程序,例如 7zip, 中央处理器系统资源管理器 本来可以晋级的,但我想坚持十个清单。

祝您运算愉快!


[-]
评论者 弗里德里希斯2013年3月11日
对于序列图,还有MSCGen(http://www.mcternan.me.uk/mscgen/)。我之所以使用它,是因为它将格式化的文本文件作为输入,并吐出类似于您所拥有的序列图。它还可以与Doxygen集成在一起,以便将序列图合并到Doxygen文档中。
[-]
评论者 启示2012年5月21日
For embedded development, I use "uCon" for RS232 和 Telnet. It is simple to use 和 free. http://www.umonfw.com/ucon/index.html
[-]
评论者 加密人2012年6月30日
我必须承认,这是相当不错的要领清单。我个人经常使用Subversion,BeyondCompare,Visio,Perl,MATLAB,Excel和Word。我也同意使用Excel进行数值分析是一个坏主意! Excel可以很好地可视化数据,但很难用于硬性数值分析。 我还必须在这里提及名为Source Insight的编辑器/解析器。我经常在工作中使用非常强大的解析器和编辑器。不幸的是,它不是免费的,但是如果您定期开发代码,您会发现它值得每一分钱! 我选择的终端软件是RealTerm。它非常强大且易于使用。那个也是免费的!
[-]
评论者 稻田31182013年5月18日
没有病毒!

Unix / Windows / Mac的vim编辑器&Android可以随心所欲地变得强大。它具有图形和/或文本差异功能,可显示最多四个文件之间的差异。 Vim是一个程序员编辑器,具有许多插件和一个活跃的社区: http://www.vim.org/about.php
[-]
评论者 2012年7月6日
不错的工具列表-我听说过(和使用过)大多数工具,但是您肯定会在清单中找到几个要检查的工具。 SciTools提供的Understand是我们用来快速掌握客户代码库的一种工具,它不是免费的,但有助于查看整体代码结构,并且对文档编制和代码分析都有好处-如果需要,值得一看那类的东西。
[-]
评论者 费尔顿2012年7月8日
+1 不要使用Excel进行数值分析!
[-]
评论者 沙沙耶2012年7月15日
不错,它确实涵盖了编程所需的所有基本工具。
[-]
评论者 迈克莱克2012年8月8日
坦克·杰森(Thansk Jason)。大量的工具和大量的经验教训。很难将列表保持在10位,但是我将添加一个Bug跟踪工具,即使对于最小的开发团队也必须如此。能够跟踪问题,重现可见问题的步骤,增强功能的请求以及对错误/增强的优先级在帮助创建高质量产品方面大有帮助。
[-]
评论者 斯梅格海德2012年9月20日
我发现自己在笑您的ATM图。很好

在脚本和/或命令行工具上,awk是一种非常有用的工具(未列出)。如果您发现自己编写的脚本最终将循环很多行,那么考虑将其通过awk而不是bourne脚本中的循环是非常值得考虑的,因为它会在一小部分中完成。时间。

对于统计数据之类的数学扭曲,我一直在玩学习R的游戏。这里有没有人利用它?
[-]
评论者 弗兰克452013年1月4日
TeraTerm是一个很棒的程序。但是,您需要TeraTerm,而不是TeraTerm Pro,尽管其名称根本不是Pro。它是该程序的旧快照,存在错误且未开发。原始作者将程序重新拿回来,并在这里积极开发
http://en.sourceforge.jp/projects/ttssh2/releases/
[-]
评论者 jms_nh2013年1月4日
感谢您的注意!
[-]
评论者 编码器2013年5月4日
对于Windows上的编码需求,我使用Zeus程序员的编辑器:http:\\www.zeusedit.com

只是喜欢它的Brief键盘仿真。
[-]
评论者 戈登雷2013年5月6日
很好的文章,现在我知道了更多软件包。我还使用Notepad ++,BeyondCompare,Visio和最近的Visual SlickEdit。我还使用IBM RTC的Tortoise SVN进行源代码控制。以下应用程序不是真正的开发应用程序,但是非常适合卸载并删除大多数卸载程序留下的内容。这个程序叫做Revo Uninstaller,是免费的。如果您确实执行了许多安装并重新安装了Etc,则此应用可能会有所帮助。我不认可也不隶属于开发人员,但我发现它非常有用。
[-]
评论者 福斯特2013年5月15日
程序员必备的清单!此后,我将把任何新手介绍给您的文章Jason Sachs!
[-]
评论者 丹尼斯652015年11月21日
比较一下!现在(2015)在Windows,Mac和Linux上运行。

要发布对评论的回复,请单击每个评论所附的“回复”按钮。要发布新评论(而不是回复评论),请查看评论顶部的“写评论”标签。

注册后,您可以参加所有相关网站上的论坛,并获得所有pdf下载的访问权限。

注册

我同意 使用条款隐私政策.

试试我们偶尔但很受欢迎的时事通讯。非常容易退订。
或登录