My Memo
XTC2006の準備に忙しかったため、ブログを書くことができませんでした。また、私は私がチェックしなければならないソフトウェアたちをチェックすることができなくなっています。(私にとって)重要で興味深いいくつかのソフトウェアが、リリースされているのですが……

Geist3D

http://www.geist3d.org/
これは、興味深いGUIツールを持つスクリプト駆動のグラフィックス・エンジンです。私は、そのようなエンジンがオープン・ソースによって開発されたことに驚いています。プロプラエタリのミドルウェアでは、初めからGUIを持つエンジンは珍しくありません。多くのミドルウェアは、GUIツールの設計と共に開発されています。しかし、オープン・ソース・ソフトウェアでは、GUIツールは、オプションです。多くのエンジンは、グラフィックス・エンジンとしての機能を実装するようリクエストされます。しかし、エンジンがエンドユーザーによって使われるならば、エンジンが初めからツールのために設計されていることが重要です。同様に、XOOPS Cube の重要な事柄は、プログラマーのためのAPIでなくRADツールのための規則であると言えます。

OGRE 1.2.2

http://www.ogre3d.org/
私は、1.2.0 から OGRE のチェックができていません。さらに、私は先月以来 OGRE のフォーラムを読めていません。私は、来月までこれらの投稿をチェックすることができないでしょう。私は、テストを通してレポートを OGRE にコントリビュートしたいです。(しかし、その前に XOOPS Cube を完了させなければなりません)

私はこれらのタスクを自分の
GTDに加えるべきなのでしょう! Happy
|
Doxygen for XOOPS Cube (3)
私はこのブログを昨晩アップデートできませんでした。さて、いよいよ私達はDoxygen によってXOOPS Cube のソースコードからドキュメントを生成します。

Doxygen Doxywizard という名前の GUI アプリケーションを備えています:
iviewcapture_date_21_07_2006_time_18_18_15
それはDoxygen のためのコンフィギュレーション・ファイルを生成し、そのコンフィギュレーション・ファイルによってDoxygen を実行します。さらに、Doxywizard にはウィザードとエキスパートという、初級者と上級者のための、2つのセッティング方法があります。PHP プログラムはほとんど高度な設定を必要としないので、ウィザードモードの使用法だけを覚えればよいでしょう。

iviewcapture_date_21_07_2006_time_18_18_15
Doxywizard を実行し、それから、 Wizard ボタンを押します。

iviewcapture_date_21_07_2006_time_18_19_20
あなたがダウンロードした XOOPS Cube のディレクトリを 'Source code directory' にセットしなさい。そして、サブディレクトリを解析するために、 'Scan recursively' オプションをチェックしてください。それからドキュメントを収納するディレクトリを作成し、それを 'Destination directory' にセットしてください。 'Project name' 'Project version or ID' は自由です。

iviewcapture_date_21_07_2006_time_18_19_49
次に、 Mode タブをクリックしてください。

iviewcapture_date_21_07_2006_time_18_19_49
'All entities' を選択してください。それにより、すべてのエンティティが、それがドキュメントシステムのためのコメントを持っているかどうかに関係なく、ドキュメントのために解析されます。それから、 OK ボタンを押してダイアログを閉じてください。

iviewcapture_date_21_07_2006_time_18_20_32_1
次に、このセッティングをファイルに保存しなければなりません。Doxywizard Doxygen を実行させるためにコンフィグレーションファイルを必要とするためです。Doxywizard はあなたが保存したファイルを Doxygen のためのコンフィグレーションファイルとして用います。

iviewcapture_date_21_07_2006_time_18_20_32_2
次に、 Doxygen がドキュメントを生成するためのテンポラリファイルを作成するディレクトリを指定しなければなりません。あなたの OS のテンポラリ・ディレクトリか、新しいディレクトリを作ってそれを指定するとよいでしょう。

あなたはこれでドキュメント生成のための最低限のセッティングを終えました。最後に、 'Start' ボタンをクリックしてください。ドキュメントがあなたが指定した転送先ディレクトリに生成されるでしょう。

