人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

オブジェクト指向プログラミングについて教えてください。

これまでカスタマエンジニアとして業務アプリをそこそこの量作ってきましたが、
恥ずかしながらオブジェクト指向でコードを書いたことがありません。

ただ、入門書にしたがって簡単なオブジェクト指向プログラミングを
転記して実行したことはあります。
(そのときはPHPで、MySQL接続関係のクラスを用意して、データベース名や
ユーザ情報が変わったときでもそのクラスだけ変えればよいというものでした。
ついでにそのときに「継承」なども一通り学習しました。)

ですが、実際自分がこれから小・中規模システムを作っていく上で
どのような場面でクラスを作っていけばいいのか、具体案が浮かびません。

よくある使われ方としてどのようなものがあるのでしょうか?

今後、意識して取り入れていかないとなかなか身につかないと思い
危機感を感じております。

どうか宜しくお願いします。

●質問者: EEFAE4
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:MySQL PHP アプリ エンジニア オブジェクト指向
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● deflation
●20ポイント

質問が漠然としているのですが、たとえば業務アプリを設計する場合では、設計段階でUML図を起こしますが、そこからUML クラス図へ落としていくことで、自動的にオブジェクト指向になってゆきます。

◎質問者からの返答

ご回答ありがとうございます。

過去に企業でプログラマをやっていたときでもUML図は作ったことはなく、知りませんでした。勉強してみます。


2 ● a-kuma3
●20ポイント

もう絶版なんですけど、↓が分かりやすいと思います。

オブジェクト指向方法論OMT―モデル化と設計

オブジェクト指向方法論OMT―モデル化と設計

  • 作者: ジェームズ ランボー ウィリアム プレメラニ ウィリアム ローレンセン マイケル プラハ フレデリック エディ
  • 出版社/メーカー: トッパン
  • メディア: 単行本


「どのような場面でクラスを作る」んじゃないです。全部クラスで作ります。

クラスの粒度をどこまでにするか、という悩みはありますが、機能や仕様をベースにクラスを設計していくと、

オブジェクト指向の「予期していなかった仕様変更に対しても、きちんとカプセル化されている」というところになかなかたどりつけません。


# と、信じています :-)

◎質問者からの返答

ご回答ありがとうございます。

全部クラスで作るのですね。入門書がそのようなつくりではなかったので

勘違いしておりました。おすすめされた本、探してみたいと思います。


3 ● foxplanning
●20ポイント

まずは、オブジェクト指向で書かれた他人のソースコードを解析して、どのような考え方(設計思想)でクラスが作成されているのか?

自分なりに分析してみることから始めてみてはいかがでしょうか。

◎質問者からの返答

ご回答ありがとうございます。

他人のソースコードの解析が第一歩ということですね。

大変参考になるご意見でした。


4 ● la-la-land
●20ポイント

デザインパターンの本とか読んでみたら良いと思います。

PHPならフレームワークを利用して開発を行えばそのままオブジェクト指向なコードになるんじゃないでしょうか

◎質問者からの返答

デザインパターンの本ですか。ぜひ読んでみたいと思います。

フレームワークもまだ利用したことないので、まさに

その辺のレベルへステップアップするためにオブジェクト指向を取り入れたいと

思っているところでした。


5 ● pretaroe
●20ポイント ベストアンサー

>どのような場面でクラスを作っていけばいいのか、具体案が浮かびません。

昔のモジュールの単位をクラスに置き換える

構造体などのデータもクラスに置き換える

クラスは、データと処理の両方を1つのものとして扱える

データ系は、DBを使うのならERモデルに近い感じ

処理系は、モジュール単位に近い感じ

継承とかそういうのはあまり考えなくてもよい。

このあたりはフレームワークを使うなどすればほとんど何も考えなくてよい。

あなたが持っている古い知識との関連付けからまずは始めたほうが良いでしょう。

PHPによるデザインパターン入門
下岡 秀幸 道端 良 畑 勝也
4798015164

どういう風に使うべきかは、テンプレートがあります。

デザインパターンと呼ばれていて、大概の人はこのパターンを応用して適用してます。

1から考える人もいますが、たいていそういう人の設計はよくないことが多いです。

◎質問者からの返答

ご回答ありがとうございます。

おすすめしてくださった本をさっそく注文しました。

具体的な書籍をあげていただいて大変助かりました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