当前位置 : 主页 > 编程语言 > 其它开发 >

作为一名Python开发,我谈Linux和mac的使用体验

来源:互联网 收集:自由互联 发布时间:2022-05-15
我是一名Python开发,在2018.7~2021.6使用的是Linux系统 Deepin OS 作为自己的开发系统;在2021.7~至今使用的是 mac OS 系统作为开发系统。Deepin OS是我使用过的最好的Linux系统没有之一,各种适
我是一名Python开发,在2018.7~2021.6使用的是Linux系统 Deepin OS 作为自己的开发系统;在2021.7~至今使用的是 mac OS 系统作为开发系统。 Deepin OS是我使用过的最好的Linux系统没有之一,各种适配的软件让工作变得高效。作为一个中国人打造的系统,我深感骄傲。而mac OS中有着开发者的血统,也见过很多大神把mac OS配置的无比高效。刚好手头上两种系统都有,在公司用mac做Python开发,在家里用Deepin学习办公,所以就想做一件自觉有趣的事情,就是将这种系统来做一个对比。

我是一名Python开发,在2018.7~2021.6使用的是Linux系统 Deepin OS 作为自己的开发系统;在2021.7~至今使用的是 mac OS 系统作为开发系统。
Deepin OS是我使用过的最好的Linux系统没有之一,各种适配的软件让工作变得高效。作为一个中国人打造的系统,我深感骄傲。而mac OS中有着开发者的血统,也见过很多大神把mac OS配置的无比高效。刚好手头上两种系统都有,在公司用mac做Python开发,在家里用Deepin学习办公,所以就想做一件自觉有趣的事情,就是将这种系统来做一个对比。
Deepin 系统的图标换成了mac系列(我很喜欢mac的图标,生动而优雅),所以看起来有点类似mac。前方多图预警。

系统基本信息 Deepin OS

版本:Deepin 20.1
硬件:thinkpad x1 Carbon
cpu:i7-3667u
内存:8 GB

mac OS

版本:10.15.7 (19H1615)
硬件:MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)
cpu: 2.3 GHz 双核Intel Core i5
内存:8 GB 2133 MHz LPDDR3

Deepin OS 系统信息

程序坞
Deepin的经典一代是15.11,那时的程序坞不是独占一排,和mac有点类似。20之后可以选择高效模式或时尚模式,目前就是高效模式,和window的任务栏类似,但是更好看。由于我将图标都替换成了mac风格的,所以系统的图标和mac os类似。

文件管理器
deepin的文件管理器拥有Linux桌面系统经典的文件夹,家目录、视频、音乐、图片、文档、下载等一个不少。除此之外还多一个计算机和系统盘,里面是整个文件系统的概览。从window切换到linux系统的使用者一开始可能对文件系统不习惯,因为看不到整个文件系统。而这个计算机就是方便概览全局。

程序
Deepin 的程序展示和mac是一致的,点击启动器或win键就可以唤程序界面,15.11是上下滑动,20之后是左右滑动。从15.11升级到20.1时还真有点不习惯,还是觉得上下滑动更符合视觉特点。

app 商店
不得不夸奖一下Deepin 的app store,适配了很多软件,完全能覆盖日常需要。比如办公软件类的qq,微信,TIM,钉钉等。不过并非原生适配,是通过wine程序作为兼容层,比起原生适配肯定更容易出现卡死和延迟。


系统好用软件

Deepin系统自带了很多好用的软件,特别针对中国人开发的。下面罗列一下好用的软件。
日历
标记了阴历,节气,节假日,特殊节日等,还可以安排日程定时提醒。分别从年月周日来展示。



日历
个人觉得颜值最高的邮件软件

计算器
颜值依然在线

文本程序
Deepin 的文本程序很好用,当然Linux上的文本程序都很好用,比起windows的记事本和mac的文本编辑器都好用。

设备管理器
提供了详细的设备管理信息

开发工具

终端
使用过Linux的知道 Ctrl + Alt + T 可以召唤出终端。Deepin的终端颜值不低,自带多种主题。

不仅如此,还带有一个叫做雷神终端的便捷式终端。有时候需要一遍看网页,一边终端输入,只有一个屏幕时不方便,这时如果终端固定在屏幕最上方就能很好解决这个问题,这就是雷神终端。

Pycharm
作为一名python开发者,Pycharm当然是开发首选工具。对于挑选开发工具我认同一种说法,如果是只写Python就使用Pycharm,如果要在多种语言之间来回切换VS code是最好的选择。在使用了将近一年的mac os之后,我发现Deepin下的pycharm的最上面,也就是额头似乎有点宽。在快捷方式上两者也有一定差距,会让我感到困扰。

在日常开发中使用两块屏幕,一块用来在Pycharm上写代码,另一块打开终端调试。这样的配合效率很高,除了复制粘贴,这个实在不方便,只能使用Ctrl + Alt + C 从终端里复制,然后使用Ctrl + Alt + V来粘贴。其实在终端里判断Ctrl +C 是复制粘贴还是终止程序并不难,在网页版编辑器上就可以实现这个功能,然后到目前为止Linux系统上并没有改进,但是mac OS是可以做到的。

mac OS

从20年的7月开始使用mac作为我的开发系统。说实话在使用Deepin 两年之后我觉得Deepin是对开发最友好的系统,比起mac真的人性化太多了,不说别的,mac的复制粘贴 command + C 和 command + V 对于从window开始的用户来说就很不习惯。但是在逐渐习惯(键盘映射成Ctrl + C)之后我发现mac也真的挺好用的。

系统信息

