为什么建议大牛都喜欢用 Linux 开发?

2024-05-15 12:38

本文主要是介绍为什么建议大牛都喜欢用 Linux 开发?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

来源 | cnblogs.com/summertime-wu/p/11140052.html

阅读本文大概需要 10 分钟。

  • Linux 能用吗?

  • Linux 有图形界面

  • 支持日常开发

  • 社交沟通没问题

  • Linux 能替代 Windows 吗?

  • Linux 下运行 Android 应用

  • Linux 有什么优势吗?

  • Linux 是自由的

  • Linux 也可以是美的


Linux 能用吗?

我身边还有些朋友对 linux 的印象似乎还停留在黑乎乎的命令行界面上。当我告诉他或者建议他使用 linux 时,会一脸惊讶的问我,那个怎么用(来开发或者日常使用)?

Linux 有图形界面

桌面

img

启动器

img

文件管理器

img

设置

img

这是我使用了近两年的“国产”操作系统 deepin ,界面美不美观我不知道,能用是肯定的。

关于其他 linux 可以参考:

  • 八款精美的 Linux 发行版!https://www.linuxprobe.com/eight-linux-distribution.html

  • 2018年10大最漂亮的 Linux 发行版 https://www.cnbeta.com/articles/soft/695605.htm

  • 展望2017年的七款好用Linux发行版 https://www.linuxidc.com/Linux/2017-01/139414.htm

支持日常开发

首先 Vim/Emacs 表示它们可以搞定,但是我觉得我和它们不熟。..

  • Java : Eclipse , IDEA , NetBeans , Android Studio ...

  • Python : PyCharm , WingIDE ...

  • C++ : KDevelop , Code Blocks ...

  • Php : PhpStorm ...

  • 前端 :Sublime , VS Code , WebStorm ...

  • ...

排名不分先后

社交沟通没问题

img

居然还有 ICQ ...

囿于时间原因,这里使用了 deepin 商店截图 ,其他 linux 发行版不一定有这么丰富,不过安装qq、微信应该没问题

Linux 能替代 Windows 吗?

先列下本人日常使用的软件:

  • 开发:IDEA

  • 数据库:DBeaver , Navicat , PL/SQL

  • 沟通:TIM , 微信

  • 浏览器:谷歌,火狐,360

  • Office: WPS ,Microsoft office网页版

  • 音乐:网易云音乐

  • 输入法:搜狗输入法

  • 播放器:deepin自带的播放器,VLC

  • 编辑器:Sublime Text

  • 远程控制:TeamViewer,向日葵,VNC,Remmina

  • 下载:迅雷极速版,Aria2

  • 网盘:坚果云,百度网盘

  • MarkDown编辑器:Typora,Zettlr

  • 终端:deepin自带的(非常好用)

  • 思维导图:XMind ZEN

  • ftp:FileZilla

  • PDF:福熙阅读器

  • 虚拟机:VirtualBox,vmware

  • 游戏:Steam,Minecraft(我的世界)

  • Android APP:xDroid

这些只是我个人日常使用,还有很多优秀的软件没有列出来。

至于能不能替代 Windows ,这个问题因人而异。对我而言,在两年的使用经历中,暂时没有遇到过 linux 下不能解决,必须回到 Windows 的。

而且,实在不行不是还有虚拟机吗。

其他参考:

  • 100 个最佳 Ubuntu 应用(上) https://zhuanlan.zhihu.com/p/71833109

  • Deepin 应用商店 https://dstore-appstore.deepin.cn/china/index

  • 常用的超赞 Linux 软件大汇总,入行运维必藏!http://www.sohu.com/a/238318823_100008608

  • 小众软件-Linux https://www.appinn.com/tag/linux/

Linux 下运行 Android 应用

xDroid 使 Android 应用能运行在 linux 上,极大的扩展了 linux 生态。

img
img

是的,你没有看错,不是基于虚拟机或模拟器的,速度可观,占用资源小。

这似乎是目前 Windows 都无法做到的。

运行截图

应用市场部分截图

Linux 有什么优势吗?

从一个系统迁移到另一个的系统成本是巨大的,Linux 有什么魅力值得我这么做吗?

Linux 是优雅的