あなたは再度これらのセッティングを行う必要はありません。いつでもコンフィグレーションファイルをロードし、ドキュメントを生成できます。
|
Doxygen for XOOPS Cube (2)
XOOPS は、 PHPDoc をドキュメントシステムとして使います。Doxygen と、 PHPDoc の両方は、 javadoc のドキュメントタグを扱うことができます。しかし、各ドキュメントシステムは、いくらかのオリジナルの規則を持っています。そして、 Doxygen が C/C++ のために開発されてきたので、 Doxygen は、 PHP プログラムのために上手にドキュメントを生成できないかもしれません。

しかしながら、 Doxygen は、 PHPDoc よりあなたのために使い易いでしょう。私は、 Doxygen によって生成されたドキュメントが好きです。XOOPS Cube において、我々は、 Doxygen のオリジナルのタグを利用するべきでありません。従って、生成されたドキュメントは、 Doxygen の最大効果を含みません。しかし、それは、十分です。

試してみましょう。まずはじめに、 CVS から最新版をチェックアウトしてください。それをするために、あなたは、 XOOPS Cube Gems でこの記事を参照できます。次に、 Doxygen をダウンロードして、そして、それをインストールしてください。

次のエントリで、あなたは、これらのソフトウェアによってドキュメントを生成するでしょう。また明日お会い致しましょう。
|
Doxygen for XOOPS Cube (1)
XOOPS Cube が多くのファイルと多くのクラスを持つため、 XOOPS Cube のソースコードを読むことは難しい。Cube のソースコードを読むために、私は Doxygen を推奨します。 Doxygen は有名なドキュメントシステムであり、ソースコードを解析して HTML ドキュメントを生成します。そうです、それは javadoc の一種です。Doxygen がクラス名とファイル名でドキュメントをサーフィンするためにハイパーリンクを作成するので、生成されたドキュメントは本当に有益です。あなたはネットサーフィンをするように「ドキュメントサーフィン」をすることができます。

ソースコードをあなたのドキュメントに出力するために、ソースコードオプションを有効にすると良いでしょう。生成されたソースコードページは、クラス名と定数のところで、同様にリンクを含んでいます。これらのページはIDEを使うより良い。あなたは必要なクラスと定数を容易に調査し得ます。

恐らくあなたはソースコードを読むのに IDE を使うことをやめるでしょう(その IDE が VisualStudio だとしても)。

ドキュメントシステムのためにすべてのクラスがコメントを持っているわけではないので、生成されたドキュメントは十分に我々の書いた概要を含んでいません。しかし、私は Doxygen が重要な情報を自動的に生成するので、そのドキュメントはあなたにとって有益だと思います。
|
Today's Report
私はまた風邪を引いてしまいました。 最近、私は週末になったら風邪をひいています。私のブログは2日間更新されませんでした……

さて 私たちはXOOPS Cube2.1のユーザモジュールで多くのファイルをチューンアップしました。そして、私はいくつかの重要なフィーチャーがAlpha3から4への変化の中で動作不良を起こしていることを知るに至りました。 グローバルサーチサービスは古いXCube_Serviceのクラスと共に開発されました。しかし、XCube_Serviceがかなり変わってしまったので、現在、それは動きません。XCube名前空間のデザインはBeta2で決定されるでしょう。 したがって、今は私たちは一時的なデザインでこのクラスを修復するつもりです。

ユーザモジュールのすべての動作フォームは既に調整済みです。それらのクラスにも、多くの問題がありました。加えて、 cubson が時々アップデートされたために、アクションクラスのすべてが一様ではないという別の問題もあります。それらのコードをきれいにするために、私たちは手作業で部分修正をしなければなりませんでした。 そのような問題はcubsonの弱点の1つです。

そのほか、
Alpha3のいくつかの重要な欠陥がいくつかのすばらしいレポートによって修正されました。私たちは偉大なレポーターの協力に感謝します。

