自去年买了Intel的Macbook Pro被苹果狠狠地割了一波韭菜之后(几个月之后M1上市)始终耿耿于怀。大半年过去了,总算是狠下心来,换了台M1芯片的Macbook。考虑到价钱跟外观,笔者最终选购的是M1芯片16G的Macbook Air,这篇文章简单来聊聊使用心得。

确实不怎么烫手

由于业务的需要,笔者最近要帮忙开发公司的App,偶尔还需要修复服务端的Bug。这就意味着,开发过程中要同时开启许多服务。而原来Intel+8G的Macbook Pro,说句实话,坚持打开Chrome看视频都显得有些难受(时间长了会烫手)。更别说最近的开发还需要启动Rails服务,Webpacker,以及Xcode等软件。原来的机子由于内存不是特别充足,会较多地使用交换区,再加上Intel芯片的加成,每天下班电脑都相当烫手。搭公交时余热都能从背包传送到大腿。

换了M1芯片的Air之后,在同样的开发场景下,每天下班电脑只是键盘的上方区域有一点点温(要知道Air是没有风扇的)。可能也得益于16G内存的加成,以前程序之间切换的那种顿卡的感觉完全没有了,开发过程更加流畅。不过也有很多国外的测评视频都说其实M1芯片的Macbook,8G跟16G在日常的用途中表现出来的性能区别并不大,一般来说8G都够了(当然如果你预算足够,那就想都不用想了)。这里推荐两个影片

PS:今天笔者尝试开着iOS的模拟器来调试了一天的程序,发现下班的时候机子还是有点儿烫的(区域不大)。如果是用真机调试一天,机子就仅仅是温而已。对比之前Intel的版本随便开几个程序就烫到怀疑人生还是有不少的提升了。

续航能力提升

得益于M1芯片的低功耗,Macbook的续航能力得到了一定的提升。前两天开着Chrome用油管刷了两个小时的视频,发现只掉了7%-9%的电。当然这样的测试还是很不严谨的,不过对比先前那台Intel的Macbook Pro(随便看点什么东西风扇就转个不停还经常卡死)掉电速度真的慢了许多。对于喜欢去咖啡店办公室的小伙伴可以说是个不错的选择,能耗小了续航能力强了,有时候也不用电慌,到处找地方插电了。

Macbook Pro VS Macbook Air

以下对比仅限于M1芯片

至于选择Macbook Pro还是Macbook Air。其实比较大的区别就是风扇,还有那个显卡(Pro是8核,Air是7核)。显卡的差别估计大多数人都体会不出来。若非追求极致性能,只是日常应用以及编程的话,小弟觉得Macbook Air足矣。另外就是Air要稍微轻一些,并且16G的Macbook Air的价格比8G的Macbook Pro要便宜。

确实有风扇的话散热确实相对来说会好些,然而需要考虑的是,我们的使用场景或许都难以让这台小风扇高速旋转,有没有风扇在大多数使用场景下区别并不大。笔者周末特地去试了一下同学的M1芯片8G Macbook Pro。刷视频,从Stream下了个游戏来玩,个把小时之后那电脑也不怎么热,跟我体温差不多,温度上不去风扇自然也就不怎么转了,那有它没它其实都没差。

总结:要是追求比较极致的性能(相当极致),直接上16G的Macbook Pro就好。如果编程环境并没有这么恶劣的话(平时也就开发一下网站,APP,后台应用,Docker),或许8G的Macbook Pro以及16G的Macbook Air就足够了。要是普通的办公族,平时也就处理下文件,刷刷剧的话8G的Air完全没有任何问题。

PS: Macbook Air的无风扇静音设计,对于喜欢去咖啡厅的朋友真的是个很不错的选择。

开发环境

知道我上了M1的Macbook之后,身边有些开发的朋友也会来问我软件兼容性的问题。这里简单总结一下个人开发过程中遇到的情况,并不是特别全面。

1. Homebrew

苹果用户最为重度依赖的软件可能得算Homebrew了,有了这个包管理工具,我们日常管理软件会方便许多。从Intel切换到M1之后首先遇到的第一个大难题就是它。

如果你只是用M1芯片的机子来当备用机,一切从头开始,那么Homebrew的使用过程应该不会遇到太大的问题,顶多只是安装目录有些许不同罢了

homebrew.png

然而如果你是从Intel的机子通过Time Machine把原来的系统拷贝过来的话,那么可能需要折腾一番了。这个过程中软件会出现各种各样的问题。个人比较建议的解决方案是,先把之前通过Homebrew安装的软件备份一份出来

> brew bundle dump

该命令会生成一个Brewfile文件,记录了你用Homebrew安装过哪些软件。然后利用官网的教程把原来的Homebrew卸载掉。最后再根据官网的教程重新在M1芯片的机子上安装Homebrew,就不会受到以前Intel版本的软件影响了。Homebrew安装完毕之后通过命令

> brew bundle

把以前的软件重新安装一遍。安装过程可能会遇到一些软件无法正常安装的情况,Homebrew会提示你,到时候再个别解决即可。

PS:历史软件的一些重要数据以及配置,建议提前拷贝出来。等到它们重新安装完毕之后拷贝到新的对应目录下即可继续使用原来的服务。

2. App开发

App开发估计是最不需要担心的场景了。毕竟如果连Xcode都不能很好的支持,那么苹果无疑在打自己的脸。事实证明,开着Xcode以及模拟器来做开发IOS应用,体验十分流畅,开发时间长了机子的底部区域以及键盘的上方依旧会热。然而对比以前Intel版本整个键盘区域都是烫手的情况可以说是改善不少。如果是用真机调试的话笔记本基本不会怎么发热。另外,开发Android的时候我就只是挂着Android Studio然后用真机调试,开发了几天也没遇到什么太大的问题。

PS:笔者用的是Flutter做App方面的开发。

3. Rails开发

Rails开发到现在一切正常(注:笔者没有使用Docker)。主要遇到的问题在于,如果是通过Time Machine初始化的机子,原来的Ruby版本是在Intel芯片上编译的,有些环境设置可能会不一样。如果这个时候编译安装一些依赖C的第三方库,比如ruby-pg这个Gem,便有可能会安装失败。比较粗暴的解决方案是把原来的Ruby删掉重新安装,然后再根据Gemfile.lock重新安装项目的依赖(在M1的加持下这个过程不会很久)

# 删除原来的Ruby
> rbenv uninstall 2.7.2
# 重新安装原来的Ruby
> rbenv install 2.7.2
# 重新安装所有依赖

> bundle install

最后一步如果遇到个别软件安装不了的情况,再一个个问题解决就好了,笔者自认项目依赖的第三方库还算蛮多的,目前运行良好。

一个比较明显的问题

笔者把系统升级到最新Beta版的Mac OS Monterey。遇到了一个问题。就是电脑如果长时间使用会出现打拼音的时候输入法顿卡的问题,现在不确定是M1芯片的问题还是MacOS的问题,之前用Intel的时候没有这种问题。重启之后这种现象就消失了。这种问题好像以前也有过。不算太大的问题,就是偶尔需要重启一下电脑,不然卡到没法打字。

尾声

简单聊了下这几天M1芯片Macbook Air的使用感受。只能说用过之后十分后悔没有早点入手,老实说,能耗降低,发热量低,性能还更好,开发体验真的是提升了不少。最起码以前被机子烫到烦躁的情况已经不复存在了。