PHP久々にプログラマ的な内容を。いってもメモみたいなもんだけども。xFrameworkを開発しているときに気にしながらやっていることなのですが、xFramework内でいくつか、すべてのメソッドが静的(Static)なクラスが存在します。これは共通の機能を提供するクラスなのですが、なぜ静的なのか。静的にしてしまうと、ソースコードが読み込まれた時点でインスタンス(クラスインスタンスは存在しませんが、メソッド自体はメモリロードされているという意味で)が存在するので、それを利用してクラスを生成しなくても利用ができるわけです。これって、メモリくうんじゃない?って思う人もいるかもしれません。そこで、singletonパターンというデザインパターンと比較してみます。これは、インスタンスが1つであることを保証するためのパターンです。別に1つじゃなくてもいいんだけどもね。共通処理で、いくつもクラスのインスタンスが生成されてはこまる、無駄などは、singletonパターンを使おうが、Staticだろうが同じく解決してくれます。なんで静的な方を選んでいるのか。答えは簡単で、singletonパターンの場合、クラスインスタンスを消したり、自動変数の用に自動的に破棄されたりすることを期待する場合は、singletonパターンを選択したでしょう。ブートストラップ内で処理を行っている中で、その機能を利用する度に、インスタンスを取得するステップが発生してしまいます。これは高速動作させるためのブートストラップとしては致命的なため、今回は静的な形を多様しているところがあります。それっぽいこと書いたけどあってるのか?(笑)先日購入した下記の書籍は、そんなデザインパターン自体PHPで使うのか?なんて思ってたり、むずかしそうだからいいや、って思ってる開発者にお勧めです。)ついにデスクトップが死んだ。日記いや、家のPCの話なんですが。えっとですね・・・キーボードが認識しない。マザーが死んだっぽい・・・SCSIのRAIDもストライピングしているやつが死んだんじゃないだろうか・・・。たいしたデータは入ってないんだけども。FFできない・・(そもそもやってないけど)24みれない・・エロビもみれない・・。あー何も出来ない(-_-)もうめんどくさいから、FF推奨スペックのマシンかって使おうかなぁ。映画とかみたりFFできればいいし・・・。SCSIのHDDはもったいないので、今度会社のPC(自分の)作るときにでも、使い回そうかしら。家のEIZOの24インチディスプレイが、PCない状態だとただの画面・・。Vaioを持ち歩いているので、仕事は支障ないけど、なんかいやねぇ。注文しようとおもったら年末だし・・こないっぽいし。ああ・・年あけたら買おう・・。復活しました、小堤です。忘年会シーズンですねぇ・・僕も忘年会じゃないけどものみが続いています。本当に休肝日ってのが必要なんだなぁと感じているわけです。来客とか色々庶務で立て込んでて、どうもプログラミングテンションが下がっていたのですが、年末前までにもう一度ブーストかけたいところ。PHPども、小堤です。しております(笑)疲れてるのかな。前にびっくりするクライアントからお話が・・と書いたことがありますが、正式にきまりましたので、発表できます!ゼンド・ジャパン株式会社です。あとで会社とxFrameworkのサイトも更新しますが、先出しでアライアンスパートナーになっていただいたことを発表します。はぁ〜すごいねぇ・・ゼンド・・・びっくりしましたわぁ。今後の話も色々させてもらったので、使っていただいている皆さんにも少しずつそういった情報を提供させていただければ幸いです。PHPはきそうです、小堤です。前からぼやいているパッケージインストーラーを今作っているフォーラムに適用してインストール出来るようにしています。つくるだけじゃなくて、パッケージインストーラーとして、XMLを記述するだけで画面が出来ていく仕組みにしました。実際のインストール作業部分はできていないんだけども、まぁ数日あれば・・・。<description><![CDATA[表示要素が赤く表示されている場合は、設定を修正してください。すべてが緑色の状態でインストールを行わない場合、xForumのインストールに失敗する場合があります。<description><![CDATA[xForumは、LGPLライセンスでリリースされているフリーウェアです。<description><![CDATA[xForumをサーバに設置するために、MySQLデータ構成設定を行います。下記の入力項目に必要な情報を入力してください。<description><![CDATA[xForumに、ご利用目的にあわせたタイトルを設定してください。<description><![CDATA[xForumを管理するユーザ情報を設定してください。<description><![CDATA[おめでとうございます。xForumのインストールが完了しました。”サイト”ボタンをクリックしてウェブアプリケーションを開始してください。</step></wizard>って感じのXMLを記述することで生成出来ます。・・・こんなんじゃさっぱりわかんないよね・・(^^;そのうちパッケージビルダーという作ったアプリケーションに対してこういうXMLとパッケージインストーラーを結合するCLIモジュールをxFrameworkに内蔵します。Preview3に入れたいと思っているわけですが、年内にだせるのかなぁ・・・。XMLで画面や入力項目ができていくのは、HTML書いているみたいな感じなんだけども、それがディレクトリ名の変更や、DB名の指定なんかに使える状態でできていく様は結構おもしろいです(わらがんばって早くだせるようにがんばりますわぁん。Preview3リリースしたら再会する予定です。師走12/29/06xFramework2.1.1aリリースと、今後。12/27/06プログラミングとバグ12/26/06クリスマスなのに・・・。12/25/06STATICクラスとsingletonパターンの適用12/24/06ついにデスクトップが死んだ。12/23/06最近飲み過ぎ。パッケージインストーラーおよびパッケージビルダー12/19/06死んでます。12/19/06やることが減らない。Loadingを考える。12/13/06WindowsとLinuxでのPDOの動作の違い12/13/06休憩がてら残作業。12/13/06ふぉーらむつくってまつ。完成12/08/06xFrameworkインストーラー機能の実装完了12/08/06やっと、オブジェクトの説明が書き終わった。xFramework2.1.1Preview12/06/06xFrameworkサイト更新とLiveRecordについて。eAcceleratorを使って動かす。XEのWeb管理インターフェース許可12/04/06作業開始!12/04/06嗚呼、FLASH見てたらこんな時間に・・。FedoraCore612/02/06xFrameworkがSJISなワケ、そしてUTF-8版の話。師走xFramework2.1.1aリリースと、今後。プログラミングとバグクリスマスなのに・・・。STATICクラスとsingletonパターンの適用ついにデスクトップが死んだ。