• ベストアンサー

関数化して楽したいですが・・・

http://oshiete1.goo.ne.jp/qa2419133.html で,わたしの質問に対して#2さんにいただいた回答を ほぼそのまま活用しています. 「もっとわかりやすく関数化したりしてください」とありますが, たとえば,#2さんが示されたどの部分が関数化できますか. 共通処理部分を function func_name() みたいに定義するらしいことくらいしかわかりません. 関数化により,後々のコーディングで楽できることはわかるのですが 具体的な発想がないため着眼できません (教わりさえすればいつも,おおそうか!と目からウロコなんですけど)

質問者が選んだベストアンサー

  • ベストアンサー
  • ngsvx
  • ベストアンサー率49% (157/315)
回答No.1

関数化するということには、 「共通の処理を1カ所で行うことでバグを減らす」 ことの他に、 「要点をまとめ、プログラムをすっきりさせる」 という使い方もあります。 長い話をずらずらとされるより、まずは要点を聞き細かいことは後で聞くという方がわかりやすいと思いませんか? 例にあげたコードでは、 ・前半部分はエラーのチェック ・後半はエラー画面表示 となっています。 ですから、そのまま $emsg = checkError($_POST); if($emsg != null){ dispError($emsg, $_POST); } というようにすることが考えられます。 checkError dispError が関数化したものです。 どの箇所を関数にするかは、センスや経験などの要素が大きいので、全ての人が同じような関数にするとは限りません。

litton101
質問者

お礼

ngsvxさん,御礼が大変遅くなって失礼しました. > 「共通の処理を1カ所で行うことでバグを減らす」 > 「要点をまとめ、プログラムをすっきりさせる」 どっちも喉から手が出るほど欲しい&習得したいテクです・・ > 例にあげたコードでは、 : > というようにすることが考えられます。 なるほど・・なかなかおくが深いですね. 記述方法(文法)も初めてみたものなので,思わず調べてしまいました・・ > どの箇所を関数にするかは、センスや経験などの要素が大きいので、 > 全ての人が同じような関数にするとは限りません。 なかなか実務で開発に従事しないと,独学では難しいですかね. 努力次第なことは承知してるのですが, 質問から得られるご回答だと,目からうろこばっかりです. アドバイスありがとうございました.

関連するQ&A