January 2011 Archives

webいじり1週間経過

| No Comments | No TrackBacks

先週は平日に好き放題コードを書いてよい仕事だったので、別件で時間を食われながらも、多少webアプリケーションぽいものを書いて動かせるようになった。最後にいじっていたのがasp.net 1.0の頃なので、真面目に何か作ろうとするのは10年ぶりくらいだ(googleのdevquizみたいなのを除けば)。

とりあえず平日の仕事時間にいじるには多少仕事にからめなければならなかったこともあって、C#で書かれたasp.netでない(!)webサーバを使って、そこにMVCライクな設計で書かれたアプリケーションを載せている。まだコレが著しく開発途上なので、web開発がひさしぶりで自分のコードにいろいろハマるはずが、webサーバのバグをいくつか潰したりなどして、時間が経ってしまった。

webページを作るのには、Sparkというテンプレートエンジンを試しに使っているのだけど、これはrazorまで出ている今日では、いまいち見通しが悪い。まあ使えるといえば使えるのだけど、可能なら他に切り替えたいところだ。

DBは、最初resinでやろうと思って、クライアントライブラリの新しいものやら管理web UIやらをビルドしようとしたらいろいろハマったので、あきらめてSQLiteでも使おうかと思ったけど、今さらADO.NETもやりたくなかったというのと手を出し始めるといろいろ本業で危険なので(bugfixを振られたりとか)、とりあえず何とかビルドできたServiceStack.Resinを使ってみた。全くといっていいほど使い方を把握していないが、一応使えているようだ。

何となく画面が出来てデータの登録らしい画面も動くようになったのだけど、formのvalidationなどが全く出来ていないに等しいし、肝心のビルドの実行やそのためのファイルの登録など、必要最低限のコードを動かすにはまだまだ手を入れないといけない。

webサイト立ち上げ計画中

| No Comments | No TrackBacks

Androidでは、NDKでビルド出来るネイティブライブラリが少なすぎる。その理由はおそらく(1)アプリケーションに必要な共有ライブラリを全てバンドルしなければならないことと、(2)誰もがJavaベースでアプリケーションを開発しているためにJNIラッパーを独自に作らなければならず、成果が共有されない、ということが挙げられるのではないかと思う。

しかし、Unix環境で普通にmake installできるようなものは多いのだから、ビルドしたものを共有できるようにすれば、ネイティブ共有ライブラリはもっと増えるのではないかと思う。それならば、数少ない(と思われる)ネイティブライブラリを集約したり、そもそもビルドも代行してくれるようなwebホストがあればいいのではないか。

というわけで、ネイティブライブラリを共有できるようなホストを立ち上げようと思っている。

ところで、Webサイトを立ち上げるには、そのための知識が無いといけないのだけど、自分にはその種の知識がほとんど無い(ここはレンタルサーバにMovableTypeを置いているだけだ)。そんなわけで、とりあえずVPSをひとつ借りてきて、OSから入れ直してセットアップしてみることにした。今回は初めてUbuntuを使ってみることにした(普段使っているものが選択肢に無かった)。apt-getも初めて使っている。

とりあえずサーバ環境は、apache2を入れてwebminを入れてgitwebを入れた。あとは、gitで今開発中になっているC#のスタンドアロンwebサーバを落としてきて動かして、使えるようになっていることを確認したので、そこまではサーバ環境として動いている。本当はあとgitoriousとredmineを入れておきたいのだけど、railsまわりも全然分かっていなくてまだ上手くできていない。

ともあれ、サーバはセットアップした。webアプリケーションを運用したことも無いと言っていいので、その辺もまた後でいろいろ調べることになりそうだ。

webアプリケーションを設計するのもひさしぶりなので(作ったことはあっても運用したことはない)、とりあえず設計書みたいなのを10000文字近く書いた。

実のところ、ビルドサーバのようなwebアプリケーションは無いわけではない。ただ、目的に近いものは重量級のものだったりするし、continuous integration的なものがほしいというわけでもない。ビルドは成功するまででいいし、モジュールの更新はそれ以降は滅多にかからない。ビルドツールもやや特殊だし、rpmを使うわけでもない(それに近いことをやるわけだけど)。そんなわけで、とりあえずそこは自作してみることにした。

まだ出来上がるか分からないけど、出来たらいろいろ使い道がありそうな気がする。

opentkいじり

| No Comments | No TrackBacks

OpenTKはOpenGLやOpenALをさまざまなプラットフォームで使えるようにするための.NETベースのライブラリだ。今ちょっとばかり興味本位でこれで遊んでみようとしている。何か書いてみないと勉強する気になれないということもある。といっても、OpenGLが必要なアプリケーションを作る案は今のところ無いので、バックエンドになるおもちゃを作ろうかと思っている。といっても、win/mac/linux/iOS/androidには既に存在するので、それ以外ということになる。

とりあえず今日は、特定のバックエンドを作るために必要そうなクラス群だけを引っ張り出して、独自のアセンブリとして単体でコンパイルできるものを作ってみた。全く知識がない状態なので、何が必要なのか推測しながら加えたり削ったりの作業だ。とりあえずOpenGL ESだけにする予定なので、iOS/android用の構成を参考にしながらピックアップした。次はベースライブラリに合わせて修正を加えて、バックエンド自体を実装する作業だ。

...というところで各種バックエンドの既存のソースを見ると、どれも数千行単位だった。どうやらこれもすぐには出来なそうだ。