どうも、フリーランスのITエンジニア兼ブロガー兼投資家のKerubitoです。
iOS関連の開発をするのに必須となってくるMac。
クロスプラットフォーム(XamarinやCordova)であればWindowsを使って開発もできますが、最終的にビルドするにはMacが必要となります(正確にいうとMacinCloudというクラウドサービスでもビルドすることができます)。
私はiOS関連の開発をはじめて5年ほどですが、その間に何台かのMacを使ってきました。
現在は2014年モデルのMacbookProを使っているのですが、そろそろ新しいモデルに変えようかなと思い、新しいMacbookProを購入しました。
入手したのは中古のMacbookPro(2017年モデル)です。
新旧MacbookProが揃ったところでやりたくなるのは両者の比較です。
ただのベンチマークでは面白くないので、iOS開発上、どのぐらい違いが出てくるのか試してみました。
比較ポイントとしては、使い勝手とビルド時間です。
MacbookPro(2017年モデル)とMacbookPro(2014年モデル)のスペック比較
その前に簡単にですが、MacbookPro(2017年モデル)とMacbookPro(2014年モデル)の比較をしておきます。
13-inch Mid 2017 | 13-inch Retina Mid 2014 | |
CPU | 2.3GHzデュアルコアIntel Core i5(Turbo Boost使用時最大3.6GHz | 2.6GHzデュアルコアIntel Core i5(Turbo Boost使用時最大3.1GHz) |
メモリ | 8GB | 8GB |
ストレージ | 128GB / 256GB PCIeベースオンボードSSD | 128GBフラッシュストレージ (PCIe) |
ディスプレイ | Retinaディスプレイ:IPSテクノロジー搭載13.3インチ(対角)LEDバックライトディスプレイ、2,560 x 1,600ピクセル標準解像度、227ppi、数百万色以上対応 | Retinaディスプレイ:IPSテクノロジー搭載13.3インチ(対角)LEDバックライトディスプレイ、2,560 × 1,600ピクセル、解像度227 ppi、数百万色以上対応 |
拡張性 | 2つのThunderbolt 3(USB-C)ポートで以下に対応: 充電 DisplayPort Thunderbolt(最大40Gbps) USB 3.1 Gen 2(最大10Gbps) | MagSafe 2電源ポート、Thunderboltポート2基(最大10Gbps)、USB 3ポート2基(最大5Gbps)、HDMIポート1基、ヘッドフォンポート、SDXCカードスロット(ギガビットEthernet、FireWireは別売りThunderboltアダプタで対応) |
サイズ・重量 | 高さ: 1.49cm 幅: 30.41cm 奥行き: 21.24cm 重量: 1.37kg | 高さ: 1.8cm 幅: 31.4cm 奥行き: 21.9cm 重量: 1.57kg |
バッテリー・電源 | 54.5Whリチウムポリマーバッテリー内蔵、最長10時間(ワイヤレスインターネット閲覧)、最大30日のスタンバイ時間 | リチウムポリマーバッテリー(71.8Wh)内蔵、最長9時間(ワイヤレスインターネット閲覧)、最大30日のスタンバイ時間 |
別に狙ったわけではないですが、両者は世代の中では一番安いモデルです。
したがって、スペックにおいて大雑把に言ってしまうとCPUの進化以外は同じようなMacbookProです。
MacbookPro(2017年モデル)とMacbookPro(2014年モデル)の使用感を比較
正直、普通に操作しているぶんには両者に違いはあまり感じられません。
アプリケーションを立ち上げたり、ネットで調べものをしたり、Slackでメッセージをやりとりしたり。
Xcodeでコード書いてても同じ使用感。
作業に没頭しだすと、どっちを使っているかなんて忘れるレベルです。
ただ、違いを感じる部分もあります。
その理由として以下が上げられます。
・重量
・本体の厚み
・キーボード
・タッチパッド
特にキーボードとタッチパッドに関しては、開発効率において個人的には差を感じます
これらについては、のちほど。
外観に関しては、多少変化が見られます。
といっても、長年Macを使ってきた自分でさえ、入手してはじめて両者の違いがよくわかるレベルです。
そこまでMacに興味がない人が店頭で見る限りでは同じものに見えるでしょうね(笑
並べると2014年モデルに比べて、2017年モデルのほうが少し小さいことに気づくかと。
左が2014年モデル、右が2017年モデル。
それよりも重さのほうが体感的にわかりやすいです。
持ったときの感じがかなり違いますね。
2014年モデルよりも2017年モデルのほうが200グラムほど軽いです。
たった200グラムですが、持ってみるとその違いは一目瞭然。
本体の厚さも違います。
下が2014年モデル、上が2017年モデル。
このおかけで2017年モデルは随分とすっきりとした印象です。
本体サイズは小さくなったのに、ディスプレイサイズが同じ13.3インチなのは、ベゼルが狭くなったせいです。
左が2014年モデル、右が2017年モデル。
あと、大きく変わったのはタッチパッドとキーボードですね。
まずキーボードについては、2017年モデルには第2世代バタフライ構造キーボードが採用されています。
これ、最初は違和感しかなかったです。
私は別にMacbookを所有していて、これがバタフライ構造。
キーを押しても感覚が希薄なので、リズムよく打てないのではじめは不満しかありませんでした。
しかし、使い慣れていくうちに、文字を何千字と打っても指が疲れにくいことに気づいたんですね。
理由は詳しくはわかりませんが、キーの沈みが少ないので指にかかる負担が少ない?
あと、打刻感の違和感もいつの間にかなくなっていましたね。
そんなわけで、2017年モデルのキーボードに関しては快適でプログラミングをする上では最適な構造かと。
また、2017年モデルのタッチパッドは素晴らしいです。
上の写真を見てもらえればわかりますが、2014年モデルに比べて2017年モデルのタッチパッドは領域が広くなっています。
ですので、かなり使い勝手が向上しました。
場合にもよりけりですが、私は基本マウスは使わず、タッチパッドだけでMacを操作していますね。
これ、自分的には革命的でマウスがいらないので、その分のスペースが空くんです。
本体も小さくなったし、マウスのスペースも必要なくなったし、2017年は省スペースモデルです。
プロジェクトのビルド時間を計測
開発をやる上で気になるのがプロジェクトのビルド時間です。
今回はiPhoneアプリのプロジェクトをビルドしてみます。
これがなかなかの曲者ですので。
条件はできるだけ揃えたつもりです。
ストレージの状態についてはどうしようもないですが・・・。
OSバージョンは両モデルともにmacOS High Sierra(10.13.6)です。
2014年モデル。
2017年モデル。
検証方法
検証方法ですが、以下の操作においてそれぞれ実行時間を計測し、あわせてCPU、メモリなどのリソース状況をモニタリングします。
1.Macを起動直後にXcodeを起動させる。
2.プロジェクトのビルドを2回実行する(すでにアプリはiPhoneにインストール済みとする)
あと、事前にCleanした状態でビルドします。
Cleanすることによってキャッシュなどがクリアされますので、より正確な時間を計測できますので。
使用するプロジェクトは現在私が仕事で開発中のものを使います。
プロジェクトの概要は以下のようになっています。
プロジェクトのサイズ:400M前後
開発言語:Swift 4.2
ソースファイル数:約800
その他:ライブラリ関連はCocoaPodsを使用
参考程度ですが、Geekbenchのベンチマークを載せておきます。
スコアとしてはそこそこ開きがありますが、これがどう実際のビルド時間に出てくるのか。
検証結果
まずはOSが起動した直後のリソースの状況です。
2014年モデル。
CPU。
メモリ。
2017年モデル。
CPU。
メモリ。
Xcodeを起動します。
2014年モデル。
CPU。
メモリ。
実行時間は19.42秒。
2017年モデル。
CPU。
メモリ。
実行時間は6.73秒。
プロジェクトをビルド(1回目)します。
2014年モデル。
CPU。
メモリ。
実行時間は7分12.90秒。
2017年モデル。
CPU。
メモリ。
実行時間は3分39.86秒。
プロジェクトをビルド(2回目)します。
2014年モデル。
CPU。
メモリ。
実行時間は15.52秒。
2017年モデル。
CPU。
メモリ。
実行時間は10.15秒。
計測結果をまとめると以下のようになります。
<Xcodeの起動>
MacbookPro(2014年モデル):19.42秒
MacbookPro(2017年モデル):6.73秒
<ビルド1回目>
MacbookPro(2014年モデル):7分12.90秒
MacbookPro(2017年モデル):3分39.86秒
<ビルド2回目>
MacbookPro(2014年モデル):15.52秒
MacbookPro(2017年モデル):10.15秒
差は確実にありますね。
特にビルドの1回目は倍ぐらいの性能差がありました。
ただ、現実的に考えた場合、新規ビルドって開発している際にそれほど発生しないんですよね。
なので、開発効率に大きく関わってくるビルド時間に関して、実戦力においては両者にそれほど差はないような結果に。
まとめ
2014年〜2017年って3年の月日が流れているわけですが、ご覧のとおり、性能という点ではそこまで差は出ませんでしたね。
ビルドマシンとして考えるのであれば、まったく違いますが。
開発機としてプログラミングに使うのであれば、2014年モデルでもまだまだ現役でいけそうです。
特に今回検証に使用したプロジェクトはまあまあの規模ですので、個人レベルの勉強や開発であれば、おそらくもっと小規模なものになるでしょう。
ですので、もし開発初心者やこれから開発をやってみたいという人で、初期投資をできるだけ抑えたいといった場合には2014年モデルもありかなと。
もちろん、これから3年以上、5年は使いたいと考えるのであれば、2017年モデルがおすすめですが。
さらにいうと、別にProじゃなくてもMacbookでも開発できます。
現役エンジニアが実際に開発にも使っているので間違いありません。
もちろん、仕事でフル回転させるには我慢しないといけないところもありますが、意外と普通に使えてますよ。
アプリの開発や勉強をはじめるにあたっては以下の記事が参考になるかもしれません。