在 Windows 上使用 Linux 的优势?

C-d*_*zle 5 linux windows

我想更多地使用Linux,我所有的编程和开发都是在Windows下完成的。但我想知道在 Windows 上使用 Linux 的核心优势是什么?我在 Linux 中可以做什么而在 Windows 中不能做什么?

Spl*_*aos 10

许多空闲点同样适用于所有 POSIX 操作系统和许多其他替代操作系统。

  • 具有管道、重定向和后台进程的强大终端模拟器。bash 是默认的 shell,是一种编程语言,可用于日常系统管理。它比 DOS 强大几个数量级,因此许多人选择使用终端和文本编辑器而不是 IDE。
  • Linux 提供了许多不同类型的进程间通信。套接字、共享内存、管道、FIFO 等。
  • Linux 的 fork-exec 模型让您更轻松地编写并发程序。
  • 标准化的文件系统布局,虽然从发行版到发行版略有不同,但允许创建自动安装脚本。
  • 由于上述原因:包管理器,它会自动安装新的库和程序及其依赖项。在 Windows 上,您必须手动安装大多数库配置编译器;在 Linux 上,您输入“apt-get install”或“yum install”或“emerge”(分别适用于 Debian/Ubuntu、Fedora 和 Gentoo)。这也是分发准备好供大众使用的软件的好方法。
  • 免费,持续更新。永远不要花钱升级您的操作系统。
  • 更好的社区和社区知识。Linux 程序员更了解他们的操作系统是做什么的,因为你可以 A) 阅读它的源代码,B) 更接近它的工作,以及 C) 找到更多关于其内部工作的参考资料。他们还通过邮件列表、论坛和此类网站进行更多交流。开源软件在 Linux 上变得显而易见,我们喜欢共享代码。
  • 更好的文档。不知道如何运行某个程序?输入“男人”。想知道 C 函数的行为吗?“男人”或有时“男人3”。
  • 定制。您可以自定义任何内容,包括内核。您可以更改桌面 GUI,甚至尝试平铺窗口管理器。大多数发行版允许您在多种不同的文件系统之间进行选择,包括 ext4、XFS、JFS、Reiser 等。这也有助于 Linux 用户更多地了解他们的操作系统。


Bru*_*ger 5

我相信最大的优势是您不会被绑定到特定的供应商。例如,如果您不喜欢 GNU C,则可以使用 Clang。如果您不喜欢 Apache,请使用 lighttpd 或 Nginx 或 cherokee 或......任何给定技术堆栈的极少数部分不允许替代品。

与供应商无关的另一面是标准、书面标准几乎适用于所有事物。这是一个比任何来自“专有世界”的人所能想象的更大的优势。人们使用书面标准编写文档。人们编写符合(至少大部分)书面标准的代码。没有人会从你身下拉出地毯,因为大型软件供应商倾向于*咳嗽*BEA*咳嗽*。拒绝修复错误的项目最终会被“分叉”并被取代,因此实际上倾向于遵守标准,而不是口头上提供*cough*OOXML*cough*。


小智 2

我总是对我的朋友说,Linux 对待开发者就像对待自己的孩子一样。将程序与库链接起来真的很容易,你有很多很棒的编辑器可以使用(vi、emacs、Code::Blocks、Geany...),bash 非常灵活(一开始你不会使用它)非常多,但是当你开始时,你会发现有些事情变得更容易),并且如果你愿意,你可以编辑基本上所有内容的代码。

但对我来说最重要的是包管理器(fedora 为 yum,ubuntu 为 apt,arch 为 pacman)。包管理器会检查您想要安装的每个软件和库的每个依赖项并安装给您。它会检查每一个更新。总的来说,它……让您的生活更轻松。

Windows 本身没有这样的东西。

此外,Linux 还兼容 POSIX。这意味着为其他 POSIX 兼容操作系统(如 FreeBSD、OpenBSD、OpenSolaris,甚至 Mac OS/X)制作跨平台软件应该更容易。Linux 的几乎每个库都是标准的(Windows 有许多仅适用于它的超级特定实现,如 MFC 或 DirectX),因此制作适用于 Windows 的软件版本也不应该那么困难。