たま氏の覚え書き

KNIME・AccessVBA・Swift等、学習したことを覚え書き

SwiftUI_iPhoneアプリ開発に適したMacとは

iPhoneアプリを作成してみたい時の最初の一歩、Mac選びについて
Macbook購入時に気をつけたことなどを記事にした

古い型のMacBookは使えるのか問題

たま氏は昨年2023年の11月ごろ、ようやくアプリ開発を個人的に開始した
以前から作りたいアプリがあったのに行動に移していなかった(マシなMacを買うお金もなかった…)
この記事を目にしたかたが「ある程度使える言語はあるけれどアプリ開発はしたことがない」のであれば
たま氏もそれと全く同じ状況で、全て手探り状態である、その点ご理解いただけると有難い

デスクトップのMacは持ち歩けず不便なので、たま氏はMacBookを購入して使っている
数年前に購入した、Windowsも使用できるというカスタム版MacBookが手元にあったため、開発当初はそれを使用していた
そういった古いMacはとても安く購入できるし、Xcodeも使用できなくもないので
iPhoneアプリを作ろうと思えば作れなくもない
しかしもし、iPhoneアプリを作る目的で、今から古い型のMacを購入しようとしているのであれば心底お勧めしない
では「古い型」とは具体的にどういったものなのか
まさにその「古い型」でアプリ開発をしようと試みた者としての、自分なりの見解を以下に述べていく

問題点1:MacOSXcodeの最新版に対応していない

アプリを作る際には、XcodeiOSアプリ開発ツール)を使用する
Xcodeの最新版とそうではないものとを比べると
操作方法や画面の構成・配置等が異なり、できることにも差が出るため
最新版のXcodeが使えない端末は避けるべきかと思う

具体的な例としては、Xcodeが古いものだと、シミュレータが新しめのiPhone機種に対応していない
ほとんどの人が、実際に画面でどのように仕上がるのかを確認しながらコーディングしていくと思うが
iPhone/iPadは機種によって画面の大きさなどが異なるため、シミュレータが今世に出ている機種の全てに対応しているかどうかは重要かと思う

最新のXcodeが使えない端末は恐らく、MacOSも最新版にアップデートできないのではないだろうか

問題点2:処理能力が単純に低い

古いMacの挙動はもったりしていて
スペックによっては処理速度そのものが非常に遅い

問題点3:Xcode使用時に、swift言語のコンパイラが最新の書き方に対応していない

プロを目指そうという熱量のかたでも、そうでないかたでも、これは大変に大きな問題であろうかと思う
swiftという言語はしょっちゅう仕様が変わるイメージだ
会社が提供するE-Learningサービスで、ほんの数年前に作成されたswift言語の講座の動画を数時間視聴したことがあるが
数年しか経っていないのに、手元のXcodeではswiftの書き方が変わっていて驚いた

古いXcodeを実際に頑張って使っていた身なので、これは本当の話であるが
正しい(最新の)書き方をしているのにコンパイラが正常に働かずエラーとなるようなことが多々あり
この現象にぶつかったことで、たま氏はもう買い替えようと腹を括った

…swiftを使える技術者から見たら、問題点は他にも腐るほどあるのやもしれないが
アプリ開発を目的に古い型のMacを購入する場合、慎重になる必要があることだけは、最低限ご理解いただけたかと思う

iPhoneアプリ作成に適したMacとは

ではたま氏は最新かつスペックの高い新品MacBookを使用しているのか、というとそうではない…
今すぐ開発したいという気持ちと、お財布事情と、諸々擦り合わせた結果
中古でまあまあ使えてまあまあなスペックのものを購入した
購入時に気をつけたことを以下に挙げていく

M1チップ搭載機種

これからしばらくアプリ開発をするのであれば、最低限M1チップ搭載の型を使用することをお勧めする
2020年末に初めて導入されたものだそうで
ChatGPT4.0によると今(2024年1月)現在は、以下の機種が搭載しているとのこと

* MacBook Air(M1, 2020)
* 13インチMacBook Pro(M1, 2020)
* Mac mini(M1, 2020)
* 24インチiMac(M1, 2021)

最新版のOSの使用可否

今現在の最新のMacOSは「macOS Sonoma」だそうだ
iPhone7がもう最新iOSの対応外となったように、MacOSも更新を続けていくので
中途半端に古いMacを購入すると、XcodeどころかOSのアップデートが出来なくなり
短い期間でまた新しいものを購入する羽目になる
経験した者の意見として聞いてほしいが、最新のxcodeが使用できない=不便 であることは間違いない
Swiftという言語の特性から言っても、古いXcodeを使用することは非常にリスキーなのではないかと推察する
Swiftを使用した現場で働くことを目指しているなら尚更、古いMacは避けた方が無難だと思う

メモリは16GB以上

開発しようと思ったら、個人的には、8GBは絶対に避けたほうが良いと感じる
たま氏は、型が古くてしかも8GBのMacbookを使用していたが、本当に本当に使えなかった
勉強がてら数個のアプリを作成したが、それだけでデータはすぐにいっぱいになり動きも遅い

【参考】たま氏の購入品

たま氏は「中古でまあまあ使えてまあまあなスペックのもの」を購入したと先にお伝えした
具体的には以下を購入した、中古で13万円だった


いまのたま氏にとって13万円はかなり勇気のいる金額であったので、どうしても壊したり傷つけたくなかった
そこで以下のアイテムも揃えた

* 外装保護ケース
* 画面・キーボード・タッチパネル それぞれのプロテクトフィルム
* 持ち運び用のソフトケース
* (USB-Cのみ使用可能な機種なので)USB-C to USB-Aアダプター


恐らく、プロからしたら「ギリ使えなくもないが全然ダメ」と評されそうな代物である
ちなみに同じ機種・同じスペックの新品を購入すると、Apple公式ストアで確認したところ25万円するようだった
気をつけたことは、充電回数(購入先のストアを信じた)が少なく
「ほぼ未使用」「新品同様」であること
とはいえお金があるなら、妥協せずApple公式で新品を購入するのが絶対にいいのであろう

ともかく、中古でも新品でも、それなりの金額が出ていくので
今後のキャリアを考えて取り組むのか、趣味なのか、というところもしっかり考慮した上で決めるのが良さそうだ

最後に、中古品を購入するとしても、機能やスペック面での妥協はしない
特A品や新品同様のもの信頼できる店舗で購入する
後悔しないために、個人的にはそれがとても大切であると感じた