{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

程序员是不是用linux编程呢?怎样用好linux?

cod7cecod7ce 回答0 收藏1
收藏问题

10条回答

oogh

oogh

回答于2022-06-27 17:19

真正谈程序员用户数量的话,肯定还是Windows是程序员大军的主力系统,毕竟Windows用户门槛相对更低,而且用户体量也足够多,很多程序员最开始接触的操作系统也都是windows,更重要的是对于PC用户来说,Windows学习成本比Linux要低,Windows PC的平均硬件成本又比Mac要低。

那么除了少数用Linux是最佳选择的领域,以及像Google这种有自己定制版的ubuntu的公司,那么到底还有哪些领域用非Linux环境呢?

对于绝大多数码农,其实还是用windows机器

这一点其实是事实,Windows用户占据了计算机行业87%的市场份额,依然是第一大系统,就算是在编程领域也依然是第一大操作系统。

在美国的众多用户之中,其实还好,毕竟美国的程序员基本上都是在Unix哲学下发展起来的,这些人已经熟悉了Unix程序员,这样能够和Linux形成无缝的链接,所以在美国的程序员来说,长期在Unix哲学下成长起来的程序员,使用门槛更低。

但是国内的程序员就不一样了,国内的程序员基本上全都被windows的哲学从小都影响到了,没有美国那种Unix极客文化,windows下培养起来的用户习惯,导致了很多程序员很难重新去学习Linux文化。

知名的大企业,Mac将占据很大的用户体量

当然,这已经是一个公开的秘密了!

在硅谷的企业中,苹果公司就不用说了,就算是在Google、Facebook、SnapChat、Uber等众多科技公司,使用Mac电脑的程序员也是占据了绝大多数,相信大家都看过照片,基本上Facebook的办公桌上,放眼望去全是Mac电脑。

就算是在国内BAT,以及再小一些的企业美团、滴滴、饿了么、字节跳动的企业中,使用Mac电脑的程序员比例也是不小的。

macOS省心、稳定,成了很多企业的标配!

特殊领域,windows和macOS不可替代

这一点相信不用过多的解释。

做macOS以及iOS应用开发,目前还是只能用macOS进行开发,那么这种时候Mac就是必须的选择了。而在windows桌面开发里面,虽然目前.NET开始跨平台,但是终究在体验上跟windows下原生的visual studio差很多,因此如果你要做.NET开发你不得不选择windows作为你的开发系统。

因此,Linux在编程领域并不占据统治地位,总体来说份额跟Windows和macOS还有差距,毕竟体验上Linux还是有很大差距,尤其是Linux目前基本上还是只能用于开发,macOS和windows还能兼顾好日常的办公需求、以及生活娱乐需求。

评论0 赞同0
  •  加载中...
wmui

wmui

回答于2022-06-27 17:19

我看到前面有一个回答说真正在Linux下编程的程序员是很少的,我对这句话表示驳斥。实际的情况是优秀的牛逼的程序员更多的是在Linux下进行编程工作。

但是提主的问题是程序员都在Linux下进行编程工作吗?那么我要告诉你,绝对不是的。比如我们知道windows操作系统是最广泛的个人电脑所安装的操作系统。而windows操作系统上的那些应用软件是最广泛的,最全面的。所以必然有大量的程序员在windows操作系统上为windows开发应用程序,所以程序员绝不可能仅仅在Linux下进行编程。

我是一个产品经理,我们公司有上百号的开发人员,我就简单的说一下我们公司的操作系统的使用情况。

首先我们公司有一部分的程序人员是在苹果操作系统上进行开发的。使用苹果的电脑进行软件的开发是一个非常合适的行为,但是其成本稍稍的有一点点高啊,因为苹果的操作系统必须运行于苹果的电脑之上,所以我们必须购买苹果的电脑,才能够在基于苹果系统进行程序的开发。

而无论哪一家公司,都不可能给所有的程序员都配备苹果电脑。

那么我们公司绝大多数的人是使用Linux操作系统来进行程序开发的。使用windows操作系统的不能说没有,只能说聊聊有几个人而已。他们的电脑在购买过来的时候就已经预装了windows正版的操作系统,那么就使用它来进行开发,也没有什么太大的问题。使用windows操作系统的主要集中在运维人员。而作为公司里面人数最多的前端工程师和后端工程师来说,没有一个使用windows操作系统进行开发。

因为安装盗版的windows操作系统是一个犯法的行为,所以我们作为一个上市公司旗下的研发团队,必须保证我们的电脑上安装的软件全部都是正版的。为了避免额外的支付正版软件的费用,所以我们会大量的安装开源的软件。而Linux操作系统正好是一个应用最广泛的免费的操作系统软件。

而实际上使用Linux操作系统对于我们程序开发人员来说并没有什么特别大的障碍,即便是那些没有接触过Linux操作系统的开发人员,也只需要简单的两天时间就能非常好的运用Linux操作系统进行软件的开发了。

这里我们要感谢深度Linux系统的开发公司,为我们提供了如此优秀的桌面环境。使用深度Linux操作系统进行软件开发的话,是可以非常顺利的让那些在windows操作系统下开发习惯了的那些工程师适应Linux操作系统。

我不能说使用Linux的开发的工程师比使用windows操作系统的开发工程师要更加的多,但是我可以保证一点,使用Linux操作系统的工程师绝对比使用windows操作系统的工程师要厉害,哪怕一点点。

以上文字是我的个人观点,如果各位看官有不同的观点,欢迎在评论区中给我留言,我会认真的答复每一条评论的。

如果你喜欢我的回答,可以给我点赞并关注我,我在这里谢谢大家了。

评论0 赞同0
  •  加载中...
widuu

widuu

回答于2022-06-27 17:19

C++服务端程序员,并不会,主体机器还是win mac,因为linux没有qq, outlook,没有企业微信,丁丁,这是硬伤,只开linux根本没办法办公,一般都是win开一个虚拟机,也有用win连公司服务器的,当然mac解决一切

评论0 赞同0
  •  加载中...
Warren

Warren

回答于2022-06-27 17:19

楼主的问题应该是程序员是不是都在linux操作系统下编程吗。答案当然是否定的。现在最好用的系统是windows系统,国内大多数程序员都是在windows系统下编程的,很大原因是国内大多用盗版windows,不需要什么成本。如果你的程序是用在嵌入式设备上或者linux操作系统的服务器上,那么很多大型公司会有linux系统的编译服务器,你在windows系统上用比较好用的编程软件写好代码后再通过编译服务器交叉编译生成库文件或者执行文件。程序员是否优秀不在于操作系统,更多在于专业知识和编程能力,操作系统只是平台。

评论0 赞同0
  •  加载中...
时飞

时飞

回答于2022-06-27 17:19

如果你在写代码的时候已经完全抛弃c#,.netcore等一系列微软的开发语言。

比如已经全部使用了python,java,go,angular,react,vue等等那么确实可以在linux上工作,同时你也还有三个选择:

有资金的话可以买个mac ,她是视网膜屏幕,写代码时间留了眼睛也不太会累。

如果资金欠富裕,则可以选择ubuntu系统,她也不错,反正桌面ide 都可以安装,完全无压力。

如果你是个极客,就是要和大家不一样,你可以安装命令行版本的操作系统,全部在黑屏下工作,那也是可以的。

针对怎么用好linux呢?这个其实很简单,多用,遇到问题尝试摸索研究就可以了,熟能生巧!

评论0 赞同0
  •  加载中...
YorkChen

YorkChen

回答于2022-06-27 17:19

实施运维用的多,linux是操作系统!

评论0 赞同0
  •  加载中...
tianlai

tianlai

回答于2022-06-27 17:19

windows那叫编程吗?大多数都是混口饭吃。。。

评论0 赞同0
  •  加载中...
崔晓明

崔晓明

回答于2022-06-27 17:19

两家公司都是在win开发,linux部署运行。

在家里自己玩我用linux开发。

评论0 赞同0
  •  加载中...
tigerZH

tigerZH

回答于2022-06-27 17:19

编程推荐linux,但不是让你去用linux。

现在大部分程序猿用linux就是个黑框框。

类似Windows 的cmd

就是一个黑框框,平时用就是敲命令行就可以了。

其实这个黑框框才是操作系统的本来面目,只是因为个人PC 业务兴起之后。为了让普通人也能愉快的使用电脑,才开发了桌面图形操作界面

随之而来是各种带UI的软件


而程序猿在黑框框里面怎么用软件?

没错,软件在黑框框里面也是一些命令,没有图形界面。没有炫酷的动画特效,没有华丽的数据展示,甚至你为了看你歌单里面有哪个歌曲你都得敲好几个命令。

举个例子,在有图形界面的情况下,你想查看某个文件夹里面有哪些文件,只需要动动鼠标就够了。在黑框框里面,你需要先通过find命令找到你要查看的文件夹,然后通过cd跳转到还目录,再通过ls命令,才能查看里面的文件列表

结果是这样的,没有文件图标,没有文件预览图。其他操作更是繁琐。


那说说为什么要用linux

作为程序猿,你免不了要跟服务器打交道。注意,这里服务器不仅仅是硬件上面的,还有软件当面的。那么服务器用什么操作系统?win10?还是linux?

其实都可以。但是大多数服务器用的都是linux,为什么?


1、自由开源

Linux操作系统完全免费且可用作开源软件,通过开源方式,您可以轻松查看用于创建Linux内核的可用代码,还可以修改代码以修复任何错误等。它提供有许多编程接口,您甚至可以开发自己的程序并将其添加到Linux操作系统中,基本上,Linux可让您完全控制机器,只要你做够厉害,你完全可以按照自己的方式构建和自定义服务器。这些是在windows上无法实现的。


2、稳定性

Linux系统以其最终的稳定性而闻名。在windows上,我们进程看到系统崩溃或者卡死,但是在linux上,这种情况发生的几率极小,并且linux系统还可以同时处理多个任务,在Windows配置中,更改配置通常需要重新启动。但是在linux中则不需要重启,配置的更改都可在系统运行时完成,且不会影响到不相关的服务,同样,windows服务器经常进行碎片整理,但是在linux上完全不需要这样做。


3、安全

在安全方面,Linux显然比Windows更安全,因为Linux主要基于最初从多用户操作系统开发的UNIX操作系统。只有管理员或root用户具有管理权限,其次Linux也会病毒和恶意软件的攻击频率很低,很多病毒都是针对于windows,而针对linux的病毒比起windows少太多太多,比如此前的永恒之蓝病毒并未对linux造成影响。其次,玩linux的用户群基本上都是计算机方面的人员,加上linux社区庞大,一般发现漏洞,很快会被并提交到linux开源社区。


4、成本低

Linux是免费的,如果您想在其中一台服务器上安装Windows,则需要支付激活费用。这意味着你需要多花一笔钱。


5、操作方便

对于普通人来说,windows操作更为快捷,但是对计算机专业人士来讲,linux操作比windows快捷的多,几条命令就可以执行很多的操作。


那么为什么不推荐你用linux?

原因也很简单,缺少生态。或者说缺少对普通用户的比较友好的软件生态环境。对大多数人来说,你常用的软件Linux 里面要么根本没有,比如QQ ,微信,photoshop,甚至office办公三件套,你都很难在linux上找到满意的,并且功能和优化相比Windows 差太多,原因很简单,Windows 市场占有率比linux高太多,没有厂商愿意在Linux 上投入这么多回报远远低于收益的项目。

另外Linux 分很多种,Ubuntu,CentOs等等,都有图形界面,对新手友好。大部分程序猿开发所需要的编辑器,IDE都有,也能应对日常开发。

用Windows 和Linux 开发的区别

Linux 属于最早的类Unix系统,至今有相当多操作系统是由Uinx发展而来,比如Mac OS,总的来说对开发者比较友好,Windows 是微软多带带开发的,对开发者来说相当蛋疼,容易碰到各种各样的环境问题。不多解释,新手开发还是从Linux 入手吧。起码不会被各种环境问题折腾死。熟悉Linux 之后,该用Windows 用Windows ,该用macOS 用MacOS 。把Linux 当主机操作系统是不可能的,用了知道多蛋疼,端正心态,Linux 其实只是一个开发工具。

推荐Docker ,谁用谁知道。Windows 连接Docker 体验无缝开发快感。杜绝各种环境问题。mac嘛,用不用Linux 其实都无所谓了。

评论0 赞同0
  •  加载中...
ACb0y

ACb0y

回答于2022-06-27 17:19

大部分程序员都是在windows或者mac下编程的。真正在linux下编程的程序员其实很少…

评论0 赞同0
  •  加载中...

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<