2022.5.26 12日目 長らく投稿できずにいました。仕事が忙しく、毎日がほぼ勉強でしたので、これからまとめていこうかと思います。
今回まとめる事
Interface という機能について
参考資料
Interfaceって何??
そもそもInterfaceとは何なのでしょうか?
言葉の意味としては、接点、境界面、接触面、橋渡しなどがあるそうです。IT関連では、2つのものが接続・接触する箇所や、両者の間で情報や信号などをやり取りするための手順や規約を定めたものだそうです。
Interfaceで何ができるの?
私がInterfaceを知ったのは、会社の先輩に、Interfaceを作ってバグが出た時わかりやすいようにしておいてね(^^)と言われたことがきっかけでした。
UIの処理を考えていましたが、Updateの処理の中にたくさんのコードが連なり、このままいくとUpdateだけで500行を超えるのでは!?となっていた私にとっては、とてもありがたい教えでした。
できる事
「このInterfaceを使うときは、このメゾッドの中身を必ず作ってね」
といった、コードを書く時の決まり事を作ることができます。
namespace TestInterface
{
interface ITestInterface
{
void UpdateInterface(int x);
}
}
namespace TestInterface
{
public class InterfaceTest: MonoBehaviour, ITestInterface
{
public void UpdateInterface(int x)
{
}
}
}
クラスは分けて定義するのがいいそうです。
また、
public void UpdateInterface(int x)
{
}
↑の関数が定義されていないと、下の画像のようなエラーが出ます。
(実装しませんってなんやねん!してくださいにしてください)
このような感じで使用できます。
今回の仕事で使ったものは、コールバック関数を置いて、初期化する関数にUpdateに書いていた処理を移動させました。
そうすることで、あ、この処理が渡されたらこのコードが呼ばれて、こういう処理をするのか、とわかりやすくなりました。
(その代わり初期化関数が、めためた長くなりますが、わかりやすいのでよし)
短いですが以上です。