zoukankan      html  css  js  c++  java
  • 为什么建议大家使用 Linux 开发?

    关注「开源Linux」,选择“设为星标”

    回复「学习」,有我为您特别筛选的学习资料~

    Linux 能用吗?

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

    Linux 有图形界面

    文件管理器

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

    支持日常开发

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

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

    • Python : PyCharm , WingIDE ...

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

    • Php : PhpStorm ...

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

    • ...

    社交沟通没问题

    居然还有 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 的。而且,实在不行不是还有虚拟机吗。

    Linux 下运行 Android 应用

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

    是的,你没有看错,不是基于虚拟机或模拟器的,速度可观,占用资源小。这似乎是目前 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是测过的,快了一秒多


    内存占用

    Linux 是自由的

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

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

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

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

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

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

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

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


    Linux 也可以是美的

    deepin 15.10 中文宣传视频 https://www.bilibili.com/video/av50732978

    文章转自:开发者技术前线

    
    关注「开源Linux」加星标,提升IT技能
    
    
    十年磨一剑
  • 相关阅读:
    【more effective c++读书笔记】【第6章】杂项讨论
    【more effective c++读书笔记】【第5章】技术(7)——让函数根据一个以上的对象类型来决定如何虚化(2)
    【more effective c++读书笔记】【第5章】技术(7)——让函数根据一个以上的对象类型来决定如何虚化(1)
    【more effective c++读书笔记】【第5章】技术(6)——Proxy classes(代理类)
    【more effective c++读书笔记】【第5章】技术(5)——Reference counting(引用计数)(2)
    【more effective c++读书笔记】【第5章】技术(5)——Reference counting(引用计数)(1)
    【more effective c++读书笔记】【第5章】技术(4)——Smart Pointers(智能指针)
    【more effective c++读书笔记】【第5章】技术(3)——要求(或禁止)对象产生于heap之中
    【more effective c++读书笔记】【第5章】技术(2)——限制某个class所能产生的对象数量
    【more effective c++读书笔记】【第5章】技术(1)——将constructor和non-member functions虚化
  • 原文地址:https://www.cnblogs.com/qinlulu/p/14671347.html
Copyright © 2011-2022 走看看