私は、画面上にランダムな半径、ランダムな色、ランダムな位置を持つ円を表示する小さなプロジェクトを開始しています。Objective CでのMVC哲学の適用
- CGFloat半径
- するCGPointセンター
- UIColor radiusColor :私は、私は以下のインスタンス変数を含むクラス サークルを持って客観C.
でMVCパラダイムを使用してこれを実装したいです
このクラスにはメソッドが含まれておらず、データを保持しています。それは別のファイルに置かれます。 (Circle.m & Circle.h)
私はmyModel私のMVCのモデルになっているクラスを持っています。バインドされたディメンションがコントローラ全体でビューから要求される、ビューの境界内にセンターをランダムに生成するメソッドが含まれています。
ランダムなプロパティ(中心、色、半径)が生成されるたびに、CircleクラスのインスタンスがmyModelクラス内に作成され、NSMutableArrayに格納されます。 生成が完了すると、このNSMutableArrayはコントローラに渡され、コントローラに渡され、サークルが表示されます。
私の質問は、私が正しくMVCパラダイムを実装していた場合、必要があることである:
- モデル(に、mymodel)はサークルのインスタンスを保持し、またはサークルのインスタンスを保持しなければなりませんコントローラによって?
- 私のモデルは1クラスから成っているか、いくつかのクラスから成り立っていますか?
- モデルはビューの境界の大きさを知っていますか、それともMVCの考え方に違反していますか?
最後の質問が1つあります。上記のように実装した場合、myModelと円別々のモデルまたは両方のクラスが1つのモデルを構成しますか?
ありがとうございました!
あなたのCircleクラスはメインモデルクラスです - そして、そのメソッドに渡す 'CGRect'の中に閉じ込められた円を作成する' randomCircleWithinBounds: 'クラスメソッドが必要であると主張したいと思います。モデルの一部はあなたの 'myClass'です - 一般的なObjective-C命名規則に従うように名前を変更する必要があります(少なくとも、大文字で始める必要があります)。 – danyowdee