我是一个拥有超过15年经验的Windows开发人员。 我刚开始看Ubuntu Linux的最新版本。 有人能指点我一个针对Windows用户的Ubuntu初学者指南(最好来自开发人员)。 我find了几个使用谷歌,但不幸的是,我知道这个问题上这么less,我不能告诉一个坏的一个很好的指导。 我有版本10.04 LTS。
Linux世界比Windows世界更加分散。 对于开发GUI程序,有几个GUI工具包可供选择(GTK和QT是最受欢迎的两个;也有FLTK,TK,甚至老的Motif仍然在踢)。
系统编程非常好, 在UNIX®环境(第二版)中购买高级编程的副本,您将有足够的资源在数十个平台上编写出色的系统工具。
如果你处于中间层,比系统编程更高层次,那么你通常会使用其他库和工具包:Apache,PostgreSQL,Hadoop,libevent,Tomcat,Ruby on Rails,Django,expat,GnuTLS, OpenSSL,Perl,Python,Ruby,Erlang等。弄清楚你需要使用哪一个选项可能会让人望而生畏,但是大多数项目都有合理的文档。
大多数的工具都有manpages:skim man man
,然后: man 1 intro
, man 2 intro
, man 3 intro
, man 4 intro
, man 5 intro
, man 7 intro
, man 8 intro
。 (如果你愿意的话,可以随意看man 6 intro
号man 6 intro
,但手册第6部分是针对游戏的。) 1
是用户命令, 2
是系统调用, 3
是库调用, 4
是设备文件, 5
是配置文件, 7
对于“框架”( socket(7)
和ip(7)
为套接字和IP细节), 8
为系统管理命令。
也许要求具体的建议会导致更具体的答案 – 简单的事实是,在Linux系统上没有简单的单一编程指南。
我会检查出http://www.wiki.ubuntu.com 。
有人可能会争辩说,特别是学习Linux的发行版对整个“Linux心态”来说是违反直觉的。 恐怕我无法用良好的指导资源来具体回答你的问题,但是我发现在寻求新的东西的时候,能够提出问题的地方比包罗万象的东西更重要。 为此,我还建议http://ubuntuforums.org/ – 它会给你一个机会来澄清任何东西无法回答的任何东西。
我也可能会建议在学习时忘记你所知道的关于Windows的一切。 十五年来,我相信你是一位经验丰富的Windows开发人员。 有很多东西可以很好地传递,比如良好的编码习惯,还有一些看起来(甚至是)反直觉的东西。 如果你学会了这些,并且接受你的学习,而不是失败,那么Ubuntu的安装和学习的愿望会比任何Ubuntu的东西都要好。
Ubuntu论坛有很多很好的信息,你也可以在ubuntu上提出具体的问题
首先我会看https://help.ubuntu.com/community/Programming一些想法
但是为了让我们更有帮助,你需要决定你到底想要发展什么? 例如,它是一个C#,C ++或Java应用程序? 它是一个桌面,移动或Web应用程序?
对于不同的项目有不同的工具。
通过你以前的问题,我会认为你是一个C#程序员,所以我会看看单声道项目