「マネージドコード」の版間の差分
ナビゲーションに移動
検索に移動
imported>Administrator |
imported>Administrator |
||
4行目: | 4行目: | ||
[[ネイティブコード]]などの[[共通言語基盤]]([[CLI]])の外側で動くコードや、[[共通言語基盤]]([[CLI]])の安全性チェック機能などのリミッターを外したコード(たとえば[[C Sharp|C#]]のunsafeキーワードを使ったコード)のことを「[[アンマネージドコード]]」という。また、アンマネージドコードを一切含まない[[プログラム]]のことを[[ピュアマネージドコード]]または[[ピュアマネージド]]という。 | [[ネイティブコード]]などの[[共通言語基盤]]([[CLI]])の外側で動くコードや、[[共通言語基盤]]([[CLI]])の安全性チェック機能などのリミッターを外したコード(たとえば[[C Sharp|C#]]のunsafeキーワードを使ったコード)のことを「[[アンマネージドコード]]」という。また、アンマネージドコードを一切含まない[[プログラム]]のことを[[ピュアマネージドコード]]または[[ピュアマネージド]]という。 | ||
− | |||
− | |||
== バイトコードとマネージドコード == | == バイトコードとマネージドコード == | ||
− | 主に[[Java]]から来た人を中心に[[CIL]]およびマネージドコードのことを[[バイトコード]]と呼ぶこともあるが、[[CIL]] | + | 主に[[Java]]から来た人を中心に[[CIL]]およびマネージドコードのことを[[バイトコード]]と呼ぶこともあるが、[[CIL]]およびマネージドコードは[[オペコード]](命令)のバイト表現が可変長なので、正確には[[固定長]]の命令を絶対条件とする[[バイトコード]]の定義には当てはまらない。 |
例えるなら[[CPU]]で言えば[[RISC]]と[[CISC]]のような違いに近い。 | 例えるなら[[CPU]]で言えば[[RISC]]と[[CISC]]のような違いに近い。 | ||
− | ただし、[[CPU]]が[[RISC]]か[[CISC]] | + | ただし、[[CPU]]が[[RISC]]か[[CISC]]かを気にする人はほとんど存在しないように、そんな細かいことを気にしても仕方がなく、また大多数の人には意味は伝わるので、よほどの偏屈を相手にする場合を除き、使い分ける必要も、気にする必要もない。そんな細かいことを気にしてはハゲるので気にしてはならない。 |
== 関連項目 == | == 関連項目 == |
2012年4月26日 (木) 05:48時点における版
マネージドコード(managed code)とは、.NET Frameworkで用いられる共通中間言語(CIL)のバイナリ形式のことで、共通言語基盤(CLI)で実行されるプログラムを指す。なお、日本ではマネージコード(manage code)と「ド」抜きで表記されることが多い。「ド」の有無で英語の意味が違うよ、などという細かい指摘は英語など知らん大半の日本人には無用である。
マネージドコードはガーベジコレクションなどの機能をフルに利用できる。
ネイティブコードなどの共通言語基盤(CLI)の外側で動くコードや、共通言語基盤(CLI)の安全性チェック機能などのリミッターを外したコード(たとえばC#のunsafeキーワードを使ったコード)のことを「アンマネージドコード」という。また、アンマネージドコードを一切含まないプログラムのことをピュアマネージドコードまたはピュアマネージドという。
バイトコードとマネージドコード
主にJavaから来た人を中心にCILおよびマネージドコードのことをバイトコードと呼ぶこともあるが、CILおよびマネージドコードはオペコード(命令)のバイト表現が可変長なので、正確には固定長の命令を絶対条件とするバイトコードの定義には当てはまらない。
例えるならCPUで言えばRISCとCISCのような違いに近い。 ただし、CPUがRISCかCISCかを気にする人はほとんど存在しないように、そんな細かいことを気にしても仕方がなく、また大多数の人には意味は伝わるので、よほどの偏屈を相手にする場合を除き、使い分ける必要も、気にする必要もない。そんな細かいことを気にしてはハゲるので気にしてはならない。
関連項目
参考文献