2010年8月10日火曜日

「Restっぽいやつ」を書き直し

ざーっと開発していた「Restっぽいやつ」ですが、
さすがに書き直すことに決定。

今まで、DAO(Data Access Object)というパターンを使っていて、AR(Active Record)というのは横目でうらやましいなぁと思いながらも使ってませんでした。

が、この「Restっぽいやつ」はARと親和性が高い。
というかARを想定して考えてるようなもの。

なので、がーっと作ったら、ARとRestっぽいやつが混ざり合ったクラスになってしまいました。ということで、AR+RestっぽいRecord+Restっぽいマスター、の3レベルに分離。

が、元のコードが350行、分離して→合計700行に増えた。
まだ無駄なコードが少しあるけど、すっきりとした。

2010年8月6日金曜日

PHPUnitで一度の複数のテストを実行(addTestFile)

日本語の情報が少なかったので…
PHPUnitでテストを書いてますが、複数のテストクラスを一度に実行する方法。
PHPUnitの第7章「Organizing Test Suites」を読んだのですが、いまひとつ理解不能でした。で、ググって見たら簡単な方法を見つけました

2010年8月3日火曜日

HTML5のローカルストレージまとめ

ローカルで動くウェブアプリケーションを作ってみたいと思い立って、HTML5関連について調べてます。今はローカルストレージ中心。

たくさんありすぎのローカルストレージ

ちょっと調べたところ「cookie」「SessionStorage」「LocalStorage」「Web SQL Database」「Indexed Database」の5種類がありました。多すぎっ!

ただし、「Web SQL Database」はドロップされる模様。
このあたりを参考に。
http://groups.google.co.jp/group/...
http://www.publickey1.jp/blog/09/websql.html

SQL互換地獄に陥らなくてよかった…

また「SessionStorage」「LocalStorage」は大きく「Web Storage」という括りで理解すべきみたい。そして「Cookie」は、もういいでしょう。

となって、要するに

  • Web Storage (Session+Local)
  • Indexed Database


の2つを追いかければよさそうです。
ただ肝心のIndexed Databaseは、正式サポートしてるブラウザーがない・・・

簡単なサンプルデモを作るだけならLocal Storageで出来るかも。でも、ちょっと複雑なことをする必要があれば、今のところ「Web SQL Database」で作るしかなさそうですね。

2010年7月24日土曜日

2010年6月26日土曜日

Simple@Idx 2010/06/26

PHP5.3のPDOでMYSQL_ATTR_INIT_COMMANDが未定義だと?!!

お隣のY本さんがささやいた。
phpMyAdminで文字化けすると。

2010年6月24日木曜日

PDFLibで「Invalid UTF-16 string (odd byte count)」エラー

久々にPDFlibをいじくってたら、エラー。
ppsでfill_textblockした際に発生する。

動いてたコードを、そのまま持ってきたのになぁ…
バージョンの問題?CMapがおかしい?

2010年6月3日木曜日

PDOとPrepared Statementへ対応するぞ、と

こちらも長年の課題だったPrepared Statement。
なにしろ今使っているSQLマッパー(ORMなのか?)は2002年ごろ作ったコードを基にしてます。改良を加えつつ、使ってたのですが、いよいよPDOとプリペアドステートメントへ対応させることに決定。

しかし・・・PDOも、そしてPrepared Statementも、
なんて使いづらいんだ!