私は、明日
CVSにこれらの変更をコミットするつもりです。
|
横浜ボールお化け
すみません、私は横浜スタジアムに野球の試合を見に行きました。そして、私はゲーム開始前にボールのお化けを見ました。
PICT0008
あのう……あれはなんですか? 私はあんなお化けを見たことがありません。私が5月にこのスタジアムに来たとき、あんなお化けは出て来なかったはずです。
PICT0011
奴は、同じくマスコットである黒いクマと仲が悪いらしいです。彼らはいつも喧嘩しています。クマの方が、パンチもキックも可能であるぶん、ボールお化けより強そうに思えます。ボールお化けはただダンスができるだけです……しかし、奴らは互角に張り合っていました。

グランド整備のハーフタイムでは、ダンスチームがファンのためにダンスを披露してくれました。しかし、ボールお化けとクマは、ダンスチームのまわりでさんざん喧嘩していました
……
PICT0009
あれを見てください! 脚部収納モードです。もうほんとただのデカいボールとしか……

P.S.
前田様 in 練習時間:
PICT0005
前田様と新井と栗原はよく働きました。彼らはコンビネーションで、2アウトから3点をもぎとりました。特に前田様はいつにもまして調子が良く、試合終盤で敬遠策をとられていました。カープ負けたけど……
|
extoolsD Project
CubsonextoosDプロジェクトの成果物です。extoolsDはextoolsの経験に基づいています。私は以前、XCube_ActionStrategy について書きました。 それは開発者のための、空の枠組みです。 コアがモジュール開発者にいかなるフレームワーク・スタイルも強制しませんので、モジュール開発者はXOOPS Cubeで自分達の独自のフレームワーク・スタイルを使用することができます。 いくつかのポピュラーなフレームワークが移植されるかもしれませんし、XOOPS Cube用のオリジナル・フレームワークがいくつか登場するかもしれません。

ExtoolsDはツールの1つではありません。それは独自のツール環境を開発したがっている開発者のためのダイナミックリンクライブラリです。 PHPXOOPS Cubeコミュニティにとっての唯一の言語ではありません。また、モジュールはXOOPS Cubeコミュニティのための唯一のプログラムではありません。 どうか、XOOPS CubeのためのツールのすべてがXOOPS Cubeコミュニティのターゲットであることを理解してください。
YouTool_1
CubsonはextoolsD.dllを使用するサンプルです。ExtoolsDライブラリは様々なツールを開発することを容易にするでしょう。

モジュールを開発して楽しむことができないなら、
RADツールを開発して楽しんでください。 RADツールを開発して楽しむことができないなら、XOOPS CubeFTPアプリケーションを開発して盛り上がりましょう。巨大なコミュニティはあなたの素晴らしいプログラムを共有することができます。

加えて、ツール開発者のグループは、一種の(独立した)コミュニティです。私たちと共に様々な生活物を開発して楽しみましょう。どんなプログラムも書くことができないなら、ドキュメントを書くことができますよ
!
|
3D Application Rankings
最もポピュラーなオープンソースエンジンの1つである OGRE は、多くのツールキットを持っています。ダウンロードページを参照してください。 メジャーアプリケーションのためのツールキットが十分にあります。そして、そのページはOGREにおけるポピュラーなアプリケーションのランキングを示しています。それは興味深いです!

OGREで最もポピュラーなアプリケーションは3ds maxのようです。ただ、max のためのツールキットはOGREで最初のツールです。ですから、それの新しいバージョンがリリースされる度に、max のツールキットはダウンロードされます。しかし、3ds max の知名度には誰もが同意するところでしょう。

私たちはsoftimage XSIのランクに注目すべきです。Blenderが2つのアイテムを登録していますから、XSIはワーストということになります。しかし、ゲーム開発には、XISは本当に素晴らしいです。 それには、プラグインとプログラマブルシェーダのためのベスト環境が備わっており、また、リーズナブルです。なぜ XIS はマイナーですか?
Wikipedia(日本語版)の記事は、その理由について語ります:

3Dソフトが全般的に高価で、ユーザーは一度覚えたソフトから気軽に乗り換えたがらないことが要因にある。



