Scala2.8本2冊

「プログラミングScala」と「Scala実践プログラミング」を献本いただいていました、ありがとうございました。いただいてからかなり時間がたってしまいましたが、レビューです。

reactive-webを試してみました

Liftを使ったRIAフレームワーク reactive-web を試してみました。RIAフレームワークと言っているわりには、今のところGUI部品がそろっているわけではなく、ブラウザとサーバサイドで簡単にイベントをやりとりするためのフレームワークのようだ。とりわけJavaScriptの隠蔽っぷりがお見事だと思いました。

Lift2.2M1のテンプレート機能

Lift2.2M1での超便利なテンプレート周りの機能追加についてまとめてみました。CSSセレクタを使ったスニペットと、コントローラーベースの開発手法の追加が、衝撃的です。

Scala Compiler Plugin

Scala Compiler Pluginの書き方と用途について、調べてみました。今のところ大きく分けて、コードのチェック/Scalaソースの補助/外部ソースコードのジェネレータとして使うことが多いようです。

View Bound/Context Bound

Scalaの「View Bound」と「Context Bound」について、そんなに解説がないわりに頻出するので、簡単な例をかいてみました。

ScalaZa01参加してきました

「プログラミング言語Scalaを肴に盛り上がる、年に1回のScalaのイベント」第1回Scala座に参加してきました。

Akka Frameworkチュートリアルの次

Akka Documentationの左メニューを辿って、他にどんな機能があるか、ざざっとみていきます。

Akka Frameworkチュートリアルその2

前回Akka Frameworkのチュートリアルをやってみましたが、動作確認のみで内容を読んでなかったので、軽く読解してみました。チュートリアルというより、Akkaのコンセプトがはっきりわかる内容です。

Akka Frameworkチュートリアル

Scalaの分散メッセージングプラットフォームAkka Frameworkのチュートリアルをやってみました。Transactional ActorsとJava APIだけでも使い道あるなっていう印象です。

LiftでJCaptcha

Captcha(画像認証)をLiftで実装する方法。Liftでバイナリデータをレスポンスする方法と、JCaptchaの使い方で意外と悩んだのでメモ。

Url Rewrite Filter

Url Rewrite Filterを使ってjsessionidの付与を細かく調整する方法。いつも使い方を忘れてしまうのでメモ。

sbt-android-plugin

先日書いたAndroid SDK for ScalaではANTを使った開発方法を紹介したのですが、こっちがデファクトになっては困る気がする(Scala使いならやっぱりsbtでしょ!)ので、sbt(simple-build-tool)を使ったScala Androidの開発方法について。

Android SDK for Scala

というのがあったので弄ってみました。今週のScala勉強会@東北のネタです。

祝Lift2.0リリース

Lift2.0リリースしたのでLift2.0M2からアップグレードしてみました。参考文献や、地味ですがPaginatorとLogの更新情報。

Liftの携帯対応まとめ

Liftでケータイ対応するためのメモ。テンプレートの切り替え、リクエスト・レスポンスのSJIS対応など。検証バージョンはLift2.0-M5です。

Scala2.8への移行

今日のScala東北の資料アップしました。Scala2.8に移行したい人向けのリファレンス集。

Lift 2.0-scala280-SNAPSHOT/sbt0.7.1

scala2.8 + sbt0.7.1 + lift-2.0-scala280-SNAPSHOT への移行を試したら、普通に動きました。

Scalaお絵かき環境 - Kojo

Scalaコードで描くお絵かき環境Kojo。ロゴのしょぼさと、亀がかわいい亀が。

Lift+Quartzでバッチ

Lift+ScalaでもQuartzを使えば、LiftMapperを再利用したジョブスケジューリングができます。手順をメモ。

Scala&Liftを採用した理由

おかげさまでScalaとLiftを使ったプロジェクトが着々と進行中ですが、何も「Scala使ってみたかった」という新しモノ好きの理由で採用したわけではないです。零細SIerの立場で、Scalaを使う理由を書いておきます。

Liftでdate_select系ヘルパーを作る

Liftに日付入力SELECTを生成するヘルパーが無かったので、作ってみました。Lift1.1-M8です。そんなにうまくできてるわけではありませんが、困ってる人いたら参考にしてみてください。

LiftでAjax

LiftのAjaxライブラリにはjQueryが採用されていますが、あまりjQueryを知らなくても、SnippetだけでAjaxなWebアプリが組めるように工夫されています。

LiftのSubmitかしこい

Liftでは、FORM内に複数のSubmitボタンを持つことができます。イベントと関数の紐付け機能は、Lift+Scalaの魅力だと思うのですがどうでしょうか。

lift-mapperのpaginateを使う

liftでページネートする方法。Lift-Wikiを補足する形ですが、snippetで繰り返す箇所/繰り返さない箇所が混在する場合の対処方法を紹介します。

snippetをspecする

Lift snippetでリクエストパラメータを扱うときのテストケースの作り方。ここではSpecsとMockitoを使って、Servletコンテキストをエミュレートします。

Lift Mapperを拡張する

Lift Mapperの形が複雑に見えるので、Rails的タイムスタンプ付与を例題に、Mapper traitの拡張例を示しておきます。慣れれば簡単で、定型として覚えておくと便利なのではないでしょうか。

LiftのDBをMySQLに

liftのデフォルトではDerbyが動いてますが、MySQLに切り替える。
あと、development環境/test環境でのデータベース切り替え、specsの実行。Liftコンソール。

Liftプロジェクト環境を整える

Liftでの開発プロジェクトが本格始動するので、環境をまとめる。開発者1人だけど大きめのアプリケーションになるので、テスト・CI・トラッキングあたりはちゃんとしておきたい。

Scala本読み比べてみました

Scala本の洋書3冊、比較してみました。優劣つけるつもりはありませんが、どんな人向けかちょっと考えてみました。

NetBeans6.7&scala

NetBeans Scalaプラグインの新版が出てたので軽く触ってみました。あとついでに、サルでもわかるParser Combinatorの使い方。