① 我是一名java程序员 我想学linux操作系统 学哪个版本最好给个具体下载地址吧
其实最好的版本是redhat 或者centos,但是看样子你对linux不熟悉,所以ubuntu最适合你,wubi安装很方便,linux也有eclipse的,但是你想部署项目,那命令行是必学的了
② 哪个Linux发行版最适合程序员使用
标准答案肯定是‘视爱好而定’:喜欢开箱即用的选Mint,喜欢支持广泛的选Ubuntu,喜欢稳定的选Debian / CentOS, 喜欢port-like系统的选择Gentoo,喜欢软件更新的选Arch。
另外一种标准答案是‘区别不大’,确实,今天Linux软件日趋完善,开源生态圈工具繁多,已经不是10年前5年前的样子了。
第三种标准答案是‘和服务器环境一致’,这个就不用解释了。
但是我还是要投Arch一票。不是说别的系统不好,而是说我真的非常享受Arch的优点。
1) 完善的单点包管理系统,你可以用同一套软件管理系统管理Arch官方的源,网友制作的软件包,从源代码编译的软件包,同时,你可以轻易的重新编译某个特定的系统软件包,增加/修改一两个编译选项,或是制作自己的软件包。根据我的经验,Arch的软件包模型非常好的避免了其他发行版不同软件源之间的冲突,或者是不同软件版本共存的依赖问题。
2) Rolling - 只有一个不断更新的版本,没有版本更新的困扰,就没有系统是13.04结果发现某个软件只支持12.04和13.10的困扰,查看文档的时候不用担心某个特定版本的解决方案适不适合你当前的系统。你也可以迅速享受新编译器、新软件的特性。
3) 强大的社区支持。Arch的文档质量就不用我再安利了。软件更新快速、bug修复快速,官方源和AUR的软件数量庞大。
4) 简单、一致的系统模型: Arch基本上不对上游软件包作修改 - 你使用的是官方的systemd, crond, gnome,vim, 所以所有Linux上通用的步骤,在Arch上都适用。基本上,除了看看pacman/abs是怎么管理软件包的之外,你无须额外的知识来管理一个arch系统。
5) 易用稳定: 和流行的观点相反,Arch其实是非常易学易用的,而且非常少出问题。这主要体现在软件管理统一、抽象层薄,软件更新快,所以你遇到的因为抽象、更新、版本,冲突带来的问题非常少,标准的实现和丰富的文档也省去了很多的学习成本。顺便黑一句Apple,xcode的bug不见减少,OS X的bug倒是越来越多了,而且越来越慢。
6) 飞快。各种意义上的。
Update - 很多人觉得Arch是一个月不更新就挂 - 我经常三五个月不更新完了之后pacman一次的,当然我平常在服务器上做的事情也比较简单,就是跑跑webserver。Arch主页一般都有news,明确帮你解决升级的时候可能遇到的问题 - 我看了一下,上一个可能需要手动解决的问题在去年10月份,和特定的java包有关,再上一个是去年二月份,而且前提是你的键盘是PS/2,再往前数是去年9月份,对sysctl.conf的处理有点变化,把文件改个名就好了。考虑到大部分的distribution是6个月一更新,这个周期不能算短吧。
③ 程序员需要学什么软件
现在做为一名程序员,压力越来越大,各种开发工具越来越庞大、不断推陈出新,各种开发设计工程理念缤纷精彩、需要融入平常的开发当中,还有很多新的知识点在不断开拓中,相比以前,做为一名程序员尤其是合格程序员的难度的确增加了不少。
那么,做为一名程序员你应该学习掌握哪些软件与技能呢?
1. 数据库管理工具
MySQL,使用Navicat是针对数据库而研发管理工具,Navicat擅长于对数据库的管理,可以帮助程序员更好的管理数据库,视觉化创建 SQL 语句,自动生成报表等,Navicat具备所有数据库类型的绝大部分功能,包括存储过程、事件、触发器、函数、视图等。
Mongodb,使用Robomongo,是一个基于 Shell 的跨平台开源 MongoDB 管理工具。嵌入了 JavaScript 引擎和 MongoDB mogo。提供语法高亮、自动完成、差别视图等。

