Jasper van Rijbroek氏がRaddishをリリースした。"とてつもない速さ"をうたうこの新しいNode.jsフレームワークは,初期インストール状態でスレッドとソケットをサポートしている。
ソフトウェア自体の資料によると,Raddishが目指すのは"驚異の速さ"だ。ドイツ人Web技術者のvan Rijbroek氏がInfoQに語ったところでは,Raddishは使いやすさとプログラミングの楽しさを求めるとともに,フォールバックシステムの採用によって,より少ないコードの記述で開発者が目標を達成できるようになっているという。
Raddishプロジェクトはvan Rijbroek氏と同僚が,PHPフレームワークのNookuのように,初期状態で多くの機能をサポートするNode.jsのフレームワークを探していたところから始まった。当時はそのようなフレームワークが存在しなかったため,Raddishを開発するというアイデアが生まれたのだ。van Rijbroem氏は当時,デザインパターンやアーキテクチャデザイン,Node.jsのイベントループの利用方法などを学びたいと強く願っていたという。
いくつかの小さな障害に苛まれ,同僚の関与もなくなったが,今回の1.0のリリースはプロジェクトの歴史におけるマイルストーンになった。
新たなフレームワークが毎週のように現れる現在,開発者の注目を引いて差別化を図るのは容易なことではない。Van Rijbroek氏は言う。
Raddishで最も注目すべき点はそのスピードと,必要でなければオーバーライドを一切書かなくてよい点です。PHPのフレームワークには,不要なオーバーライドが数えきれないほと存在します。
このことは開発者にとって,アプリケーションやコンポーネントの開発に要する時間が短縮されることを意味します。また,識別子を利用することで,DRY(Don’t Repeat Yourself)の原則を適用して,まだ記述していない関数を容易にコールすることができます。
van Rijbroek氏は,高速かつ完全なNode.jsフレームワークとして,初期状態でスレッドとソケットをサポートするものは他にはないという。Raddishの組み込みスレッドハンドラを使用すれば,開発者が独自のスレッドソリューションを作成する必要はまったくない。
Raddishがターゲットとするのは,モバイルアプリや同じデータを使うWebサイトの開発者だ。しかしWeb APIの開発者については,ニーズに合った他のフレームワークを検討した方がよいだろう。
Raddishの最初の安定リリースで,最も重要な機能は次のものだ。
- Socket.IO統合 – リアルタイムアプリケーションの開発を可能にする。インストール初期状態でサポートされているので,単に追加するだけでよい。
- Component Config – コンポーネントにコンフィギュレーション機能を追加することができる。これにより,単純な変数を数個オーバーライドするために,JavaScriptオブジェクトそのものを作成する必要はなくなる。
- Behavior Config – 作成済みのビヘイビアに対して,コントロールを追加したい場合に有効。ビヘイビアに特定の設定変数を追加して,柔軟性と再利用性を向上することができる。
van Rijbroek氏はこれまで,Raddishのリリースをひっそりと行うように努めるとともに,コミュニティへのリリースプロセスもゆっくりしたものにしていた,と言う。LinkedInでのディスカッション "Another (rad) nodejs framework" によると,Raddishは今のところ,そのコード構造とスピードに関して,ユーザから肯定的なフィードバックを受けているようだ。
Raddishのリリースノートには,今後は2.0メジャーリリースに注力するということが書かれている。RaddishはGithubあるいはNPMから,GPLv3ライセンスで入手することができる。InfoQの読者もこのプロジェクトに,さまざまな方法で貢献を試みてほしい。