はなちるのマイノートスマートフォン用の表示で見るはなちるのマイノートUnityをメインとした技術ブログ。UnityTweet3月あたりからもっとUnityを上手く使いたい!と思い、ぼちぼちC#の勉強を始めました。最近はクラス設計を見直そうと思い、デザインパターンやオブジェクト指向の勉強をしています。勉強するうちにあることに気づいてしまったのです。「クラス設計の勉強をしだすと、ゲームが永遠に完成しないのでは?」そう思った経緯について今回は書いていきたいと思います。オブジェクト指向が滅茶苦茶分からないデザインパターン多すぎ・・・Unityのクラス設計に関する記事自体が少ないそしてアプリは完成しなくなったさいごに願うことオブジェクト指向が滅茶苦茶分からないオブジェクト指向の勉強をしだして、SOLID原則であったり、デザインパターンであったり色んなことを覚えました。いったものかというイメージを覚えただけなので、実際に使ってみようと思うと悲劇は起こります。本当にこの一言に尽きると思います。オブジェクト指向は分かったふりをしてなんにも分かっていないような気がします。SOLID原則の中の1つに単一責任原則というものがあります。これはクラスの命名がかなり重要な要素の一つみたいです。そこで私もこれに従ってみようと名前を考えてみます。頑張って考えた先に思いついたのが、〇〇Manager・〇〇Controller...ってこれダメな代表例やん!?ということを何度も繰り返しました。自分のネーミングセンスのなさにいつもあきれてしまいます(そもそも経験不足なんだと思う)。いうか今まで見てきたUnityの記事は〇〇Managerがほとんどだったんや...といつも思います。クラス設計でつまずくところはまだまだあります。デザインパターン多すぎ・・・これも最初にみたときとてもビックリしました。有名なGoFデザインパターンは23個も種類があるようです...って23種類!?これだけでもう絶望的な予感がしました。別に全部を覚える必要はありません。必要なものを選んで使えばいいだけです。思いながらUnityでよく使われるデザインパターンはなんだろうと思いネットの海に出ました。みんな全然違うデザインパターンつかっとるやん...。みなさん思い思いのものを使っていました。色んな人が色んなデザインパターンを勧める。どれを勉強すればいいんや。本当にこんな状態になりました。これで悩みは終わりません。いうか、次に比べれば今までのは可愛いものです。Unityのクラス設計に関する記事自体が少ない本当にこれです。今までの悩みはすべてこれが原因です。それもそのはず、ほとんどの書籍や記事は全くUnityを想定をしていないものばかりだからです。確かにUnityもC#を用いていて、オブジェクト指向なのでそれらが役に立たないというわけではありません。Unity独特な部分は必ずあって、どうしてもうまくいかないものもあると思います。こちらの記事を代表にUnityのクラス設計に関する記事も少ないながらあります。torisoupwww.slideshare.netしかしそういった記事ではだいたいUniRxとZenjectが待っています。良いクラス設計にはこれらはやはり必須なのでしょうか。アプリは完成しなくなったということでUniRxから勉強を始めよう...と思っていたらもうアプリ制作をずっとしていない自分がいました。作りたいゲームは増える一方、やらなきゃならない勉強も増えるばかりです。そこであることを思うのです。クラス設計を考えないほうが、ゲーム制作できてたな・・・。別になにも考えずにもう一回やろうという訳ではありません。良い設計にできれば良いに越したことはありません。一度始めるとこうした方がいい、いやこうした方がいいといった情報が溢れているし、自分もこうした方がいい?と常々思います。クラス設計に正解はないのではないのかと思います。ぶっちゃけUnityのクラス設計のイディオムがあるなら本当に助かります。さいごに願うこと「Unityのクラス設計を完全に理解した」、本当に待ってます。Unityに詳しいかた、どうか私みたいな初心者にもわかりやすいような記事やスライドなどがありましたら教えてくださると嬉しいです・・・。はてなブログProUnityをメインとした技術ブログ。(9)スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。