読者です 読者をやめる 読者になる 読者になる

事務員、プログラマーになる

事務員がプログラマーになりました。

抽象クラスで遊んでみる②

abstractなクラスを5つ作ってみました。

ところでCI_Controllerを継承したMY_○○Controller.phpを5ファイル作ったら認識してくれませんでした。
私のやり方が悪いのか何なのかわかりませんが、結局MY_Controller.phpの中に5クラスかいたら全部認識してくれました。
これでいいのか…?

作ったのは、祖先クラス、検索画面用、新規登録画面用、編集画面用、選択画面用の4クラスです。
既にあった画面設計からこの4つに分類。各画面には複数のsubmitボタンがあるので、その分岐処理も親クラスに実装しました。

例えば新規登録画面用のコントローラーを継承すると、初期表示・確認画面表示・入力チェック・データの登録処理の4つのファンクション作成を強制されます。
確認画面表示は何かやりたいことがあった時用なので、ほとんどの画面は空っぽになっています。

親クラスでは子クラスの関数を呼び出す部分や、共通処理(重複起動チェック、権限チェック等)も記載しました。
あとは画面のヘッダーやフッターの読み込みも全部親クラスに任せてしまったので、画面を作ってる最中はその画面の処理だけに集中できるようになりました。

なかなか全体をルール付けられず苦労した!
でもどんどん開発スピードが上がって楽しい!
1ヵ月前に生まれて初めてプログラムをした時は1個画面作るのに1週間以上かかってたけど、検索画面なら1日で2~3画面作れるようになりました。

と、いう話を開発経験者の方にしてみたら
「そういうルールが少なくて自由度が高いのがCodeIgniterなんだけど・・・」と。
そ、そうなのか! フレームワークってそういう意味だったんだ!!
つまり開発するときは設計にあったフレームワークを探すか、フレームワークに合わせて設計すれば、この苦労はいらなかったってこと・・・なのかっ!

ま、勉強できたと思えばいいやー(*´з`)