Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

C++でWebアプリケーションを開発できる
~ 高性能フレームワーク「TreeFrog Framework」

C++によるフルスタックのMVC型Webフレームワーク

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2011/05/26 14:00

 本稿では「C++でも簡単にWebアプリケーションを開発したい!」という声にお応えして、C++によるフルスタックのWebフレームワーク「TreeFrog Framework」を紹介します。C++で開発する最大のメリットは、アプリケーションが高速かつ少ないメモリ使用量で動作することです。Webアプリケーション自体がさらに高速に動作すれば、より少ない数のサーバで多くのリクエストを処理することが可能になるでしょう。

目次

はじめに

 Webアプリケーションの開発案件をみると、使われている言語はJavaとPHPが特に多いように思います。C++のものはまず聞きません。C++プログラマがWebアプリケーションの開発プロジェクトに参画するとなると、新たに別の言語を習得しなければならないのが現実です。TIOBE Programming Community Indexというプログラミング言語の人気度調査において、C++は長い間高い水準をキープしているわけですが、そんなC++でWebアプリケーションの開発はできないのでしょうか。

 インターネットを検索してみると、C++のWebフレームワークは存在しないこともありません。数少ないそれらのフレームワークを調べてみると、JavaやPHPのものに比べて機能的に見劣りしていたり、C++ゆえにプラットフォームに依存する傾向があるように思います。

 「C++でも簡単にWebアプリケーションを開発したい!」

 そんなニーズを叶えるために筆者本人が作り始めたソフトが、ここで紹介するTreeFrog Frameworkです。

 TreeFrog FrameworkはC++によるフルスタックのWebフレームワークです。MVCアーキテクチャのもとO/Rマッピングライブラリやテンプレートなどの仕組みを提供し、「設定より規約」のポリシーでプログラミング言語C++でも高い生産性の実現を目指しています。ジェネレータコマンドによるソースコードやMakefileの自動生成機能で、開発者はロジックに専念できるでしょう。また、クロスプラットフォームに対応しているので、開発したソースコードをコンパイルしなおすだけで、複数のプラットフォームで動作します。

 モデル層ではO/Rマッピングライブラリが提供されます。この機能のおかげで開発者はSQLをほとんど書く必要はありません。もしSQLを記述する場合には、プレースホルダを使って簡単かつ安全にクエリを実行する仕組みもあります。TreeFrog FrameworkはQtをベースにしているおかげで、MySQL、PostgreSQL、SQLite、Oracleなど多くのデータベースシステムと組み合わせることができます。

 ビュー層には、ERBとOtamaという2つのテンプレートシステムが採用されています。どちらのシステムもテンプレートを使い、動的に値を出力したり、条件分岐やループ処理が行えます。

 C++で開発する最大のメリットは、アプリケーションが高速かつ少ないメモリ使用量で動作することです。Webアプリケーション自体がさらに高速に動作すれば、より少ない数のサーバで多くのリクエストを処理することが可能になるでしょう。

 手前味噌になってしまいますが、次でTreeFrog Frameworkを紹介します。

対象読者

  • C++でWebアプリケーションを開発したいプログラマ
  • 高速に動作するWebフレームワークを探している技術者

インストール

必要環境

  • Windows XP/Vista/7, Linux, Mac OS X、UNIX系のOS
  • Qt SDK version 4.6 以降

1. ダウンロードしたファイルを解凍します

 下記のx.x.xの部分は適宜読み替えてください。

$ tar xvfz treefrog-x.x.x.tar.gz

2. 解凍したディレクトリでビルドします

Windowsの場合:

 リリース版とデバッグ版の2つのタイプのバイナリを作ります。Qt Command Promptで次のコマンドを実行してビルドします。

> cd treefrog-x.x.x
> configure --enable-debug
> cd src
> mingw32-make install
> cd ..\tools
> mingw32-make instal
> cd ..
> configure
> cd src
> mingw32-make install
> cd ..\tools
> mingw32-make instal

Linux、Mac OS XなどUNIX系OSの場合 :

 コマンドラインから次を入力します。

$ cd treefrog-x.x.x
$ ./configure
$ cd src
$ make
$ sudo make install
$ cd ../tools
$ make
$ sudo make install

3. TreeFrog Command Promptのショートカットを作ります(Windowsのみ)

リンク先:
C:\Windows\System32\cmd.exe /K C:\TreeFrog\x.x.x\bin\tfenv.bat

 ちなみに、configureスクリプトで指定できるオプションを確認できます。

$ ./configure --help

  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • AOYAMA Kazuharu(アオヤマカズハル)

    イディ株式会社 代表取締役社長。TreeFrog Framework プロジェクト代表。 東京の某メーカにてシステムエンジニア・プログラマとして、組込やWebシステムの開発プロジェクトに携わった後、故郷で起業し開発エンジニア・ITコンサルタントとして活動中。

おすすめ記事

All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5