ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
本稿ではPHPの静的メソッドが何のためにあるかを考えるものである。 クラスとインスタンスの概念的な関係性 静的メソッドを理解するには、クラスとインスタンスの関係性を理解していなければならない。 クラスとインスタンスの関係は何だろうか? 一言で言えば、クラスは、複数のインスタンスの集合である。概念的な集合であって、インスタンスの配列という意味ではない。例えば、$user1のオブジェクトと$user2のオブジェクトを総じて、Userと呼べるのは、Userが$user1と$user2の集合だからだ。 以上の集合論的な観点を踏まえると、静的メソッドは何のためにあるかといえば、集合に含まれるすべてのオブジェクトに共通した処理(公理ともいう)を記述するためにあると言える。 逆を言えば、集合の一要素にすぎない$user1にのみ関係する処理は静的メソッドにはならない。Userクラス(ここまで読んだみなさん
本稿ではPHPで振る舞いを持つEnumの実装方法を順を追って説明していく。 Enumを定数で実装する方法も考えられるが、本稿ではクラスを使う。クラスでEnumを実装すると、それぞれの値に振る舞い(メソッド)を持たせられる利点がある。加えて、クラスで表現されたEnumはそれを利用するコードでクラス名を型宣言に使えるので、型安全なコードを書ける長所もある。 本稿では「支払い状況」を例にEnumを作っていく。まず、支払い状況は4つの状態があるものと考えよう。 保留(pending) 承認済み(approved) 却下(rejected) 支払い済み(paid) これらを実装していく過程を見ていこう。 なお、本稿で実装したコードはGitHubで公開しているので、完成版はそちらをご覧いただきたい。 まず、「支払い状況」のEnumクラスを作る。このクラスは継承する必要がないためfinalクラスにする。
10 月から開発グループ直下の所属となりました。岡田(okashoi)です。 先日 12/15(土)に開催された PHP Confernece 2018 にて「Laravel × レイヤードアーキテクチャを実践して得られた知見と反省」というテーマで登壇させていただきました。 PHP Conference 2018 の様子 PHP Conference 2018 のテーマは「GROWTH」 今年は「GROWTH」をテーマに合計 38 のセッション + 10 を超える LT がありました。 どのセッションも興味深い内容であり、当日の来場者はおよそ 1000 人にものぼったそうで、たいへん盛り上がりました。 当日の盛り上がりは twitter からも見て取れると思います。 twitter.com 発表内容 Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く