Transcription
専業。これある1つのファイルに書かれたコードの長さなんですけど、たった1つのボタンの色を変えようとしただけで全然関係ないはずの画面までなぜか崩れちゃう。今あなたは増築を繰り返した結果、もうどこがどの部屋に繋がっているのかわかんなくなっちゃった。そんな迷宮みたいなコードの前で立ち尽くしてるんじゃないでしょうか。
というわけで今回のテーマはこちら。デイ5ゴミ屋敷からの脱出です。ああ、動けばいいやっていう考えで行動をどんどん積み上げていった結果、どうにもならないゴミ屋敷に閉じ込められちゃった初心者開発者。さあ、ここからどうやって抜け出すか、その一部指重をね、見ていこうと思います。実はプログラミング初心者の多くがこの動けいの先にある壁を超えられずに挫折しちゃうんですよね。でも安心してください。今日のこの話はあなたのそのスパゲッティコードをプロがこれは美しいって絶賛するような建築物へと生まれ変わらせるためのいバ設計図になります。これ単なる表面的なお掃除じゃないんですよ。未来の自分を助けるための根本的な構造改革。まあ言ってみれば下科手術みたいなもんなんです。
さあ、ここからが本題です。高度のゴミ屋敷。これって結局あまりにも多くのものを1つの場所に詰め込みすぎた結果なんですよね。今回の主人公じじさんのアプリもまさにその状態でした。機能が増えるたびにもう収集がつかなくなってしまった彼のコ度はまさにスパゲティ状態ってやつですよね。1つのバグを直すとなぜか別のバグが生まれる。でかって言うとロジックもデータも見た目も全部が1つのファイルの中でごちゃごちゃに絡み合っちゃってるからです。あれ、あの関数どこに書いたっけななんてことがもう日常3半時だったわけです。
そこでAIメンターがまず提案したのがこの外科手術の第1歩。すごく基本的なことです。役割ごとにファイルを分けましょう。とりあえずロジックを別のクラスに移すだけでもだいぶスキルしますよと。これリファクタリングの本当に基本中の基本ですよね。でもじじさんから書っ てきた言葉が結構ね、多くの初心者が思うことなんですよ。いやいや、ただファイル を分けるだけとかそういうその橋のぎじゃなくてプロが使ってるみたいな最強の設計図を教えてくれよって。この気持ちすごく分かります。まだ自転車に乗り始めたばっかりなのにもうフェラーリの設計図が欲しくなっちゃう感じ。でもその控除心は素晴らしいですよね。
そこでAIは彼に本物の武器を渡すことにしました。それがアーキテクチャーという名前の片付け術。今回
はその中でも特に最近の開発で標準になっているMVMっていう手法を紹介します。MVVM。MVVM。なんか呪文みたいに聞こえるかもしれないですけど、やることはもう本当にヒ屋の片付けと全く一緒なんです。散らかったワンルームに役割ごとの収納ボックスを用意してあげる感じ。コードを3つのはっきりとした役割に分けるための設計パターン。それがMVVMです。
このMVBMをレストランに例えるとすごく分かりやすいですよ。まずビュー。これはまあお店のウェイターさんみたいなもんですね。ユーザーの目に触れるUIのことでお客さんから注文を聞くけど自分では料理はしません。次にビューモデル。これがマネージャーです。ウェイターさんから注文を受け取って厨房にこれ作ってって的確な指示を出す仲回役ですね。そして最後のモデルが料理人たち が色厨房。データの専門家としてお店の見見た目のことなんかは一切気にせずにとにかく正しいデータつまり美味しい料理を用意することに集中するんです。
もちろんじじさんの参の反応は、うわ、めんどくさ。全部床に転がってた方が早いじゃん。でした。こういう新しい構造に対してちょっと抵抗を感じるっていうのは多くの人が通る道ですよね。でも行動を書いていくうちにだんだん気づき始めるわけです。あれ、これ直したい場所が一瞬で見つかるぞって。そう、彼は無意識のうちにロジックとデザインをちゃんと切り離して考える。そういうのを手に入れたんですね。これこそが片付けの本当の力なんです。
さて、この大変な大掃除が終わった後にはもう素晴らしいご褒美が待っていました。綺麗な設計がもたらすプロの一手です。そう、構造が整理されたからこそこういう最後の仕上げができるようになるんです。それがHDデザイン。UIの表示ロジックとデータが綺麗に分れているからこういう見た目の調整がすごく簡単になるんですよ。スマホの画面の端から橋。あの上のステータスバーの裏側までデザインをグっと広げるこの技術でアプリの見た目に一気に高級感が出るんですよね。見てくださいよ。これ昨日まではっきり言って動くおもちゃだったアプリがもうねお店で売ってるプロのアプリみたいな顔付きになったんです。白かった部屋のままじゃ絶対にたどり着けなかった昨日みっていう頂点ですね。
じゃあ最後に今回の経験から僕たちが学んだ未来への投資についてまとめておきましょう。これからの開発のための黄金の設計図です。今回の王掃除を経て完成したモダンなアプリ開発の標準構成がこちらです。まずアーキテクチャはMVVMですね。これで見た目と頭脳とデータを分離し通しを良くします。次に招待管理。これはステトフローで仕組みでデータの流れを一方通行にすることで変なバグが起きるのを防ぎます。UIは没入感のあるHtoを採用。UXつまり使い心地の改善としてキーボード操作を最適化しました。そして性能面ではコルチーンを使って重いAIの処理なんかを裏側でやらせることでアプリが固まるのを防ぐ。これが僕たちが手に 入れた黄金の設計時です。
そして今回の話で1番大事な教訓が多分これです。急が回れ。いや、これ本当にプログラミングのためにある言葉だなって思いますよね。今ちょっと時間をかけて行動を整理したことで明日からの開発スピードはきっと3倍になります。綺麗な行動っていうのは未来の自分への最高のプレゼントになるんですよ。さて、あなたが今日自分のコードのから片付けるべきゴミって何ですかね?未来の自分へのプレゼントだと思って是非始めてみてください。まあ、こうは言いましたけど、多分明日のじいさんはまた新しいバグを山ほど作ってるんでしょうけどね。
それではまた次回のデバグでお会いしましょう。