Windows缺少程序员所需的哪些默认功能?[关闭]


13

Windows缺少哪些功能可以提高程序员的生产力。我知道很多人都希望Linux和OSX的某些功能也可以移植或为Windows创建。您还缺少什么?

一个示例是具有多个工作空间的选项。如果无法使用方便使用的双显示器。


多个工作区?您的意思是...子目录?
Shog9 2010年

10
@ Mr.CRT您曾经使用过Linux吗?
Ygrec 2010年

7
我认为“工作区”是指虚拟桌面。
杰西·布坎南

@Ygrec:是的。如果按照jbinto的猜测,如果您指的是虚拟桌面,那么我不确定这是否是必不可少的程序员工具。我发现它们对于诸如图像编辑之类的任务非常有用,但对于编程而言,一次打开多个控制台就足够了,并且两个OS都支持该功能(尽管在可用shell中存在相当可悲的区别)。
Shog9 2010年

gnome和kde都将虚拟桌面的功能称为工作空间,这是迄今为止最常见的linux桌面环境,tomato / tomato。
四元组

Answers:


14

编译器和有用的shell。


根据评论澄清:

我不清楚,我应该写C / C ++编译器。C#或Fortran编译器不算在内,因为您需要的许多工具和库都需要C或C ++编译器。过去确实很糟糕,您无法使用Microsoft以外的其他编译器为Python构建C扩展,因为那是使用Python进行编译的,我认为MinGW已解决了这一问题,您现在可以使用MinGW来完成,但这是一个很好的理由为什么20年前应该包含或免费提供标准C / C ++编译器。微软直到最近才开始了解拥有一批业余程序员的力量。

我没有使用过powershell,也许很好。但是bash对我的用处不在shell语言中。* sh系列语言无论如何都是可怕的野兽。我什至更喜欢批处理文件。;)诸如命令历史记录回忆和搜索之类的东西在Windows中是相对基本的,并且具有管道,而我正在谈论(而且我看到Powershell具有管道,所以很好)。

Windows中也有一些不错的东西,但这是另一个主题。;)


2
这就是Linux发行版通常捆绑多个编译器和解释器以及软件包管理器提供的更多功能的原因。
david4dev 2010年

1
@Victor Hurdugaci:您确实有一个要点,但是最明显缺少的一点当然是针对C / C ++的编译器。
Lennart Regebro

4
当然这个答案已经过时了-你在Windows 7中得到一个编译器和一个合理的外壳(PowerShell中)
FinnNk

1
@Matt:恩,那只是你的语言偏执。除了Microsoft语言外,还有许多免费的其他语言可用的免费编译器,我怀疑您会指责他们在您身上推挤一种语言。
罗伯特·哈维

4
当然是有用的外壳。绝对荒谬的是,在2010年,您无法最大化命令提示符窗口。WTF ?!
科林·古迪2010年

10
  • 能够以多种语言(C,C ++,Python,Perl,Ruby ...)编写和运行程序,而无需安装任何其他功能。
  • 默认情况下,至少安装了一个带有语法高亮显示的文本编辑器。
  • 软件包管理器,以便您可以轻松安装其他库,版本控制系统,IDE等。
  • 强大的命令行界面。
  • 可以调整GUI以实现最高效率(键盘快捷键,热角等)
  • 手册页
  • 易于获得操作系统和软件包的源代码并获得许可,以便您可以重复使用。
  • 在适度的硬件上具有良好的性能。

2
“具有易于获得和许可的操作系统和软件包的源代码,以便您可以重复使用它。” 什么?
Ygrec

2
apt-get source package-name每当您想知道特定软件包如何工作时。
david4dev 2010年

4
我不同意你的第一点。为什么要用不同的编辑器,编译器和运行时环境来膨胀OS,希望您会满意每个人?最好让每个程序员安装他需要的东西。
Victor Hurdugaci 2010年

3
@Victor Hurdugaci:Windows是否这将是真正是不是已经臃肿与显然没有。典型的linux安装要小一个数量级,并且附带所有这些内容。
马特·乔纳

2
(1)我刚刚安装了Ubunto,就像在Window上一样,必须分别安装语言和开发工具。(2)记事本确实是一个不足的默认编辑器;TextPad更接近最佳位置。(4)Window的整体键盘支持比我使用过的任何Linux桌面都要好;我可以操作的台式机和大多数应用程序在没有插入连鼠标。

4

我为Windows开发了将近20年,我可能会从标题中删除“ required”。当然,我已经开发了相当不错的实用程序和工具箱。请参阅Scott Hanselmann的初学者列表。它是一流的,并且可以追溯到2003年。

顺便说一句,Windows 7 包含PowerShell,可帮助处理“体面的外壳”注释。

