日常生活和开发全用linux可行吗?为什么?

我自己尝试过用Linux来应付一个周的时间,在完全不打开macOS和Windows的前提下,深度Linux基本上可以完全满足我的需求。

得事先讲清楚的是,我基本上已经很少玩游戏了,目前做的也都是互联网产研线上的工作,娱乐就是看视频听音乐、看博客逛开发者社区,其余的工作和学习也都是跟互联网软件开发相关的,因此Linux对于我来说可以满足基本需求。

微信后台是Linux C/C++技术栈,Google是定制Linux下Emacs/Vim为主

硅谷有两种程序员,一种是用macOS的,一种是Linux的,基本上都是这两类程序员占主要,Google和Facebook就是这类硅谷公司的典型。两类程序员基本上都是用Emacs和Vim开发的居多,尤其是做后台的大部分都是在远程服务器上完成,而服务器上就是Linux系统。

Google之前一直用定制版Ubuntu、也就是goobuntu,现在逐渐转向了gLinux,也是基于Debian的Linux版本,Google不限制员工使用什么类型的操作系统,不过Google鼓励工程师实用Linux操作系统。

很多同学可能平时不大能接触上,国内也有不少的企业是用这样的环境开发的,比较著名的就是拥有着11亿注册用户的微信开发。微信PRC框架、服务器框架代码、微服务、路由策略、过载和自适应,消息队列等都是在Linux C/C++环境下开发,你所了解的微信的主要功能,比如朋友圈、公众号、支付等核心功能全都是在Linux下开发的。

基本上是采用的微信后台是采用SSH到服务器开发机,大部分基本上采用的是vim/emacs+gcc+gdb进行开发,听说只有很少一部分是本地IDE写好传到变以及进行编译调试,要知道微信这种级别的产品,用户量是10亿级的,代码量是千万行以上的,都还是在Linux C/C++为主要技术栈的环境下进行开发,因此Linux做开发是肯定没问题的。

接近生产环境的开发体验

除了没有Visual Studio、Xcode这些Windows或者macOS下的专门开发工具,其他的主流开发工具,Linux上都非常全面,甚至体验上会更好。

作为生产力系统,Linux对于开发者是极度友好的,Linux是最接近生产环境的,大多数的互联网企业都会选择CentOS、Debian、RedHat Linux、或者一些企业专门深度定制的Linux发行版作为服务器,即使如WhatsApp、Yahoo使用FreeBSD作为服务器,Linux也是非常接近生产环境。

我自己使用深度Linux的体验

我自己曾经尝试过在深度Linux下学习和工作一周时间,事实上深度Linux很好的完成了我的工作、学习和日常任务。

  • 开发工具

Emacs/Vim、Visual Studio Code、IntelliJ IDEA、PyCharm是我用得比较多的开发工具,除此之外GCC、GDB、Git都是用得比较多的工具,深度终端已经非常好用了,不需要像Windows上弄个Zoc、Cmder这些第三方终端。

  • 文档编辑、脑图工具

文档编辑我现在基本上已经很少用office了,大部分我都是云端用Google Docs、本地用WPS,除此之外就是做presentation的时候用keynote,基本上已经不用office了,主要是我也忍不office了。脑图一个在线的ProcessOn,本地用MindMaster和Xmind也绰绰有余了。

  • 娱乐、社交

这可能是大多数同学平时会用的,娱乐和社交必然是大家要用的。看视频直接用网站就好了,客户端完全可以不需要,听音乐网易云音乐、Spotify都有Linux原生客户端。

游戏方面Linux也有Steam,大家可以去下载体验一些游戏,当然如果你是个资深游戏玩家,我还是建议你使用Windows,毕竟大多数经典的单机游戏、网络游戏都是在Linux上没办法玩的。

社交方面,现在微信、钉钉都可以用,微软为Linux开发了Skype原生版本,腾讯也为Linux开发了QQ原生版本,完全够用了。

总体来说,我觉得深度Linux基本上可以满足国内程序员的日常学习、工作、以及娱乐的大部分需求。


本文为作者EmacserVimer悟空问答原创文章,未经允许转载、抄袭必究!


