開発でMacが重い——メモリ不足を疑って、自分で「メモリ解放アプリ」を作った話【FreeRAM開発記 #1】
これは、自分用に「Macのメモリ解放アプリ」を作り始めた個人開発の記録です。まだ手元で使い始めたばかりですが、作っている“今”こそ残す価値があると思い、第1話として「なぜ作ったのか」から書きます。
きっかけは、アプリ開発中に「Macが急に重くなった」こと
最近、スマホアプリ(Android版とiPhone版)の開発を進めていました。その作業のさなか、あるときからMacの動作が明らかにもっさり重くなったのです。ウィンドウの切り替えがワンテンポ遅れる、入力が引っかかる——集中したいときに限って、これが地味にストレスでした。
最初は「アプリのビルドが重いだけかな」と思っていました。でも、何度も繰り返すうちに「これは作業環境そのものが詰まっているのでは」と感じ始めました。
何が起きていたか:ツールの立ち上げすぎ+複数ターミナルでAI
落ち着いて自分のデスクトップを見渡すと、原因の心当たりはいくつもありました。
- エディタ(開発環境)に、ブラウザは大量のタブ
- アプリのビルド・実機確認まわりのツール群
- そして——複数のターミナルを開いて、それぞれでAIを同時に走らせていた
最後のこれが大きかったと思います。AIに作業を手伝わせるのに、ターミナルを何枚も立ち上げて並行で動かしていた。便利な反面、裏側ではそれぞれがメモリを食っていくわけです。気づけば、開発ツールとAIとブラウザで、Macはかなりの量を抱え込んでいました。
「これ、メモリ不足では?」と疑った
重さの原因を考えたとき、まず浮かんだのがメモリ不足でした。
もちろん「自分のMacのスペックの問題かもしれない」「単に古いだけかも」という疑いもありました。でも、はっきりさせたかった。本当にメモリが足りていないのか、それとも別の原因なのか——感覚で「重い」と言っているだけでは、対処のしようがありません。
macOSには、いまのメモリ状況を確認できる標準のアクティビティモニタがあります。ただ、毎回それを開いて「メモリプレッシャー」を見にいくのは面倒で、しかも重くなったその瞬間に、サッと状況を確認して手を打ちたい。常に目に入る場所で監視できて、必要なら即座に対処できる——そういう道具が欲しくなりました。
確かめたいなら、作ればいい
ここで、もう一つの動機がつながります。
私はいま、「欲しいものが無ければAIに指示して自分で作る」というやり方で個人開発を続けています。ツーリング記録アプリも、その流れで作り始めたものでした。だったら今回も同じです。メモリ状況を常に見られて、重くなったらワンクリックで解放できる、自分専用の常駐アプリを作ればいい。
macOSには、使われなくなった非アクティブなメモリを解放するための仕組み(purge というコマンド)が、もともと備わっています。これをメニューバーから手軽に呼べるようにして、ついでに今のメモリ・CPU・スワップの状況も一目で見えるようにする——やりたいことは、はっきりしていました。
だから、作ることにした
こうして作り始めたのが、Macのメニューバーに常駐するメモリ監視&ワンクリック解放アプリです。目指したのはシンプルで、開発中の自分が本当に欲しいものでした。
- メニューバーに、いまのメモリ使用率を常に表示しておく
- 内訳(アプリ・システム・圧縮・キャッシュ)をアクティビティモニタ準拠で可視化する
- 重くなったら、ボタンひとつでメモリを解放できる
要するに「重さの正体を可視化して、その場で手を打てる」道具です。まずは自分の作業環境を軽く保つために——そして「メモリ不足を疑ったなら、ちゃんと確かめよう」という出発点から、作り始めました。
この連載について
本記事は、その開発記の第1話です。これから、
- 技術選定(何でアプリ化したか)
- 実装でのつまずき(メニューバー特有の落とし穴など)
- macOSで管理者権限が必要な処理を、安全に扱う設計
- App Store外での配布(署名・公証)
- 価格・販売の試行錯誤
までを、実体験ベースで正直に記録していきます。「欲しい道具を、AIに指示して自分で作り、最後は売れるところまで持っていけるか」——その全過程を、成功も失敗も含めて残すつもりです。
同じように「開発中にMacが重くて困っている」「欲しいものを自分で作ってみたい」と思っている方の、ひとつの実例になれば嬉しいです。
※ 本記事は当方(個人開発者)の実体験に基づく記録です。アプリは現在開発中で、機能や公開時期は変わる可能性があります。メモリの解放はmacOS標準の仕組みに沿った操作であり、効果や体感には個人差・環境差があります。