Ruby関連開発メニュー一覧

株式会社クリアコード > サービス > Ruby関連開発メニュー一覧

クリアコードでは、Rubyを用いた開発を承っています。

拡張機能の開発

Rubyは書きやすく読みやすい構文を持つ開発効率のよい言語です。一方、C言語はRubyに比べると記述する量が多いのですが、実効速度は数倍から数十倍高速です。RubyにC言語の高速性を組み込むことにより、効率よく高速なアプリケーションを開発できます。

RubyにはC言語で実装されたライブラリを利用するための「拡張機能」と呼ばれる仕組みがあります。この仕組みを用いることにより、既存の高速に動作するC言語のライブラリをRubyから利用することができます。

しかし、単純にC言語の機能をRubyで使えるようにするだけでは、Ruby本体が持つ書きやすさや読みやすさに馴染まず、使いづらいものになってしまい、せっかくの高い開発効率を下げてしまいます。C言語の機能をRubyに提供するだけではなく、C言語のAPIをよりRubyらしいAPIとして提供することにより、高速性と高い開発効率を実現できます。

クリアコードでは、多くの拡張機能を作成した経験を活かしてよりRubyらしいAPIを提供する拡張機能の開発を承っています。

Rubyインタプリタの組み込み

Rubyの高度に動的な動作は高い柔軟性を提供します。ある種のアプリケーションは高速に動作するだけではなく、柔軟性も求められます。効果的な迷惑メール対策を提供するmilter managerはそのようなアプリケーションの1つです。効果的な迷惑メール対策を適用するために、受信するメールそれぞれに対してどのような迷惑メール対策を適用するかを動的に判断する必要があり、この部分に柔軟性が求められています。

Rubyはアプリケーションとしてだけではなく、C言語のライブラリとして利用することができます。アプリケーションのコアはC言語で実装することにより高速性を実現し、柔軟性が必要な部分にライブラリとしてRubyインタプリタを組み込むことにより、高速性を維持したままアプリケーションに柔軟性を組み込むことができます。

柔軟性が求められる既存のアプリケーションにRubyインタプリタを組み込むことにより柔軟性を提供したいといった開発を承っています。