程序坞
mac的程序坞类似于浮在桌面之上,不像Deepin20.1的独占一列屏幕,从空间上来说就感觉节省很多。而且是打开多少就展示多少,更符合我的使用理念。

文件系统
mac的文件系统有优点也有缺点,当然这个缺点可能是我不精通。优点是:文件系统支持的配置很多,比如文件夹背景色可以自选,也可以是图片,排列方式有很多种。缺点是:左侧默认的文件夹似乎不够用,不像Deepin给了10多个文件夹。当然左侧文件夹也是支持添加的,只是对新手来说不友好。

app
mac中app的管理确实更加方便。比如安装app就把安装包往程序里一拖就ok了,或者点击程序包拖动就ok。比window安装实在智能太多,比起Deepin也方便很多。Deepin在安装时可能还要选下一步,完成等。

实用插件

mac系统屏幕的顶栏是一个很有亮点的地方,这里能够放置很多小工具,我特别喜欢这个地方。在使用的过程中放了小工具。下面来介绍一下


系统监控
这可是每一个mac系统必备的软件,监控cpu,内存,磁盘,网络等,让使用者实时能够掌握到系统的状态。Deepin由于没有顶栏,所以就看不到。

滴答清单
用来记录每时每刻的想法,有什么想法直接点击顶栏小图标就记录下来,十分方便。

docker
开发中需要使用docker,一个docker的监控

截图
截图app保留在顶栏的图标。这里要说一下mac系统自带的截图完全不能用,需要额外下载一个。而Deepin系统自带的截图不仅能截图还能录屏,差距可不小。

日历
一个日历小插件,点开就能看到。mac自带的日历简直不能看。

实用系统工具

mac系统中自带了很多方便的小工具,能够体验到黑科技带来的效率。特别是建造设备生态,这是其他系统都没有做到的,我觉得就有如下:
搜索

Deepin下也有一个好用的utools工具,可以媲美搜索。

预览
在选中文件之后,使用空格就可以预览内容。不用打开文件就能看,简直是节省时间的大杀器,而且是不管是什么文件,图片啊,音频啊,视频啊,word等等。能够切实的提高效率。

隔空投送
在mac电脑上复制一段话,直接在手机中粘贴,设备之间无缝切换,嗖嗖的提升工作效率。特别是我在工作时经常要用手机调试,更能节省时间。

开发工具

Pycharm
mac上的Pycharm感觉更紧凑一些,额头也很窄,工具栏的工具更多。

终端
使用mac,第一件事就是下载一个iterm2终端。比起mac自带终端,iterm2颜值和功能高出一大截。配合zsh和Oh-my-zsh,配色上又提升不少。

此外还有两个高效插件:z和zsh-autosuggestions。zsh-autosuggestions是根据历史命令自动补全,z是不需要写全路径的跳转。两个插件都能节省终端里输入命令的时间。

标签颜色。在使用终端时一直觉得当前终端不够突出,后面找了一个能够改变当前标签颜色的代码。在本地输入命令之后标签的颜色就变成红色,当远程到别的机器上去时标签的颜色就变成蓝色。这样就能很方便的分辨出当前的终端的工作环境,不会在远程机器上输出错误命令。

配置脚本如下,一看就能命令如何使用。

if [[ -n "$ITERM_SESSION_ID" ]]; then
    tab-color() {
        echo -ne "\033]6;1;bg;red;brightness;$1\a"
        echo -ne "\033]6;1;bg;green;brightness;$2\a"
        echo -ne "\033]6;1;bg;blue;brightness;$3\a"
    }
    tab-reset() { echo -ne "\033]6;1;bg;*;default\a" }

    function iterm2_tab_precmd() {
        tab-reset
    }

    function iterm2_tab_preexec() {
		 if [[ "$1" =~ "pin" ]]; then
                tab-color 204 255 229
         else
	            tab-color 255 160 160
		 fi
    }

    autoload -U add-zsh-hook
    # 注释了默认颜色
    #add-zsh-hook precmd  iterm2_tab_precmd
    add-zsh-hook preexec iterm2_tab_preexec
else
    tab-reset
fi
总结

两种系统都是类Unix系统,都可以使用终端完成高效率的开发。在刚使用mac时发现其文件系统和Linux文件系统有很多不一致的地方,比如说系统相关的目录有些不一样,没有库文件/lib,新增了Volumes等。后面发现这些在开发中也根本不会用到,home目录的配置是一模一样的,环境变量,shell配置都是相同的。
从系统的流程度来说,mac比Deepin要好一些,Deepin切换或最小化时是有生硬的感觉,而mac就很流畅,这一点确实存在。

给两个系统做一个对比:

  1. 系统稳定
    mac比Deepin更加稳定,在使用Deepin开发的过程中崩溃过几次,虽然使用mac也崩溃过但只有一次。
  2. 系统流畅
    mac 系统更加流程
  3. 系统舒适
    如果是从window切换到两个系统,Deepin肯定更容易上手,mac有一定的使用磨合期。
  4. 系统定制化
    如果喜欢折腾系统,Linux系统毫无疑问是最佳选择
  5. 系统自带软件
    Deepin自带的软件更加实用,而且是适应国人习惯。mac往往要寻找更好的第三方替代,比如shell要用iterm2,截屏也要安装第三方
  6. 第三方工具
    mac 的顶栏能够集成很多第三方工具,极大的提高生产效率。Deepin原生界面不带顶栏。
  7. 系统生态
    这个毫无疑问是mac的优势,苹果的生态系统可以说是最好没有之一。mac和iphone,ipad可以无缝交互。
网友评论