オープンソースCMS「DotNetNuke」のセットアップ
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Abel Avram , 翻訳者 徳武 聡 投稿日 2010年1月26日
Luaは、Lua用のC言語のAPIフックを提供するアプリケーションならどんなアプリケーションにも組み込むことができるスクリプトエンジンだ。最近、LuaのJITコンパイラのバージョン2がベータになった。これには、トレースコンパイラとアセンブラで書かれたインタプリンタに基づいて完全に書き直されたVMが含まれている。
Luaはポルトガル語で月を意味する。この言語は1993年以来、3人の教授の内輪でリリースが繰り返されてきた。3人とはRoberto Ierusalimschy氏、Waldemar Celes氏、そしてLuiz Henrique de Figueiredo氏だ。それから、幾度となくバージョンアップを繰り返し、最新のバージョンはLua 5.1.4で、2008年にリリースされた。
Luaは汎用スクリプト言語で、構文はModulaから借りてきている。また、SNOBOLやAWK、C++、そしてLispからも影響を受けている。また、Schemeからも大きく影響を受けた言語だ。データ定義言語の構文はIerusalimschy氏が作ったSOL(ポルトガル語で'太陽')という言語から継承しているが、このSOLはLuaによって置き換えられた。その他の特徴としては、関数型で、拡張すればオブジェクト指向言語として使え、プロトタイプベースでもあり、ガベージコレクションもサポートしている。
LuaはCのAPIを持っているので、様々な言語で書かれたアプリケーションに簡単に埋め込むことができる。このAPIはコア部分のAPIと拡張ライブラリに分かれている。バイナリパッケージの大きさはプラットフォームによって違うが、200から700KBくらいでとても小さく、ANSIまたはISO Cコンパイラを搭載するプラットフォームであれば、どのようなプラットフォームでも動作する。実際、すべてのUnix/LinuxやWindowsで動作するだけでなく、ARMを搭載した携帯端末やRabbitマイクロプロセッサ/コントローラでも動作する。
最も重要な特徴のひとつとして挙げられるのは、テーブル型だ。このデータ型は唯一の複合型であるが拡張することができる。テーブルは
キーとデータのペアのコレクション(ハッシュ異種性連想配列としても知られている)で、キーによってデータを参照する。nil以外ならどんな型でもキー(インデックス)として利用できる。数値型のキー
1は文字列型のキー"1"とは区別される。
Luaにはクラスという概念はないが、ファンクションとテーブルを使って作ることもできる。
テーブルの中にファンクションと関連するデータを配置することでオブジェクトを形成できる。継承(単一であれ多重であれ)も"メタテーブル"を使えば実現できる。ブジェクトが自身には存在しないメソッドやフィールドを親オブジェクトにあるかどうか探索するように仕組めばいい。
下記がLuaの単純なサンプルコードだ。
function factorial(n)
if n == 0 then
return 1
else
return n * factorial(n - 1)
end
end
他のスクリプト言語とは違って、Luaは直接解釈されるのではなくバイトコードにコンパイルされてから独自のレジスタベースのバーチャルマシン上で実行される。ドイツのオープンソース開発者であるMichael Pall氏はLua用のJITコンパイラを実装し、現在バージョン2.0がベータ2になっている。氏はまずx86アーキテクチャ用のJITを作成し、現在64ビットアーキテクチャへの移植を試みている。作者のLuaJITに対するコメントは、
柔軟性と高性能を併せ持ちながら、それに似つかわしくないほど少ないメモリしか使いません。VMに使うのがせいぜい120Kくらいで、JITコンパイラに必要なのは80Kくらいです。…
2009年は長い間待たれていたLuaJIT 2.0の最初のリリースが行われた年になりました。このバージョンではVMは徹底的に性能を追求するため完全に書き直され、その結果、アセンブラで書かれた高速インタプリンタと最新技術を用いたJITコンパイラが出来上がりました。
また、革新的なトレースコンパイラも統合されていて、先進的なSSAベースの最適化とバックエンド処理での高度に調整されたコード生成を実現しています。これによって動的言語に特徴的なオーバーヘッドが大幅に削減されました。その結果、性能は、従来はオフラインの静的言語コンパイラの性能と考えられている水準に近づきつつあります。
Luaは様々なアプリケーションに組み込めるが、一方でゲーム開発者にも受け入れられている。高性能に加えて、一度ゲームを中断して様々なパラメータをいじったあと、ゲームを再開するときにリビルドするための停止がほとんどなくて済むのがLuaが受け入れられている大きな理由だ。World of WarcraftやLeague of Legends、Star Warシリーズやその他の様々なゲームが開発時にLuaを使っている。その他にも様々なタイプのアプリケーションがLuaを利用したり、Luaを使うための実装がされている。例えば、Adobe Photoshop LightroomやApache HTTP Server(mod_luaモジュール)、MySQL Proxy、nmap、そして他にもたくさんある。Luaで書かれたウェブフレームワークも最低ふたつは存在する。KeplerとOrbitだ。
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
DotNetNukeは、Windows Serverで動作するCMS(Contents Management System)である。この記事ではWeb Platform Installer を利用して人気CMS「DotNetNuke」と無償Web開発環境「WebMatrix」のインストールする方法を紹介する。
クラウドコンピューティングを前提とした大規模データ技術が利用可能となってきています。Big Dataが一過性のブームで終わるかどうかにかかわらず、スケーラブルな分散アーキテクチャーの基盤はデータベース技術に主導されつつあります。RDBとORM主体のエンタープライズシステムは、HadoopやNoSQLとの組み合わせにより複合的なデータモデルに発展しました。
2011年12月8日~2011年12月9日に、ロンドンのSkills Matter eXchangeにて開催された「Groovy & Grails eXchange 2011」の参加報告を、日本Grails/Groovyユーザーグループのメンバーが3回に渡って紹介します。
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続���開 催されていく予定である。本記事では、開催の様子をレポートする。
Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。
No comments
スレッド表示 返信