XSIのシェーダパイプラインのためのダイアログはエクセレントです。また、TDEはおもしろい環境です。XSIは、よりポピュラーになるべきです。
|
VS.PHP (3) - The comment is power
VS.PHP は型セーフでない言語である PHP でインテリセンスを利用するための興味深いアイデアを備えています。これを見てください:

class Foo1
{
  function
methodFoo($num)
  {
  }
}

function
foo($a, $b)
{
}


foo() 内では、 VS.PHP $a の型を知りません。そのため、 foo() の中でコードを打っても、 VS.PHP による支援は望めないでしょう。

私たちはしばしば、ドキュメントシステムのために、関数定義の先頭にコメントを書きます。それらのコメントのフォーマットは PHP の文法によって定義されたものではありません。しかし、 phpdoc Doxygen といったポピュラーなルールがありますね。 VS.PHP は変数の型をそのコメントを読み取ることで解析します。このサンプルを見てください:

class Foo1
{
  function
methodFoo($num)
  {
  }
}

/**
* @param  Foo1  $a
*/
function foo($a, $b)
{
}


私はシンプルなコメントを foo() の先頭に加えました。このようなコメントが書かれていれば、 VS.PHP はインテリセンスを働かせるために型を解析することが可能です:
vsphp03

これは、型セーフではない言語を取り扱うすべての IDE のための偉大なヒントす。そして、そのアイデアは私達に迅速なタイピングをもたらします。それは私達に必要なものです。(これに慣れきった)私は VS.PHP なしで PHP を書けません。
|
CVS update notification mail
私たちの崩れたロードマップを回復するために、XOOPS CubeCVSは日々アップデートされています。そして、開発者がCVSにアップデートしたソースコードをコミットするとき、あなたは特別なメーリングリストによって通知を受け取ることができます。 通知は下手な英語のコメントと diff が書かれています。あなたがコア開発チームの動きが気になるのであれば、このMLは役に立ちます。

通知を受け取り始めるために、あなたはこのページであなたのメールアドレスを登録しなければなりません。 登録ページは日本語で書かれています。 しかし、通知が英語で書かれているので、心配しないでください。 以下のイメージを見てください。あなたはメールアドレス、パスワードと、確認パスワードを以下のテキストボックスに書くことができます。
cvsml
さらに、ファイルにおけるコメントは決して完璧ではありませんが、いくつかの役に立つ情報を含んでいます。CVSに関するログとこれらのコメントは変更を理解しやすくするでしょう。
|
I had a cold
私は3日間このブログをアップデートしませんでした。 私は金曜日の夜、友人と一緒にバーへ出かけました。そして、私たちは翌朝までビールを飲んでいました。それから、私は風邪をひいてしまいました……

私は、
XTC2006のためにプレゼンテーションを準備するための多くの時間をフイにしなければなりませんでした。土曜日と日曜日をスキップしてしまったのは、致命的な問題です。私は、自分の計画を回復しなければならないので、今週末に野球を見に行かないかもしれません。XTC2006まで5回の休日があります。 しかし、東京での野球の試合が5日間これらのすべてにあります。
mindmap
私はXTC2006cubson GUI版の最新版の操作ムービーを持って行かなければなりません。しかし、cubson GUI版はまだ十分動いていません。したがって、現時点では私はプレゼンテーションのために操作ムービーをキャプチャーすることが出来ません。いずれにせよ、少なくとも、私は残された時間の中で、必須事項を開発していかなければなりません。
|
VS.PHP (2) - Class browser
VS.PHPのもうひとつのクールな特徴がクラスブラウザです。 クラスブラウザは、phpファイルを分析して、どれがクラス、特性、およびメソッドの名前を含んでいるかをリストに示します。 私たちは、リストをクリックすることによって、指定された位置までジャンプすることができます。 そのうえ、あなたはキーワードで探すことができます。
VS_class_browser01
はい、あなたはC++C#、などと同様にクラスブラウザを使用することができます。 そして、選んだクラスとメソッドへの折りたたみ式のメニューは利用可能です。
VS_class_browser02
だれもカーソルを動かすための時間を浪費したがっていません。 この機能は複式学級を含んでいるファイルに便利です。 クラスを選択した後に、あなたはクラスのメソッドを選択することができます。
VS_class_browser03
良いツールで、私たちは幸福になります!
|
VS.PHP (1) - Intellisence
このエントリーは私が2005924日に書いた古いエントリーのリミックスです。

