忍者ブログ
ロボット、千葉ロッテマリーンズについていいかげんなことを書きます。
[679]  [678]  [676]  [675]  [674]  [673]  [671
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

プラットフォーム、フレームワーク、ミドルウェア、ライブラリについて用語の意味の違いが分かりづらいのでメモしておきます。間違っていたらコメントで指摘してください。
  • プラットフォーム
プラットフォームは日本語では「基盤」という意味ですが、基盤となる装置やソフトウェアのことを指すようです。具体的にはWindows、Linux、Java VM、Lua VMなどが該当します。
ロボット界隈では「プラットフォームロボット」という用語を使いますが、これは新規機能の開発、追加が可能な基盤となるロボットのことを指します。
  • フレームワーク
フレームワークは日本語では「枠組み」であり、ソフトウェアフレームワークはソフトウェアをある枠組みで開発、実行するための機能や実装などを指します。
具体的にはRuby on Rails、OpenRestyなどが該当します。
ただ、ソフトウェアフレームワークはユーザーの作成したアプリケーションの機能をフレームワーク側のメインループから呼び出す「制御の反転」の構造になっている必要があります。
論文などでROSはフレームワークであると書いてあるものがありますが、これは厳密には間違いという事になります。
OpenRTM-aistやChoreonoidはフレームワークに該当します。

Lua VMがプラットフォーム、OpenRestyがフレームワークという事です。多分。
.NET Frameworkはフレームワークで、その実行環境のCLRがプラットフォームという事になります。
  • ミドルウェア
OSとアプリケーションの中間に位置するソフトウェアです。
というか、ほとんどの場合はアプリケーション、OS以外のソフトウェアのことを指します。
具体的にはOpenCV、OpenGLなどが該当します。
Java VMやLua VM等のプログラミング言語の実行環境も該当します。

ただし、ミドルウェアはその名の通りOSとアプリケーションの中間に位置するソフトウェアのため、OSが無い環境のライブラリはミドルウェアには該当しません。例えばArduino用のライブラリはミドルウェアではありません。
  • ライブラリ
ソフトウェアの機能を再利用可能な形でまとめたものです。
フレームワークの場合はフレームワークが主となりますが、ライブラリはアプリケーションに機能を提供するだけのため、アプリケーションが主になります。


適当にソフトウェアを分類すると以下のような感じだろう。


ソフトウェアの分類プラットフォームフレームワークミドルウェアライブラリ
OpenRTM-aist
omniORB
Qt
ROS
Choreonoid
ODE
OpenCV
Lua VM
VMWare
所々どこに分類すればいいのか分からないものもあります。
まずOpenRTM-aistはスタンドアロンRTCとして起動すればライブラリ、RTCDで起動すればフレームワークに該当しそうなので仕分けが難しいです。
これがLove2Dのようにアプリケーションのみの提供であればライブラリには該当しません。

QtはQt Creatorを使えばフォームに追加したウィジェットから直接スロット関数をいじることでフレームワーク的な使い方ができるので、フレームワークでもあると言えます。

Luaは単体で実行したらただのプラットフォーム、組み込んで実行すればミドルウェアでもあるということになります。組み込む側からすればライブラリのようにも見えます。

というわけでライブラリ、フレームワーク、プラットフォームを図で表すと以下のような感じになりますが、プラットフォームの定義がよく分からないので間違っているかもしれません。





PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
フリーエリア
最新CM
[08/31 ysuga]
[08/31 Nobu]
[08/31 ysuga]
[12/11 Nobu]
[12/11 Kanamura]
最新TB
プロフィール
HN:
Nobu
年齢:
35
性別:
男性
誕生日:
1988/09/22
職業:
あれ
趣味:
妄想、自堕落
バーコード
ブログ内検索
P R
カウンター
忍者ブログ [PR]