非常难,最关键的原因是在linux下,众多的专业软件没有,网银软件什么的没有,同时一些日常生活中的冷僻一点的软件也没有。

1、专业的软件没有

比如PS、CAD等等,这些工具软件就是没有的,所以如果你需要使用这些专业的工具软件,就无法实现全部用linux。

2、日常生活的很多软件也没有

有些人说我不用专业软件,就日常看看视频,上上网之类的。如果你只是这些简单的需求,估计是可以。

但问题是,在linux下,很多的网银软件,控件什么的都没有,这样你付不了款,登不网上银行什么的,这些可就是大问题了。

3、开发方面

开发方面也分好多种,有些是必须在windows下开发的,有些是需要MacOS环境,有些需要linux环境,具体看你的开发需求是什么,并不能一概而论。

但是在我看来,完全只使用linux,不用其它的操作系统,真的很难的,这也是目前国产系统无法广泛推广的根本原因之所以,毕竟所有的国产系统都是基于linux系统的修改版。

从问题分析,想必题主应该是一个开发人员。但是题主是一个什么样的开发人员,我却不得而知了。不过既然题主在问题中表示希望开发全部使用Linux系统的表态来看,应该并非Windows系统或者Mac系统的专有程序的开发人员。


因此,我可以假定题主的开发语言应该是跨平台的,或者对特定的开发平台系统是没有要求的。因为只有这样的假定,才符合题主的问题的基础要素。


从这个推断来看,在开发层面上使用Linux系统应该是没有任何问题的。需要注意的是,虽然在Linux系统上没有像Windows或者Mac那么多的可视化工具,但是主流的IDE和常用工具是并不缺少的。只是可能在使用习惯上有一些差异,作为开发人员我相信通过短时间的适应,应该是可以适用的。


但是,作为开发人员,不能仅仅从开发者的角度去考虑问题。因为你需要和各个部门的人进行交互,交换各类文件是常有的事情。所以,如果你的同事适用了某个特定系统支持的特定文件格式,那么在你的电脑上可能就会出现一些问题。


比如使用苹果系统的人,给你一个.page文件对吧。这个例子极端了一些,但是这样的场景确实是存在的。


所以,在和同事的文件交互问题解决的前提下,使用Linux系统作为开发操作系统平台是没有太大的问题的。


而在日常生活中,使用Linux系统会有什么影响吗?其实还是有比较大的影响的。首先就是,很多国产端游可能你就没办法愉快的玩耍了。系统不支持,没办法。


虽然Linux系统上有很多的游戏,但更多的人还是喜欢玩自己常玩的游戏。因此,如果你常玩的游戏在Linux没有发行版,那么这一关就会卡死你了。


不过这个问题并不严重,因为现在大家玩游戏主力都转移到了移动端,在PC端的游戏大家玩的越来越少。因此,如果你忽略游戏方面的需求的话,或者有专门的游戏主机的话,那么日常生活中使用Linux系统并没有什么太大的影响。


无论是看电影,听音乐,浏览网页,还是从事一些日常的轻度办公以及一些Linux下的各类游戏,还是比较丰富的。


还有一点,Linux系统在部分情况下,对打印机的支持并不好,如果你有大量打印需求,最好先确认系统是否支持你的打印机型号。如果没有这个需求,那就忽略好了。


一个长期使用Windows系统的用户,贸然切换为Linux系统,是会存在很多不适应的地方的。但这并非不能克服,我个人建议如果你初次尝试Linux系统,可以安装国内优秀的Linux发行版Deepin系统。该系统集成了国人常用的各类软件,让大家开箱即用、拎包入住。比如QQ\WPS\搜狗输入法等等。


其自行开发的各类影音娱乐软件,也能满足大多数人的日常需求了。而近期因为美国政策原因,华为已经在很多电脑产品上面预装Deepin系统了。如果你近期有购买电脑的需求,并且想要尝试Linux系统,可以购买华为的电脑产品。我相信通过一段时间的学习和适应,你会喜欢上Linux的世界的。

声明:本站发布的内容以原创、转载、分享网络内容为主,如有侵权,请联系电话:021-51697771-8029,邮箱:mj@cndns.com ,我们将会在第一时间删除。文章观点不代表本站立场,如需处理请联系我们。

热门TAG

热门视频