No.1ベストアンサー
- 回答日時:
がると申します。
エンジニアやってます。んと…「入力画面->完了画面」の場合、私なら4つのクラスに分けます。
・anyから入力画面を表示するクラス
・入力画面からの入力をチェックして以下のいずれかに振り分けるクラス
-エラーがあるので、入力画面をもう一度表示するクラス(エラー表示込み)
-問題ないので登録処理をして完了画面を表示するクラス
ただ、この分け方は、MVCと呼ばれる概念と、action chanin(私のフレームワークですと再帰call)という実装があれば、になるのですが。
個人的には、ある程度ファイル数を数作って、各ファイル(== クラス)の処理をシンプルにする方が、メンテナンスは楽だと考えています。
わからないところなどあったら質問いただければ、可能な限り返信いたします。
ご返答ありがとうございます。
>個人的には、ある程度ファイル数を数作って、
>各ファイル(== クラス)の処理をシンプルにする方が、
>メンテナンスは楽だと考えています。
これでなんとなくですが方向性は分かりました。参考にしてみたいと思います。
1つ質問があるのですが、自分はクラスというものをほとんど理解してないのでとんちんかんな質問ですけど、
galludaさんの4つに分ける例だと、
4つのファイルにそれぞれ一つクラスが入っていますよね?
そのクラスのオブジェクトはどこで作って使うのでしょうか?(どのファイルで使うのでしょうか?)
それとこの新規登録だけに限れば、
クラスを使うこと最大のメリットはなにになるのでしょうか?
No.3
- 回答日時:
がるです。
んと…MVCは、後は
http://www.m-fr.net/PESEF/on_the_way/
で、MVCではないところからMVCまでの進む過程が書いてあるので、あるいは参考になるかもしれません。
> >・入力画面からの入力をチェックして以下のいずれかに振り分けるクラス
> というやつで、新規登録だけでなく、例えば、カートに商品を追加する処理があった場合
> このModel(class)にその場合の処理も追加するのか、それとも別にファイル(class)を
> 用意して(shinki_checkクラス、cart_checkクラス)別々に記述するのでしょうか?
別々のクラスを用意して、ですね。
> もし追加する場合、そのModelの中で何かを基準として場合わけすると思うのですが、
> その部分がどのような処理になるのかが知りたいです。
大雑把にかくと「画面毎」で、正しくは「機能毎」になります。
とはいえ…この辺はいろいろな流儀があるのですが(苦笑
クラスは小さめに作ってこつこつ直すのが楽かなぁと個人的には思います。
以上何かの参考にでもなれば & また質問があったらお気軽に ^^
ご返答ありがとうございます。
MVCの使い方についていろいろ調べてたのですが
自分の頭ではまだ時間がかかりそうなので、
ここでは一旦締め切りたいと思います。
ただMVCの存在と細かく分けていくという方向性を知ることができたので
とても為になりました。ありがとうございます。
No.2
- 回答日時:
がるです。
> galludaさんの4つに分ける例だと、
> 4つのファイルにそれぞれ一つクラスが入っていますよね?
> そのクラスのオブジェクトはどこで作って使うのでしょうか?(どのファイルで使うのでしょうか?)
うい。多分質問されると思ってました(笑
んと…MVC、という概念を使うです。
簡単に書くと。
書いているそれぞれの4つのclassは、M(Model)に当たる部分で。
実際にこのクラスを使ってくれるのは、C(Controller)にあたる部分が勝手に呼び出してくれます。
で…このMVCという概念ですが。…そうですねぇ。
http://www.hyuki.com/yukiwiki/wiki.cgi?MVC
http://ja.wikipedia.org/wiki/Model_View_Controller
http://www.stackasterisk.jp/tech/php/phpMvc01_01 …
http://www.jac-net.com/~tarzan/smalltalkers/mvc/ …
あたりを読んでみていただけると。
大雑把に書くと、フレームワークってのを使うと、大抵出てくる概念になります。
> それとこの新規登録だけに限れば、
> クラスを使うこと最大のメリットはなにになるのでしょうか?
「新規登録だけに限れば」というわけでもないのですが。
業務で作る場合、特に「保守/メンテナンス/仕様変更」がまま起きるのですが。
そういった際に「きちんと作られたクラス設計に基づく」のであれば、クラスで組んだほうが、修正が楽になります。
逆に、個人で一回作りきりだと、クラスで作る意味合いは大分下がるかもしれません。
なれてると「手早く作れる」のが利点ではあるのですが…これはなれるまで得られない利点なので(苦笑
以上何かの参考にでもなれば幸いです。
ご返答ありがとうございます。
自分なりにMVCについて理解しようとしたのですが、
なんとなくは理解できたのですが、、、たぶん・・・
>・入力画面からの入力をチェックして以下のいずれかに振り分けるクラス
というやつで、新規登録だけでなく、例えば、カートに商品を追加する処理があった場合
このModel(class)にその場合の処理も追加するのか、それとも別にファイル(class)を
用意して(shinki_checkクラス、cart_checkクラス)別々に記述するのでしょうか?
もし追加する場合、そのModelの中で何かを基準として場合わけすると思うのですが、
その部分がどのような処理になるのかが知りたいです。
本題とずれてきて申し訳ないのですが、もう少しよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 法人税 電子帳簿保存法について 1 2022/04/07 11:17
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- その他(プログラミング・Web制作) 置換ソフトで指定したファイルの1行目に入力できるものを探しています 7 2022/11/24 10:34
- ノートパソコン ソフトアンインストール残存ファイル 3 2022/09/13 18:15
- C言語・C++・C# pythonのファイルの並びでの読み込みとリストについて 4 2022/04/13 03:52
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「クラス関数」「メンバ関数」...
-
PHP5.2.6でのDOMDocumentのload...
-
$this->pets[$i]->report();の...
-
get_declared_classes()について
-
Objectの型チェック
-
【PHP】クラス と 関数 の違い
-
phpのクラスにて別ファイルの変...
-
PHPの名前空間について質問です。
-
スクリプト言語特有のテクニック
-
ラッパークラスって何ですか?
-
プログラムにも慣例みたいなも...
-
フォントの色を変えるには?
-
onedrive にexcelファイルをア...
-
PHPで新しいウインドウで開く命...
-
別ファイルの変数を呼び出した...
-
バッチを用いたフォルダの自動移動
-
php.ini を設定を変更すると再...
-
form actionで二つ送信先を指定...
-
phpの中でphpを書けないか
-
「@$変数」の「@の意味は?」
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「クラス関数」「メンバ関数」...
-
phpのクラスにて別ファイルの変...
-
ラッパークラスって何ですか?
-
class定義のphpをファイル分割...
-
phpのクラスメソッドの定義が長...
-
'_'(アンダースコア)の使い方...
-
クラス
-
配列とオブジェクトの違い
-
PHPのクラス名の付け方
-
codeigniter cartのoptions
-
メンバインスタンスへのアクセ...
-
PHPでオブジェクト指向開発して...
-
ユーザー定義関数とクラスの違...
-
ソースファイルの分け方について
-
データベースで値をインクリメ...
-
require_onceについて
-
PHPでサブクラスからスーパクラ...
-
phpで使用不可のクラス名
-
php、可変プロパティ名について
-
比較演算子===と!==について
おすすめ情報