私は以前、Tom_G3XさんからVS.PHPというツールの存在を聞きました。 私は、しばらくそれをテストして、そして、最も良い結論を得ました。

「これは
PHPにおいて、最も優れた開発環境です」

私は、絶えず最も良い
PHP IDEを探し続けていました。 私はマイクロソフトが好きではありませんが、VisualStudioを非常に評価しています。 私の人生はVisualStudioCodeWarriorを切り離すことができません。VS.PHPは、プログラマに幸福をもたらす効力を持つVisualStudioのためのプラグインです。

インテリセンス

私は、.NETのインテリセンスなどのサポート機能が欲しいと思っていました。しかしながら、私は様々なIDEでそのような機能を得ることができませんでした。 私の望みには、EclipsePeggyも十分ではありません。しかし、VS.PHPは本当のインテリセンスを実現します。それは本当にわくわくします!

function foo($name,$description)
{
}


vsnet01

誰も、 $decription のすべてをタイプしたいと思わないでしょう。あなたがEclipse3Peggyを使用するなら、「単語補完」という機能はあなたを助けます。 しかしながら、VisualStudioのインテリセンスはこのスコープで正確にあなたを助けます。また、インテリセンスは「コード規則の実践」を簡単にします。 プログラマは長い名前の変数に苦しむことはありません。したがって、変数の名前とプロパティの名前は常に適切です。


vsnet02

あなたはもうひとつ知るべきです。 それは、VS.PHPのインテリセンスはC/C++のインテリセンスより高速だということです。恐らくライブラリの量がこの現象に関係していると思われます。加えて、VS.PHPのインテリセンスがCTRL+SPACEなしで自動的に働くことも、その理由です。VS.PHPのインテリセンスはPHPにとどまりません。あなたはここでハイパワーを見ることができます。これを見終えたとき、あなたはプログラミングの興奮に耐えるのが不可能になるでしょう。
|
We need killer application for XCube_Service
現在、XOOPS Cube開発チームはXCube_Serviceのテスト版とその可能性をレビューしています。 私たちはサービスクライアントに関して既に基本的な抽象化レイヤーを開発しました。それは、ただアダプターであるので非常に簡単でした。 そして、私たちは、その開発でアダプターが複合条件下の抽象化レイヤーの単純な解決策であることを学びました。しかし、抽象的なクライアントは簡単な課題です(それには内側のサービスと外側のサービスの違いが全くありませんから)。

しかしながら、抽象的なサービスには、ウェブサービスとして働くための多くのパラメータがなければなりません。
内側のサービスであるなら、それはWSDLのために厳しい定義を必要としません。 しかし、ユーザがウェブサービスとしてそれを動かすとき、それが内側のサービスであるか否かに関係なく、そのサービスには厳しい定義がなければなりません。 これらの問題は以前、書かれたことがあります。

私たちは、用法をテストするためにサンプルモジュールを作らなければなりません。
私は、既に1つのモジュールと3つのハッキングファイルを開発して、これらのファイルを開発チームに送りました。 これらのファイルは、XCube_Serviceクラス群が正しく働くのをチェックすることができます。しかし、これらのファイルの機能は冗談みたいなものです(その冗談はXCube_Serviceに関して少しの可能性も示しません)。 多くのユーザが抽象的なサービスで遊べるようになるように、私たちはXCube_Serviceの特徴を使用するいくつかのおもしろいモジュールを計画しなければなりません。

