2018/12/10プログラミングにある程度慣れてくると色々と欲が出てきて「ここはこうやったほうが良いのではないか?」といった考えが浮かぶようになってくるかと思います。無数にあるそういった考えの中の一つとして、「ラッパー関数」というものを説明しようと思います。ラッパー関数とはラッパー関数とは一言でいうと「関数をラッピングして使いやすくする為の関数」というものです。分かり難いと思うのでサンプル(JavaScript)をご覧ください。paramF);この例ではfuncAという関数を呼び出していますが引数が6つも指定されています。作った直後は問題なくとも時間が立てば引数の意味、型、順番などが分からなくなるでしょう。WordPressのテンプレートを作られる方は分かるかと思いますが、get_postsというWordPress用の関数は引数が10つ以上(省略も可能ですが)もあるので使いにくいんですよね。そんな使いにくさを解消するのがラッパー関数です。ラッパー関数を利用したサンプルを紹介しましょう。555);}//パラメータを限定することで自由度が下がるが扱いが簡単に!funcA_wrapper(paramA);1~6行目がラッパー関数の定義部分です。funcAの第一引数だけを自由に設定できるようにして、他の引数は直接リテラル値を指定しています。利用者はfuncAの代わりにfuncA_wrapperを使います。今まで6つもの引数が必要でしたが、たった一つになりました!利用者にとっては簡潔で分かりやすいですよね。自由度を無くすことで使いやすさを向上さえているわけです。使いどころが肝心です。上記の例なら第一引数以外の引数は固定されていますが、固定されていても問題ないようなケースじゃないといけないわけです。ラッパー関数は引数を限定して使いやすくする他にも、付加機能を持たせて活用の幅を広げることも可能です。サンプルをご覧ください。555);//別の機能を内包して利便性をさらに高めることも有効!funcB();}funcA_wrapper(paramA);先ほどのサンプルとの違いはfuncA_wrapper関数内でfuncBが実行されるようになった点です。先ほどまでのfuncA_wrapper関数はfuncA関数の機能限定版という位置付けでしたが、このサンプルではfuncB関数の効果が付加されパワーアップしたということになります。うまく活用すれば簡潔なプログラムを書くことができるでしょう。闇雲な機能の追加に注意!使い回せるプログラムを書こうしかし、闇雲な機能の追加は考え物です。複数の機能を組み合わせると特定の状況への依存性(結合度)が高まり、他で使い回すことが出来なくなってしまう為です。結合度を極力低く保ち独立性の高い機能(モジュール)を作ることが重要です。このノウハウについては下記の書籍に詳しく書かれています。言語問わず全てのプログラマーにオススメできる良書です。コメントをキャンセルメールアドレスが公開されることはありません。...コーダー・プログラマーは将来が不安なら技術を高めるより手を抜く事を覚えるべき「手を抜け」「楽をしろ」などと言えば世間からの批判は避けられないと思う。...【挫折率90%...】プログラミング学習を挫折することなく学ぶ方法こんにちはkakeruです。情報漏えいを防ぐ為にセキュリティ対策は大切です。炎上するも反省しない本当の理由メンタリストDaigoさん、炎上していますね。...主張がコロっと変わるインフルエンサーは本当に信用出来ないのか?最近『インフルエンサー』と呼ばれる人達が注目されています。本業Webエンジニアの副業アフィリエイター。ブログアフィリエイトを中心に行い、最高月収は55万円を達成。小川忠洋が代表を務める『ダイレクト出版』の評判と過去の失態を明らかに!本当に信用できるのかまとめてみました。