提问人:MainID 提问时间:2/20/2009 最后编辑:MainID 更新时间:2/22/2009 访问量:1733
哪个 linux 发行版适合 linux 编程的新学习者?
Which linux distribution fits a new learner of linux programming?
问:
当我提出 linux 时,我发现 OpenSuse 和 Ubuntu 中的命令不同。
它们中的哪一个适合刚接触 linux 并想要掌握该命令的人
编程和使用 Linux 时需要吗?
答:
我们必须更好地了解您的偏好才能回答这个问题。我猜基本上任何 LINUX 都可以。不过,我从Ubuntu那里听到了很好的反馈。
我会投票给 Ubuntu。原则是相同的,而一些“命令”是不同的。我假设你的意思是诸如“sudo”之类的差异。
我对我的 Ubuntu Server 非常满意,它可以处理我所有的开发 Windows VM。我什至在我的笔记本电脑上使用过一段时间的 Ubuntu 桌面......至少在我再次需要 Visual Studio 之前。:-)
编辑 - OpenSUSE 中确实存在“sudo”
评论
我更喜欢 Ubuntu。我的 2 美分......
不管你周围的人可以问哪一个问题。知识渊博的支持网络的价值远远超过特定分布的好处。如果你没有本地支持网络,我会选择Ubuntu,他们往往在网络上有更多有用的资源(这是我更喜欢这两个选项中的发行版)。
它们是工具。使用您最熟悉的那个。真正称它们为工具并不是一个好的类比。更好的做法是称它们为车辆。使用适合您需求和愿望的车辆。
我的印象是 OpenSuSE 做了一些非常规的事情(kdesu、gksu),但它是一个很好的 (KDE) 发行版。我发现 (K)Ubuntu 对初学者来说更好一些,因为它可以访问庞大的编译包存储库,而且社区无与伦比。
它们在大多数事情上都非常相似,包括编程。
实际上,作为一个程序员,你每天都会遇到这样的问题。哪个框架?哪种语言?哪种数据结构?...你明白了。没有正确的答案。
选择任意。它们没有太大区别。很快你就不会成为“新学习者”,然后无论如何都没关系。
在不同的分布中,原则大多是相同的,所以我建议你选择一个并深入研究。但是,需要考虑一些因素。如果你想对GUI程序进行编程,你需要决定使用哪个图形工具包库(Qt、Gtk+等),这也意味着你要选择你的桌面环境(GNOME、KDE、XFCE)。正如你会注意到的,在Linux世界中,一切(或几乎所有东西)都依赖于其他东西。我说的是包裹。重用可用的库而不是编写自己的库是很常见的,因此您可能必须做出的决定是关于使用哪些库/框架以及哪种语言。
然而,我选择了 Ubuntu,一点也不后悔。
这取决于你想做什么。如果您想要一些易于设置并且基本上可以工作的东西,请使用 Ubuntu。如果你想/learn/ Linux,我会推荐Slackware。启动并运行 Slackware 将迫使您了解安装的方式和情况。这可能是好事,也可能是坏事,这取决于你的愿望。
根据您想要学习的深度,一个可能的候选发行版是 Linux From Scratch。它也有很棒的文档,通过玩它肯定会让你更像“Linux”的方式。
这是一个非常困难的问题;大多数发行版的目标是成为“最好的”,或者至少“足够好”,可以进行各种各样的活动,当然包括编程。
这也是一个容易引发“战争”的问题,人们争相声称他们使用的发行版是最好的,而所有其他发行版都应该遵守。嘿。
我目前偏爱Gentoo,我认为它在编程时的一个(可能是次要的)优势是,由于它是一个基于源代码的发行版,你通常不需要费心去获取软件包的“开发版本”。如果你安装了readline,你也会有它的头文件,依此类推。许多其他发行版将软件包拆分为“用户”和“开发人员”版本,因此您需要同时安装这两个软件包。
当然,我想在这些情况下,开发人员软件包无论如何都依赖于非开发人员版本,所以如果你总是安装开发人员版本,你就万事大吉了。那好吧。那就没关系了。:)
评论
我现在在 Ubuntu 上运行。它比 Windows 更容易运行。非常顺利。当然,高级功能现在超出了我的范围。有了 C# 类和其他所有东西,我放弃了尝试学习太多东西,只是按原样运行它。它有一个非常好的用户界面,我听说一个新版本已经出来或即将出来,可能更吸引眼球。
查看 Ubuntu。做双启动不会有什么坏处,因为那时你可以尝试一下!您也可以直接从光盘上运行一些发行版来尝试它们。免费时尝试一下也无妨。对我来说比XP稳定得多,而且速度更快。我希望 Windows 7 最终不那么像一个怪物!如果 Ubuntu 与 Windows 程序更兼容,我会坚持使用它。在学校期间的 .NET 开发通常不是在 Linux 发行版上完成的!
最好的祝愿,试试吧!
评论
Ubuntu 适合构建,社区非常有帮助。
在选择 linux 发行版时,我通常会考虑两件事:
1:包装系统(和发布周期):
Opensuse 可能拥有所有发行版中最新的软件包(无需构建自己的软件包),但 Ubuntu 的打包系统往往会更多地握住您的手。我两者都使用过,发现作为开发人员,我更喜欢 Opensuse,因为它更容易获得最新版本的开发包(例如 IDE)。
2:默认配置/易于管理:
所有 linux 发行版在这里都有它们的怪癖。Opensuse 和 Ubuntu 都有充分的文档记录,并且有很好的支持论坛。Opensuse 有 Yast,它是大多数配置任务的一站式商店。Ubuntu 似乎在自动配置自己方面稍微好一点。真的,任何一个发行版在这里都很好。
好消息是,这个决定本身并没有错误。我使用过很多(超过 10 个)Linux 发行版,现在我坚持使用 Opensuse。Ubuntu 紧随其后,我不使用它的唯一原因是我发现我经常被困在等待其 6 个月的发布周期以获取最新的开发包(当时构建 monodevelop 测试版是不可行的)。Opensuse 的构建服务和 Packman 第三方存储库似乎为我想要的一切保留了几乎最新的软件包。
如果你以程序员的身份探索 Linux / GNU,你可以考虑选择使用 apt 打包工具的发行版。
您可能需要安装大量带有开发头文件的库,并获取其他东西的源代码。apt 使做这些事情变得非常简单,它非常擅长解决包依赖和获取源码包。
使用 apt 的发行版(带有 .deb 或 .rpm 软件包)是 Debian、Ubuntu(及其分支)等。
话虽如此,Ubuntu 在跟上最新的库和工具方面做得很好,同时抵制了挑选 alpha /不稳定代码的冲动。我的桌面是我的开发机器,我使用 Ubuntu。
Gentoo是最容易使用的。我会同意的
我使用 Gentoo 和 Ubuntu 进行开发。
我喜欢Gentoo,因为我可以很容易地选择我可用的软件包和版本。做Flash 9和Flash 10的人也在Gentoo系统上进行开发。
我现在喜欢 Ubuntu,因为它非常稳定。几年后,Gentoo的安装会出现一些不稳定的问题,有时需要重建整个安装。
我想看的另一个是 Slackware。
评论
emerge -e system; emerge -e world
任何 Ubuntu/Slackware/Gentoo 都应该可以作为开发环境。你没有提到你对什么样的编程感兴趣,这可能也会对答案产生一些影响。
如果你对编写更好的代码感兴趣,我还建议你双引导(或运行第二台计算机)进入非 Linux 系统,例如 OpenBSD/FreeBSD、OpenSolaris 等。编写跨 UNIX 系统可移植的代码不仅是为了可移植性而好主意,它还有助于消除一些错误。使用 32 位与 64 位、大端与小端平台也是如此。您可以以低廉的价格购买一个旧的 64 位 Sun 工作站,并用它来测试您的代码。
评论