2013-05-03 知ったかぶってた単語を調べてみた Dalvik android用に開発された仮想マシン. JavaVMの代用品 Dalvikは低メモリ環境に対して最適化されている 参考url Dalvik(wikipedia) Dalvik仮想マシンのアーキテクチャ(slideshare) Dalvik、Androidのバーチャルマシーンが激しい論議を巻き起こす JITコンパイラ(Just-In-Time Compiler) ソフトウェアの実行時にコードのコンパイルを行い実行速度の向上を図るコンパイラのこと インタプリタ方式との違い インタプリタ方式がその都度コードを解釈しながら実行するのに対して、JIT方式は機械語に変換したものを実行する 機械語に変換する時間的コストはあるが、コンパイル後の実行速度はインタプリタ方式の数倍の性能を発揮できる 参考url 実行時コンパイラ(wikipedia) ガベージコレクション プログラムが動的に確保したメモリ領域のうち、不要になった領域を自動的に解放する機能 参考url ガベージコレクション(wikipedia) DSL(ドメイン固有言語) DSL(Domain Specific Language)は、特定の処理を行うことに特化した言語 DSLでは特定の処理のみに限定することにより簡潔で直感的にプログラムを書くことができる 有名なDSL Rspec FactoryGirl yacc 参考url ドメイン固有言語(wikipedia) Rubyでの内部DSLは意外と簡単に作れる