Sublime,具有漂亮的用户界面和强大的功能,可自定义键绑定菜单和工具栏。Sublime的主要功能包括拼写检查、书签、完整的 Python API,Goto 功能、即时项目切换、多选择、多窗口等。
插件多,Markdown插件,各种语言插件
④ 学习基于linux&ARM需要安装哪些软件
少对数据类型、程序的结构及流程控制等最基本的内容要相当清楚!另外有不少同学都问到数据结构的基础,我一直认为数据结构和算法的学习是帮助形成程序设计逻辑思维的很好训练方式,对于程序员的长期专业素养的提高一定有好处,所以建议即使已经在嵌入式行业中工作之后也应该多补充一些相关的知识。许多在学校没有学过数据结构的同学往往认为这部分非常枯燥、难学。而实际上如果你能明白研究计算机存储和数据组织方式的意义,就一定能够充分体会到数据结构的价值和魅力。
二、操作系统工作原理,这部分往往是非计算机专业的同学在学校时没有接触过的。而由于嵌入式软件设计相关的多任务环境、模块间的同步与通信协同、驱动设计等往往都需要有对操作系统工作机制的了解和掌握作为基础,因此建议没有系统学习过的同学,找一本相关的操作系统工作原理书籍认真看一下。
三、基本的硬件基础,由于嵌入式Linux开发往往是ARM+Linux路线,所以为了能够在后续培训过程中很好地掌握主流嵌入式微处理器的结构与原理(例如:ARM9),就需要对硬件工作原理有初步的了解和掌握,建议看一下诸如计算机组成原理、体系结构等相关的专业书籍。
有没有基础知识及基础知识的多少在很大程度上影响着你能否学习嵌入式linux及学习进度,因此,各个培训机构在学员入学前读会对其进行基础知识考查,像其中的东方赛富嵌入式学院对这一块更加看重,因为他们是保障真正100%就业,对学员入学的要求更加严格!
另外,虚机团上产品团购,超级便宜
⑤ 聊聊作为程序员,你每天必用的软件有哪些
vim,g++,gdb,git
⑥ 学习linux都用什么工具呀是用虚拟机+linux镜像就可以了吗大家给我说说
个人建议是从RedHat系开始,CentOS和redhat是一样的,只是换了个图标而已,使用redhat系可以使用yum源安装卸载软件,而且redhat方面的书籍相比其他的操作系统更多,网上电子档之类的文档也大都针对redhat,RedHat公司推出的认证在业内也是最具有知名度和广泛的认知度的,最主要的是:redhat公司在linux软件方面做的最好,很多做的好的软件都被他们收购,然后免费提供给用户使用。其他优势你可以在网络或者Google上继续搜索。学习linux最好是使用真机,当然是在你有空闲机器的前提下,没有的话可以用虚拟机。但是我并不推荐你使用VM,因为VM体积太大,真机占用的资源大,而且你需要注册码。推荐使用Virtualbox。我的环境是xp和Ubuntu的双系统,然后在Ubuntu里面运行Virtualbox,纯粹只是因为用Ubuntu装Virtualbox方便,而且能用Ubuntu练习shell编程。php不会过时,现在的PHP程序员相对来说还是很短缺的,学的好的一年工作经验就可以拿到8K以上的月薪。
⑦ 哪种Linux发行版适合程序员做开发
CentOS:可靠的服务器发行版。是一个重新编译可安装的Red Hat Enterprise
Linux(RHEL)代码,并提供及时的安全更新的所有套装软件升级为目标的社区项目。目前很多互联网企业在用的发行版本。
Red Hat(红帽):培训、学习、应用、知名度比较高的Linux发行版本。对硬件兼容性来说也比较不错,版本更新很快,对新硬件和新技术支持较好。Red
Hat的开放源码模式提供跨物理、虚拟和云端环境的企业运算解决方案,以帮助企业降低成本并提升效能、稳定性与安全性。
Ubuntu:流行的桌面Linux发行版。朝着发展一种“易用和免费”的桌面操作系统做出了极大的努力和贡献,能够与市场上任何一款个人操作系统相竞争。Ubuntu的优势是固定的发布周期和支持期限、易于初学者学习、具有丰富的文档。
SUSE:拥有让用户满意的漂亮的桌面环境,优秀的系统 管理工具,同时为那些购买盒装版的用户提供最好的印刷品与任何可用的文档。
Debian:优势是非常稳定、拥有卓越的质量控制、超过20,000数量的软件、比任何其他的Linux发行支持更多的处理器架构。
⑧ 自学编程软件有哪些
1、桌面、效率工具Onenote
onenote就像纸质的笔记本。收集资料、知识管理、强悍的复制图像的文字,简直是好用到不怎么需要介绍。
2、阅读/编写代码:Notepad++
毫不夸张地讲,至少有80、90%的程序员用过这款工具。这款编辑器确实挺好的,支持代码高亮显示,而且适用于多种语言,有ada,php,java.c#,c++等。

3、sublime text3
Sublime Text在OS X、Linux 和 Windows 三大平台都可以使用。
这款代码编辑器拥有多选、宏、代码片段等功能,并且还有极具特色的Minimap。
4、编写代码:Source Insight
编写代码除了使用Notepad++之外,也可以选择Source Insight。
它是一个非常强大的强大的程序编辑器。可快速访问源代码和源信息的功能。
5、流程图visio
程序员做流程图的软件,很少有几款可以和Visio媲美的。它可以将复杂信息、系统和流程可视化、分析,受到大量程序员的喜爱。