差分

ナビゲーションに移動 検索に移動

マネージドコード

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

案内メニュー