Windows+Linux----打造和谐的开发环境
其实Windows和Linux并非水火不容,相反,我觉得,如果将二者结合起来,取长补短,便可打造一个华丽、实用的开发环境。
吾以为,不会用linux的人,不能称为一个程序猿,但是一味觉得Linux很吊,把windows完全当做shit,据而远之的话也是装13。
话不多说,下面我们一起看下Windows+Linux可以打造出一个什么样的开发环境!
【系统安装】
既然要同时实用Windows和Linux,那必然就要装两个系统?是装双系统还是虚拟机呢?当然是虚拟机,否则来回切换还不玩死你。
那么实在windows下虚拟linux还是在Linux下虚拟windows呢?我选择了前者,一是考虑到在本地windows下还能挂个QQ、打个游戏,另一方面是虚拟机上跑windows有些费劲,跑linux压力就小多了。
至于虚拟机软件,是Vmware还是VirtualBox?我推荐VirtualBox,一是VB比较简单易用,另一方面是它免费的,我不想再去破解vmware,缺德的事少做为好,嘿嘿。。。
1.安装VirtualBox
直接在360的软件中心搜索VirtualBox,然后直接安装,你懂的,so easy!
2.新建一个虚拟机用于安装linux,配置基本分配1G内存,两个CPU核就够了,如果你机器狗吊,可以在提高些配置,硬盘直接创建一个vdi文件,选择浮动大小。
另外值得注意的是网络里面最好将连接方式设置成桥接网卡,这样主机能上网,虚拟机就能上网,而且虚拟机还有独立IP,便于从主机对其进行各种访问,后面你就知道了。
这里选择安装Ubuntu,安装方法很简单,基本原则就是先下载一个ubuntu系统镜像ISO文件,然后将虚拟机光驱设置映射到这个ISO文件,再设置虚拟机优先从光驱启动。
ubuntu的具体安装过程就不罗嗦了,网上一搜一大堆。
【主机访问虚拟机linux】
文件访问:在linux里面配置samba用户
samba用户可以通过在etc/samba/smbusers中配置虚拟账户实现,也可以创建系统账户,这里推荐配置系统账户,这样既可用这个账户浏览linux文件目录也可以用它来ssh到linux上。
创建系统账户:
sudo useradd -d /home/yang -m yang
设置系统账户密码
sudo passwd yang
然后输入密码,例如,1234
为yang开通smab账号
sudo smbpasswd -a yang
此处密码也设置成1234
配置samba共享目录
编辑/etc/samba/smb.conf,在末尾加上
[yang]
comment = Shared Folder with username and passwd
path = /home/yang
public = no
writeable = yes
valid users = yang
create mask = 0777
directory mask = 0777
available = yes
重启samba服务器
sudo /etc/init.d/samba restart
设置完毕之后,在Windows文件浏览器中输入虚拟linux的IP地址(用ifconfig获取),就能看到共享目录,双击打开,输入刚才配置的用户名和密码,既可打开
另一方面,可以通过ssh远程登录虚拟linux,进行终端命令行操作,这里推荐使用xshell,使用方法百度一下既可
【Ubuntu安装后的一些基本配置】
此处以ubuntu为例,介绍系统安装完成后需要做的一些配置,为何选择ubuntu不解释
1、分区的划分(额,这个好像安装时就要做的。。),建议如下
swap 2G
/home 根据你要保存的个人数据大小而定(类似windows的我的文档,如果重新安装linux,可以只覆盖根分区,这个分区可以保留下来,所以你希望保留的个人数据都可以放在这里)
/ 占据剩下所以空间(linux系统就安装在跟分区,包括安装的程序,只划一个跟分区,让ubuntu自动划分就好了)
2、虚拟机设置ubuntu屏幕大小自适应
虚拟机窗口点击“设备”-》“安装增强功能”,这时会发现ubuntu挂载了一个虚拟光盘,一般在类似"/media/VBOXADDITIONS_4.0.10_72479"的目录下,进去sudo执行“VBoxLinuxAdditions.run”既可安装增强功能
重启ubuntu,会发现虚拟机窗口“视图”里面的自适应屏幕尺寸可以用了
3、VIM安装
ubuntu自带的vi编辑器很诡异,直接使用“sudo apt-get install vim”安装vim,搞定!
4、设置软件源
ubuntu默认的源比较慢,国内的话可以使用阿里源,很快
首先备份一下默认的源,防止后悔:
sudo cp /etc/apt/source.list /etc/apt/source.list.back
然后再以sudo方式编辑source.list加入阿里源信息:
阿里更新源(14.04)
deb http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
【软件、工具的选择】
1、代码托管 -- git(linux)
代码当然放在虚拟机linux中,用git托管,git、linux,得一既可得天下,哈哈
2、代码阅读 -- notepad++(Windows), vim(linux),SourceInsight(Windows)
因为之前已经介绍过Samba的配置,所以Linux和Windows两个系统之间的文件传输共享早就不是事儿了,所以对于代码阅读,你可以尽情选择你喜欢的方式
喜欢图形化的可以使用notepad++或者SE,喜欢纯命令行的朋友可以使用vim,vim配上自动补全插件加上linux命令行天然就支持的强大文本搜索命令,完全可以handle住类似android源码这样规模的项目
3、编程环境 -- VS(Windows),GCC,G++。。。。(Linux)
觉得命令行很恐怖的同学完全可以使用VisualStudio,但是你如果不会用git,我跟你说不到一块。
再漂亮的IDE也是讲各种编译工具组合在一起的结果,只不过它过于华丽的外壳已经喧宾夺主了,IDE能做到的,makefile一定能做到,反之不然,不敢想象如果用VS来编译管理一套android源码。。。画面太美了
用自动化脚本调动各种编译、连接工具去处理你的代码,得到可执行程序,是的,勇敢的学会它吧
4、文字排版 -- Word(Windows),Latex(Linux)
Word不讲了
至于Latex,讲个故事:我的硕士论文,一开始用word排版的,辛苦搞了将近一个月,正准备去打印,结果莫名其妙的发现格式又不对了,疯了。。。
一怒之下,我找来一位大牛导师写的论文模板,在linux下仅仅用一周时间,就“编译"出了一份清清爽爽的论文。
5、图像处理 -- GIMP(Linux), PS(Windows)
PS也不讲了
GIMP,是GNU,Image,Process,的缩写,顾名思义,遵循GNU协议的图像处理软件,号称Linux下的PS,有了它,可以不用再昧着良心去用盗版的PS了。
6、打游戏 -- 去用Windows吧,使用Linux的人很少有时间去打游戏,真的
7、虚拟机软件 -- VirtualBox(Windows,Linux),Vmware(Windows)
推荐使用VirtualBox,不光免费,而且很简单,不失强大
Windows+Linux----打造和谐的开发环境的更多相关文章
- 【转】linux和windows下安装python集成开发环境及其python包
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
- linux(ubuntu)和windows下面快速搭建android开发环境
在windows和linux下面搭建android开发环境,一般要安装以下几个软件: 1.JDK安装 2.Eclipse安装 3.Android SDK安装 4.在eclipse里面安装ADT 5.e ...
- vagrant打造自己的开发环境
vagrant打造自己的开发环境 缘由: 在网上看到斌哥,爽神都写了关于vagrant的博客,都在说很强大,所以很好奇这玩意怎么个强大,然后也就自己来一发玩玩看看. 真实缘由: 说实话是电脑配置太低, ...
- Linux下配置PHP开发环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
- Windows下搭建objective C开发环境
摘自:http://blog.csdn.net/zhanghefu/article/details/18320827 最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开 ...
- Windows在结构objective C开发环境
对于近期打算iPhone.iPod touch和iPad开发一些应用程序,所以.需要开始学习Objective C(苹果推出的类似C语言的开发语言).因为苹果的自我封闭的产业链发展模式(从芯片.机器. ...
- 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建
大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建 大数据应用之Windows平台Hbase客户端Eclipse环境搭建-Java版 作者:张子良 版权所有,转载请注明出处 引子 ...
- Linux操作系统的种种集成开发环境
Linux操作系统的种种集成开发环境 随着Linux的逐渐兴起,已经有为数众多的程序在上面驰骋了,许多开发环境(Development Environment)也应运而生.好的开发环境一定是集成了编辑 ...
- 「C语言」在Windows平台搭建C语言开发环境的多种方式
新接触C语言,如何在Windows下进行C语言开发环境的搭建值得思考并整理. 以下多种开发方式择一即可(DEV C++无须环境准备). 注:本文知识来源于 Windows 平台搭建C语言集成开发环境 ...
随机推荐
- python编码规范
python编码规范 文件及目录规范 文件保存为 utf-8 格式. 程序首行必须为编码声明:# -*- coding:utf-8 -*- 文件名全部小写. 代码风格 空格 设置用空格符替换TAB符. ...
- 数据结构:链表(python版) 续:增加比较函数
题目: 基于元素相等操作"=="定义一个单链表的相等比较函数.另请基于字典序的概念,为链表定义大于,小于,大于等于,小于等于的判断 class LList: "" ...
- CentOS 6.4 服务器版安装教程(超级详细图解)
附:CentOS 6.4下载地址 32位:http://mirror.centos.org/centos/6.4/isos/i386/CentOS-6.4-i386-bin-DVD1to2.torre ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- jQuery Datepicker日期控件
datepicker可以为bootstrap添加一个事件选择控件,适用于任何需要调用的场合,支持多种事件格式输出(比如:dd, d, mm, m, yyyy, yy等),是制作网页不可缺失的插件. R ...
- 闲话js作用域
js词法环境包括环境变量绑定及外部引用'函数创建的时候有个内部属性[[scope]],它指向当前函数的词法环境对象.而词法环境的外部引用一个词法环境'直到全局词法环境'它外部引用为null'这样就构成 ...
- Bootstrap之样式风格与下拉菜单
背景颜色 bg-primary 字体颜色 text-primary 文字居中 text-center 按钮 btn btn-primary btn-default默认 btn-link链接 按钮大小 ...
- Android原生json和fastjson的简单使用
android原生操作json数据 主要是两个类 JSONObject 操作对象 JONSArray操作json数组 对象转json //创建学生对象 Student student=new ...
- Android开发学习——开发调试工具-DDMS应用,ADB进程,Logcat
DDMS -- Dalvik debug monitor service 调试监控服务 对模拟器进行相关配置. ADB进程 Android debug bridge 建立eclipse和 ...
- Android Studio 2.2.2导入Eclipse中创建的项目
最近随视频教程学习Android,原本都是用Adt写Android程序,中途教程换成了Android Studio,于是我自己下了android studio 2.2.2安装好,并下载好sdk,也跟着 ...