当我在 Windows 下安装一个软件时,首先需要打开浏览器,搜索你想要的软件,小心翼翼的避开广告,当你找到一个看起来是对的网站时,还是得小心翼翼的找到 下载地址 之类而不是巨大的下载按钮,最后再小小翼翼的安装,一定不能漏掉某些勾勾,一旦一不小心漏掉了,就会发现电脑似乎有点卡顿,不一会儿,它的朋友就会出现在你的桌面上。

而在 linux 下,apt install 或者 yum install 之类的命令,就能搞定整个安装。

  • Linux 不需要选择软件是放 c 盘还是 d 盘,已经定义好了哪些文件该放在哪些地方,

  • 也不需要杀毒软件,

  • 也不需要清理垃圾,

  • 也不需要释放内存,

  • 也不需要激活系统,它是开源免费的,

  • 也不需要磁盘优化,

  • 也没有烦人的弹窗,

  • 也没有强制更新。

Linux 是高效的

这是 linux 最吸引我的地方了

命令行

命令行不是一种落后的操控计算机的方式。相反,它一直很高效且富有表达性。

当你想要复制、剪切或删除一个文件时,我相信打开文件管理器在不同窗口之间跳转是没有一条命令来得快。

当你想要查看系统运行状态,我相信移动鼠标,右键,选择任务管理器是没有一条命令来得快。

当你想要编写一个简单的脚本或文件时,我相信打开编辑器,新建文件,编写,选择文件位置保存是没有一条命令来得快。

...

鼠标是很好的工具,但是它有它的局限,毕竟它只有三个按钮。而命令行中使用参数的表达力是无穷的。

减少使用鼠标

通过命令行,浏览器的 Vimium 插件(类似于 Vim 的方式操作浏览器界面),Albert(通过指定按键唤出一个输入框,可以打开 app , 文件 ,url ,直接搜索 ,计算器 ...),系统快捷键再加上IDEA(它的设计思想是键盘优先)我能够很少的使用鼠标。

当然不是鼠标烫手,当你的双手在键盘上飞快的敲打时,直接使用键盘是比右手挪到鼠标上再挪回来要快的,而且这种不中断的体验非常舒畅。

至于这为什么是 linux 的优点,在我过去多年的 Windows 使用经验中,我没有找到自定义系统快捷键的入口,更不用说自定义宏了。Windows 当然也有命令行,不过我认为它的命令丰富程度和各个命令之间的配合是不如 linux 的(有人称之为附属品)。

减少重复劳动

我有一个文件夹,专门存放着我写的各式各样的脚本。大部分时候,你的问题市面上的软件都可以解决,但是当有一些细碎、独特、重复的小任务时。脚本能够帮你很好的解决这些。

比如,我有一个监控生产环境的脚本(其实应该是项目本身自带的),有一个OA守护脚本(其实就是监控我有没有写日报,没有的话发个短信提醒我),甚至还有一个定时发送微信的脚本...

这些脚本能一定程度的解决信息世界的重复劳动,让我更专注于具有创造性的工作上。

启动速度

在我的电脑上,无论是从系统启动速度,还是软件(IDEA,Chrome)启动速度都略胜 Windows 一筹。

使用经验所得,未有准确测试数据。不过IDEA是测过的,快了一秒多

内存占用

img

Linux 是自由的

上面的只说明了脚本带来的好处,并没有说明是在 linux 下带来。

因为只有 linux 才有这样的开放和可定制,你可以很容易的通过命令来修改系统配置和改变系统状态,甚至于修改内核代码,编译并使用它。

  • 假如不喜欢当前的桌面环境,可以轻易的通过命令来切换。

  • 假如喜欢 mac os ,可以通过网上的教程将 Ubuntu 改成一模一样(甚至包含开机 logo)。

  • 假如不喜欢系统自带的文件管理器,可以选择其他优秀的软件,比如 Nautilus。

  • 假如不喜欢当前终端,有太多选择了,我甚至用过一个模仿一部电影内出现的,极具极客风格的终端。

而相反,比如拿字体来说,在 linux 下我可以通过命令来安装和切换系统字体,而在 Windows 下没有这样的设置或者入口。暂时不太明白为什么这种选择的权利都没有。

而这些仅仅只是一些微不足道的例子。

参考资料:

  • Linux与windows相比有何优势,看完就明白了 https://blog.csdn.net/lmseo5hy/article/details/79279424

(本文来源网络,如有侵权,可联系删除)

关注「进击的 Coder」,一起成长

这篇关于为什么建议大牛都喜欢用 Linux 开发?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/991858

相关文章

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.