Windows下的开发环境

Windows下的开发环境,windows,unix,cmd,Windows,Unix,Cmd,对于在Windows中设置开发环境,特别是在不使用IDE时,您有什么建议。我正试图熟悉Windows,我感到有点迷茫。开发人员通常从事哪些工作,尤其是在同时使用多种语言(如Java、Python、C)开发时 到目前为止,我一直在强硬地使用Mac+Linux环境,我非常喜欢我的命令行。我几乎在终端中运行所有编译、测试和代码存储库命令,并且一直有多个终端。终端功能(例如集成的bash完成、轻松的复制和粘贴、易于设置的环境变量)和包管理工具(例如apt-get、port、fink)非常方便。我不喜欢搜

对于在Windows中设置开发环境,特别是在不使用IDE时,您有什么建议。我正试图熟悉Windows,我感到有点迷茫。开发人员通常从事哪些工作,尤其是在同时使用多种语言(如Java、Python、C)开发时

到目前为止,我一直在强硬地使用Mac+Linux环境,我非常喜欢我的命令行。我几乎在终端中运行所有编译、测试和代码存储库命令,并且一直有多个终端。终端功能(例如集成的bash完成、轻松的复制和粘贴、易于设置的环境变量)和包管理工具(例如apt-get、port、fink)非常方便。我不喜欢搜索不同的网站来安装他们最新的二进制版本

回到我的问题上来。我的问题有两个:

  • 常用的是什么?Windows上的开发人员通常使用命令行,还是仅仅对IDE感到满意

  • 对于来自Linux/Mac世界的新手:您建议如何提高速度


  • 注意:我意识到很多Windows开发人员都没有使用Linux,所以他们可能不知道我说的Linux环境是什么。

    不使用IDE进行Windows开发几乎是前所未闻的

    我在80年代初开始编程,所以是在命令行上长大的,但在生产力方面,没有什么能比得上现代IDE

    到目前为止,最常见的选择是VisualStudio,尽管我也使用过(开源),并且发现它是一个很好的平台,可以快速地使用

    我已经广泛使用了Eclipse(在Linux和Windows上),并且发现VisualStudio更易于使用。我特别怀念在windows下进行调试的选项,例如在调试期间移动指令指针,更改并继续(在限制范围内更改代码,在调试时,如果需要,将指令指针移回原位,并保持调试)

    如果您使用过Eclipse、Visual Studio或#develop,则不难适应。

    我倾向于安装,它是一个unix仿真层,包含许多标准unix实用程序(grep、awk、sed等)。您可以将bash或任何其他unixshell与cygwin一起使用,基本上为自己在windows上提供一个unix环境

    有一些缺点,路径就是一个很好的例子。Windows程序需要Windows路径,而unix工具需要unix路径。您可以使用cygpath程序在两者之间进行转换,但有时很难知道何时使用它

    我经常做的另一件事是创建一组批处理文件,将不同的程序加载到我的路径上。这允许我安装不同版本的java,并且我可以为任何给定的shell会话选择想要使用的版本。我把这些链接在一起,这样我就有了一个完整的环境来完成我正在进行的项目。例如,如果我需要Java1.5、maven和subversion,那么我将有一个批处理文件来将每个批处理文件加载到环境中,然后有一个主文件来加载标准环境中的所有批处理文件


    这种方法提供了很大的灵活性,并且非常容易维护,并且可以同时在不同的环境中工作。

    大多数在microsoft产品堆栈上开发的windows开发人员可能使用Visual Studio。对于没有Visual Studio的windows开发,是当前最流行的替代方案

    但是,如果您正在寻找与linux更相似的用户体验,则可以始终使用windows命令提示符,并且所有命令提示符编译器仍然存在。就像linux一样,您必须修改您的环境变量,以使您希望的一切工作正常

    如果这与linux上的感觉还不够接近,您可以尝试一下

    许多来自linux的公共实用程序,如gdb

    当然,还有一种语言是由许多人在多个平台上使用的。它是非常可扩展的

    您可能缺少的其他一些工具:

    • (我不确定是否仍在使用/支持)
    • 将有许多不同的文件/进程监视实用程序,希望能够充分取代您在/proc中所错过的功能
    • (或以太)来代替井。。。线鲨/以太/
    • 在Windows资源工具包中提供

    希望这涵盖了你的大部分基本任务

    除了Cygwin之外,还有许多GNU实用程序和Windows工具链的端口。似乎是一个比以前更新的版本。本质上是BASH到Windows的一个端口,但如果没有用户区,它将毫无用处。

    C++/.NET开发:
    Java/PHP开发:,它还支持C/C++

    对于非IDE解决方案,它是一个非常好的代码高亮器,支持多种语言。

    只需安装即可。近年来质量有了显著提高。我目前正在Vista上运行cygwin x64,非常棒

    在cygwin中需要特别注意的一件事是你的道路。大多数脚本和已安装软件的故障排除应该从那里开始


    我给的另一个提示是使用标准版cygwin终端。现在它可能默认安装,但请检查以确保。

    微软现在有了一个真正的Windows外壳:。

    • Visual Studio for.net/C++(即使是快速版也很有用)
    • sysinternals工具,尤其是Procmon和process explorer
    • 如果您从事本机/C++工作,了解windbg会很有帮助
    • 记事本++和gvim是我首选的编辑器
    • 为了完成命令行/shell的工作,我经常使用python编写简短的脚本(除了最简单的批处理文件以外的任何东西)
    • 如果您熟悉.net,那么学习powershell并不是一件容易的事,而且有大量可用的功能

    如果您安装Mintty,它看起来也不错!