属性(計算)

ウィキペディアから、無料の百科事典
ナビゲーションにジャンプ 検索にジャンプ

コンピューティングでは、属性は、オブジェクト、要素、またはファイルのプロパティを定義する仕様です。また、そのような特定のインスタンスの特定のを参照または設定する場合もあります。わかりやすくするために、属性はより正確にメタデータと見なす必要があります属性は、多くの場合、一般的にプロパティのプロパティです。ただし、実際の使用法では、属性という用語は、説明されているテクノロジに応じて、プロパティと同等に扱われることがあります。オブジェクトの属性は通常、名前と値で構成されます。要素、タイプ、またはクラス名の; ファイルの名前と拡張子。

  • 名前付き属性にはそれぞれ、操作と呼ばれる一連のルールが関連付けられています。文字を合計したり、整数 配列を画像オブジェクトとして操作および処理したりすることはありません。テキストを浮動小数点型( 10進数)として処理することはありません。
  • したがって、オブジェクト定義は、データ型付けを課すことによって拡張できます。表現形式、デフォルト値、および法的な操作(ルール)と制限(「ゼロによる除算は許容されません!」)はすべて、属性、または逆に、そのオブジェクトのタイプの属性として話すことができます。JPEGファイルは、PNGまたはBMPファイルと同じ操作(類似している場合があります。これらはすべてグラフィックスデータ形式です)によってデコードされません。また、浮動小数点型付き数値は、型付き長整数に適用される規則によって操作されません。

たとえば、コンピュータグラフィックスでは、線オブジェクトは、太さ(実際の値を使用)、色(茶色や緑などの説明的な値、またはRGBなどの特定のカラーモデルで定義された値を使用)、破線の属性などの属性を持つことができます。円オブジェクトは、同様の属性に加えて、原点と半径で定義できます。コンピュータシステムに関して、属性は、特定の読み取りまたは書き込みの読み取りまたは書き込み属性に対して特に定義されます。

属性の使用法

CUSTOMER_NAME問題の要素が別のエンティティのプロパティ()と見なされる可能性がある場合(たとえば)、要素はそれ自体( is of )CUSTOMERの0個以上の属性(プロパティ)を持つことができますCUSTOMER_NAMETYPE = "KINDOFTEXT"

C#

C#プログラミング言語では、属性は、アセンブリメンバータイプなどのフィールドまたはコードのブロックにアタッチされたメタデータであり、Javaのアノテーションと同等です。属性は、リフレクションを介してコンパイラーとプログラムの両方からアクセスできます

この言語のユーザーは、横断的関心事やその他のメカニズムやプラットフォームの使用に対処するために属性が使用される多くの例を目にします。これは、これが彼らの唯一の意図された目的であるという誤った印象を生み出します。

メタデータとしてのそれらの特定の使用は開発者に任されており、インスタンス固有ではない特定のアプリケーション、クラス、およびメンバーに関する幅広いタイプの情報をカバーできます。特定の属性をプロパティとして公開するかどうかの決定も、より大きなアプリケーションフレームワークの一部として使用するかどうかの決定と同様に、開発者に任されています。

属性は、から派生したクラスとして実装されますこれらは、 COMの相互運用性、リモート処理シリアル化などのCLRサービスでよく使用され、実行時に照会できます。 System.Attribute

この例は、C#で属性がどのように定義されているかを示しています。

[Obsolete( "代わりにクラスC1を使用"、IsError = true)] //   public class C {...} // Cが廃止されたことを示すコンパイラメッセージを表示します
                                   

public  class  ObsoleteAttribute  Attribute  {          //クラス名は "Attribute"で終わり
  ます publicstring  Message {  get ;  }                      //ただし、「廃止」として使用できます
  public  bool  IsError {  get ;  セット;  } 
  public  ObsoleteAttribute () {...} 
  public  ObsoleteAttribute string  msg  {...} 
  public  ObsoleteAttribute string  msg  bool  error  {...}}

[Obsolete] 
[Obsolete( "This is obsolete")] 
[Obsolete( "This is obsolete"、false)] 
[Obsolete( "This is obsolete"、IsError = false)]

上記の文字列型の最初のパラメーターのような位置パラメーターは、属性のコンストラクターのパラメーターです。例のブールパラメータのような名前パラメータは属性のプロパティであり、定数値である必要があります。[1]

属性は、メタデータも定義しているが、コンパイルされたアセンブリには含まれていないため、プログラムでアクセスできないXMLドキュメントと対比する必要があります。

HTMLとJavaScript

チェックボックスのチェックされた属性とプロパティが変化したときに表示します。

<!doctype html> 
< html  lang = "en" > 
< head > 
< body > 
< input  name = "food"  type = "meal"  id = "meal" > 
  < meta  charset = "utf-8" > 
  < title > attrデモ</タイトル> 
  <スタイル> 
  p  { ボーダー; 1px  一色; 
フォントファミリー;  arial、 サンセリフ; 
テキスト-中央揃え ; } b {; } </ style > < script src = "https://code.jquery.com/jquery-1.10.2.js" > </ script > </ head > < body >
  
   
     
  
  
   


 
< input  id = "check1"  type = "checkbox"  checked = "checked" > 
< label  for = "check1" > Check me </ label > 
< p > </ p >
 
<スクリプト> 
$  "input"  
  change function () { 
    var  $ input  =  $  this  ); 
    $  "p"  )。html ( "  .attr ( 'checked'):<b>"  +  $ input .attr "checked" + "< / b> <br> " + " .prop ( 'チェック済み'):<b> " + $ input .prop "チェック済み " + " </ b>     
             
       +  $ input is  ":checked"   +  "</ b>"  ); 
  })
  変更(); 
</スクリプト> 
</本文> 
</ html >

をクリックする前に

attr  'チェック済み'   チェック済み
prop  'チェック済み'   false 
is  ':checked'    false

をクリックした後

attr  'チェック済み'     チェック済み
prop  'チェック済み'      true 
is  ':checked'       true

多値データベース

多くのポストリレーショナルまたはマルチバリューデータベースシステムでは、SQLに関連して、テーブルはファイル、行はアイテム、列は属性です。データベースとコードの両方で、属性はプロパティおよび変数と同義ですが、属性は値とサブ値を含むようにさらに定義できます。

これらのデータベースの最初のものは、Pickオペレーティングシステムでした。現在の2つのプラットフォームには、RocketU2のUniverseInterSystemsのCachéが含まれます。

XML

XMLでは属性は、開始タグまたは空の要素タグ内に存在する名前と値のペアで構成されるマークアップ構造です。HTMLXMLなどのマークアップ言語は、属性を使用してデータとデータのフォーマットを記述します。

良い例は、XMLがプロパティ(要素)に値を割り当てるプロセスです。要素の値は、要素自体ではなく、(個別の)終了タグの前にあることに注意してください。要素自体には、いくつかの属性セット(NAME = "IAMAPROPERTY")が含まれている場合があります。

CUSTOMER_NAME問題の要素が別のエンティティのプロパティ()と見なされる可能性がある場合(たとえば)、要素はそれ自体( is of )CUSTOMERの0個以上の属性(プロパティ)を持つことができますCUSTOMER_NAMETYPE = "KINDOFTEXT"

も参照してください

参考文献

  1. ^ Mössenböck、Hanspeter(2002-03-25)。「高度なC#:可変数のパラメーター」(PDF)InstitutfürSystemsoftware、JohannesKeplerUniversitätLinz、FachbereichInformatik。p。44 2011年8月8日取得