就是说,内置更好的工具总是很不错的。请使用Scott列表中的任何工具。

实际上,MS当然可以改善许多内置工具的用户界面,例如regedit,任务mgr(参见Process Monitor)和事件性能查看器工具。内置支持多个剪贴板会很好。我想从OSX公开它们的多桌面支持。如果Windows本机(也更容易)支持从文本框中拖动文本,那将是很好的。

XCode确实很烂IMO,所以我在Windows上不希望这样做。VS更好,但不是内置的,因此内置VS Expess可能具有升级功能。当然,操作系统的占用空间随之增加(就像OSX一样),因此也有一个缺点。

分布式gcc非常好,因此作为供任何编译器使用的内置框架,将非常受欢迎(请参阅Incredibuild以获取VS解决方案)。

如果能够更轻松地获取和使用OS的Checked Build查找问题,那就太好了。使用调试电缆对于从Checked Build获得的良好信息有点极端。虚拟机可以轻松做到这一点-如果是这样,请通过链接发表评论。


是的,如果没有一个适度的文本编辑器是一个开始,那么基本的IDE会特别好。
FinnNk 2010年

@FinnNk,您对“中等确定”的文本编辑器有哪些要求?

对语法突出显示,正则表达式搜索/替换,多个窗口,可见的空白和行号的某些支持-因此我没有想到emacs之类的东西(尽管这可以作为一个不错的选择)。尽管不是真正的文本编辑器,但如今对于.NET代码的一点点,我经常使用LinqPad。
FinnNk 2010年

4

BASH,sed,grep,awk,find和ssh


我已经在Windows上运行了大多数此类软件,并且可以使用powershell来完成上述大多数操作。
Murph 2010年

2
带有x Windows支持的ssh;)Bash功能强大,但是其下的所有内容都是可自定义的,shell的功能仅在于它可以操纵的资源。
四元组

因为程序员什么时候需要awk和sed?
2012年

2
  • 复制/粘贴多个对象
  • 粘贴无格式(无字体/大小信息)

3
+1表示无格式。我总是最终粘贴到网页或记事本上的文本区域,然后剪切以删除文本样式。
Macneil 2010年

3
Windows确实支持纯文本粘贴,应用程序仅需要将其实现为选项。
GrandmasterB 2010年

1
@GrandmasterB然后希望将无格式的剪贴板设置为默认格式。
pestaa 2010年


1

Unix文件处理工具(wc,sort,uniq,awk,cat,grep,find等),包括(如其他人所提到的)良好的shell(例如bash)。

为了在Windows中高效工作,当我使用与文本相关的任何东西时,最终我都需要进入Unix命令工具箱。幸运的是,Cygwin正是用于此目的的绝佳资源。

就是说,您确实需要“驯服” Cygwin才能与Windows文件系统很好地协作。除非您覆盖某些默认设置,否则可以获得具有难以删除的讨厌权限的文件。任何超出基本需求的东西,您最好使用VM或双重引导,但出于我的目的,我对Cygwin感到非常满意。


0

我同意其他帖子,因此添加:

我想与x转发vs Windows远程桌面的ssh。对于那些不知道的人,您可以在网络上运行桌面程序,但它的作用类似于本地窗口。


0

支持更长的命令行参数。在构建不使用Microsoft构建系统的复杂Java解决方案时,您会很快遇到问题。


0

valgrindgcov

我在Windows上进行开发时(出于业余爱好)使用PowerShell,并且已经安装了GnuWin32工具(sed,awk,grep等...)和Python,以获得一些简单的脚本编写,因此没有任何问题。

但是,每当我想检查程序时,我都会碰壁……当然,我可以使用调试器(有点),但是:

  • 如何发现内存泄漏?
  • 如何识别记忆猪?
  • 如何识别热点?
  • 如何识别未使用/未经测试的代码部分?

我到处都看到了一些工具,并且在StackOverflow上有一个很好的问题,列出的工具数量非常令人恐惧……其局限性也是如此。

Linux是开发人员为开发人员开发的,因此它获得了更多开发人员友好的工具:)


0

具有历史记录功能的复制/粘贴。

幸运的是ClipX提供了一个解决方案:

剪辑

PS我不隶属于ClipX;)


-1

就“默认”功能而言,一个不错的外壳加上一个编译器将是一个好的开始。


csc.exe包含在.NET框架中。您可以使用它来编译C#代码。
Victor Hurdugaci

@Victor:附带的Windows附带吗?
乔什(Josh K)2010年

是。.NET 3.0随Windows 2008和Vista,而3.5是随Windows 7
维克多Hurdugaci

3
我同意,如果我们谈论的是Windows的当前版本,那么此答案没有任何意义-您同时拥有编译器和Powershell。
FinnNk 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.