最近の更新

関連


その他いろいろ

多機能フィードリーダSynapse製作中

2月までは目が回るほど忙しい

MODxでつくる! 最強のCMSサイト カバー
MODxでつくる! 最強のCMSサイト

2007 05 10

C#の勉強

何となくVC#2005Express.NETを使っていましたが、Managed DirectX9を始める(PyOpenGLは重いので放置)にあたって、改めてC#独自の言語仕様も勉強してみました。
参考になったのは、改訂版 C#入門C#によるプログラミング入門C#入門
最初のサイトが書籍の転載だけあってかなり丁寧で、C#2.0や3.0で追加された内容を続くページで補う感じ。
C#3.0ともなるとRubyばりに色々詰め込んでいるようで、Cの子孫という感じがあまりしません。あとアトリビュートが結構面倒。

大体3時間くらいでC++との相違点の把握したので、明日(今日)はManaged DirectX9に手をつけてみます。

習作に詰まらん3Dゲームでも作ってから、当初の目的の3Dページャ(?)に取り組もうと思っています。
脳内で仕様を練っていたら別に3Dにする必要もない気もしてきましたが…まあ3Dはやっておいて損はないので、結果は気にしないことに。

左◇はディップスイッチ4ONでFnになるようですが、右◇は何にも使われてないようなので、AutoHotKeyで右Ctrlに割り当てました。

#InstallKeybdHook と書いたahkファイルを読み込ませ、ウィンドウからView->Key history and script infoを選択。
右◇を叩いてF5(更新)すると、VK=FF, SC=079にnot foundというのが出ます。

次に、いつもロードするスクリプトに
vkFFsc079::RCtrl
と書き足してReload scriptすればOKです。
これでCtrl-Aが楽に打てるようになりました。

今更ながら、オブジェクト指向における再利用のためのデザインパターンを読んでいます。
単なるパターンの列挙にとどまらず、最初に具体的かつ実用的なアプリケーションを構築する際の要所と、いかにパターンを適用するかが書かれていて分かりやすい。むやみにJavaのサンプルコードを載せているようなものと比べて、本質的な理解が得られます。多分。
今までパターンと知らずに(多分何度も再発明して)使ってきた構造でも、名前が付くことで途端に分かりやすくなります。
性分なのか、開発関係の本は買っても碌に読まないことが多かったのですが、コレは頷きながら読み通せそうです。

4月~5月に掛けてやるつもりのこと。

MODx編

  • テンプレート中でテンプレートを呼ぶMODxタグを追加するplugin([*content*]の代わりに[@template@]とする、等)これは今のままでも[*content*]を含めたチャンクで可能。部分テンプレートを指定すると、自動的に親テンプレートを被せるプラグインを作成(親子関係はカテゴリを用いて1階層のみ可)
  • 指定ドキュメントでMODxタグ以外のcontentを編集できる(あるいはTVに保存させる)Wiki風snippet
  • あわせてbbcodeを解釈するplugin(既にありそう)
  • ドキュメント保存に際してdiffか何かを退避する世代管理plugin。これは難しいかもしれない
  • 以前作った外部リンク(a)を弄るpluginの改良
  • 外部スクリプトをob_start()~ob_get_clean()して[*content*]に吐き出すsnippet
  • Multilingual Routerで言語ごとにテンプレートを変更する
  • WordPress IntegratorでエイリアスパスONでも使えるsnippet追加

ダウンローダ編

自分用&受けがよさそうで作り始めたYouTubeList2irvから、メインコンテンツ化しつつあるダウンローダ。

  • 各(といっても今のところYouTubeとニコニコ動画だけですが)動画ダウンローダを統合
  • 指定サイズ範囲の新着画像をDLするスクリプト

その他

  • 指定ディレクトリのmp3やmp4を対象に新着をRSS配信するPodcastサーバ in Python (半分ほど進捗)
  • 3Dの勉強用にTTTのDirectXあるいはOpenGL化(まあ既に2DのOpenGLをpyGame通して使ってますが)
  • P2P+DHT RSS ping server/reader

書いていたら5月までに終わるわけない気がしてきました。7月、いや9月までにはなんとか…

なぜかGoogleでの検索順位が改装後1週間して暴落。検索経由のアクセスが半分くらいになってしまいました。XHTMLに全然準拠してなかったからでしょうか…一応Transitionalでvalidにしておきました。

2006 08 3

定時

別の事務作業も片づけなければならないので今日は定時に帰宅。つかの間の休息ではないのが悲しい。

配属になったプロジェクトではRuby on Railsを使っていますが、10以上もあるテーブルの構造を理解しやすくするため、GPLのデータベース設計ソフトDBDesigner 4をMySQLと連携させて使用しました。

公式にはMySQL4までの対応らしいですが、試してみたところMySQL5.0.22でも使用できました(Windows)。
ただ、普通に接続しようとするとdbExpressのエラーが出るため、

mysql> set password for 'ruby'@'localhost' = old_password('new password');

として、old_password形式を使わねばなりません。

Rubyにはdbmodelというgemがあって、これを使えばDBDesignerのxmlファイルからRubyのクラスなどを生成できるようです。(参考)

先のMySQL+DBDesignerではテーブルのインポートは出来ても、多分リレーションを解析してくれたりはしないのでdbmodelの逆の操作を行うアプリケーションが欲しい。
無いようならhas_one, has_many, belongs_to, has_and_belongs_to_many, (:through)などを読み取ってER図に変換するスクリプトを(折角だからRubyで)書いてみるかもしれません。RubyにはRubyパーサが標準でついてくるのだろうか?

« 前のページ