XOOPS Cubeはウェブサービスの特徴を得るでしょう。 しかし、私はおもしろい体験をすべてのユーザにもたらすキラーモジュールを想像することができていません。モジュールが大差なしでクライアントとサービスを切り換えることができるなら、モジュールはP2Pのような特徴を得るかもしれませんが……
|
Mac mini のメモリ交換 (2/2)
カバーを取り外すことは、強いパワーを必要としました。私のカバーはスクレーパーの動きで破損しました。 しかし、これらの損害はmac miniの底でありました。 だれも底のかすり傷を嘆かないでしょう。そして、私は、カバーを取り外し終えました。:
mac03
画像の右側に標準のメモリモジュールが見えます。メモリモジュールの上に銀のプレートがありますね:PICT0003
私は簡単にプレートを引っ張り抜くことができました。 そして、私は標準のメモリモジュールを、買った1GBのメモリモジュールに取り替えました。 その過程で、私はいくつかのプラスチック・パーツを壊しました。 注意してください。

私は銀のプレートを以前あったところに挿入しました。
そして、私はカバーを取り付けて、mac miniのスイッチを入れました。なんの問題もなく、mac miniは起動できました。それで、私はメモリスワッピングなしでmacを使用することができるようになりました。 私がmacから取り除いた512MBメモリモジュールは他のウィンドウマシンに使用されるようになるでしょう。

私の1GBメモリモジュールは、バルクで
11,000円の PC3200 CL3 です。私はメモリ交換を(実はmac miniオーナーの)龍司さんに勧めようと思います。しかし、彼のマシンはiTunes専用らしい……

実は、チュートリアルビデオがここにあります。
|
Mac mini のメモリ交換 (1/2)
私のmac miniは512MBしかないため、しばしばメモリスワッピングを発生させます。私は昨日、メモリを交換しようとしました。本来は、ユーザーがメモリを追加したいなら、彼はアップル公式のサービスに依頼すべきです。しかし、公式サービスは非常に高い価格です。 あなたが自分でそれをしようとするなら、かかるコストはメモリモジュールの価格のみです。 私はmac miniでメモリモジュールを交換する方法を検索しました。そして、私はスクレーパー、紙やすり、および1GBのメモリモジュールを買いました。 2個のスクレーパーが良いようです。1個のスクレーパーはこの作業にとって十分ではありませんでした。
mac01
初めに、私は紙やすりでスクレーパーの厚さを減少させました、それをmac miniのカバーに挿入するには、スクレーパーが厚過ぎたので。 次に、私はスクレーパーをmacのカバーの間のスペースに挿入しました:mac02
私はピンチ・バーとしてスクレーパーを使用することによって、カバーを取り外しました。
|
Exciting game! Carp vs Dragons
今日のCarp VS Dragonsのゲームは、接戦で非常におもしろかったです。 XOOPS CubeチームのメンバーであるTom_G3Xさんは、、名古屋でのこれらのゲームに私を招待してくれていました。しかし、私の仕事が非常に忙しいので、私は今週末に休むことができませんでした。Tom_G3Xさんは、中日ドラゴンズのファンです。

カープには、最近1点差を争う多くのゲームがあります。
最近11日間でそのような9ゲームがありました。カープファンは、ゲームを見るために胃薬を飲む必要があるかもしれません。

今日のゲームは昨日の引き分けと同じくらい非常にエキサイティングでした。両方のチームが非常に良いです。
そして、カープは勝ちました。 トム_G3Xさんはこのゲームを見にスタジアムに行っていたので、彼はDragonsの敗北を見なければなりませんでした。 しかし、私は、ドラゴンズのファンにとっても、このゲームは非常におもしろかったのではないかと思います。このゲームを一緒に見たかった……
166520272_59
ところで、東京に住んでいるカープファンは、今月多くのゲームを見に行くことができます。
  • 14日(金) 横浜
  • 15日(土) 横浜
  • 16日(日) 横浜
  • 17日(祝) 神宮
  • 18日(火) 神宮
  • 19日(水) 神宮
  • 21日(金) 神宮(オールスター)
  • 25日(火) 東京ドーム
  • 26日(水) 東京ドーム
  • 27日(木) 東京ドーム
これらのイベント日をあなたのカレンダーに加えてください。
|