PDA

View Full Version : سوال: MetaData چیست؟



cardano7
شنبه 29 خرداد 1389, 23:20 عصر
سلام
نمی دونم چرا اکثر سوالاتی که می پرسم جواب داده نمی شند. اما امیدوارم این یکی رو یک نفر جواب بده:

MetaData چیست؟
وقتی هم که منشا Library های دات نت رو پیگیری می کنیم به MetaData ها برخورد می کنیم.

r00tkit
شنبه 29 خرداد 1389, 23:58 عصر
دوست من به طور ساده metadata شامل یه سری اطلاعات هستش که اسمبلی رو شرح می ده

مثلا انواع تایپ ها رشته های استفاده شده در برنامه (چون رشته immutable هستش و داخل متا دیتا ذخیره می شه )و چه اسمبلی هایی ref شده و خیلی چیزای دیگه

که خود clr از این اطلاعات استفاده می کنه که در زمان اجرا کد رو اجرا کنه

وجود decompiler برای .net به علت همین metadata هستش مثل reflector

برای مشاهدی metadata table می می تونی از cff explorer یا ildasm و ... استفاده کنی

اینم یه کتاب خوب هستش که جواب برای سوالات در مورد metadata رو می تونی توش پیدا کنی

(http://www.amazon.com/Common-Language-Infrastructure-Annotated-Standard/dp/0321154932/ref=sr_1_1?ie=UTF8&s=books&qid=1276977082&sr=8-1) Common Language Infrastructure Annotated Standard
http://ecx.images-amazon.com/images/I/517hPKVM2YL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA300_SH20_OU01_.jpg
اگه پیدا نکردی پ.خ بده لینک بدم

s.khoshfekran
یک شنبه 30 خرداد 1389, 00:13 صبح
کامپایلر هایی که کد هدف آنها CLR هست برای هر ماژول علاوه بر تولید IL باید MetaData نیز صادر کنند در MetaData مجموعه ای از جداول قرار می گیرند کد Self Descriptive داشته باشند
در جداول علاوه بر توصیف کامل کد اطلاعاتی هم درباره اسمبلی ها دارند.این اطلاعات شامل موارد دیگری هم هستند :چه نوع داده ای در دسترس هست؟ نام نوع داده؟ اعضای نوع داده ؟ میدان دید داده و....
کاربردها:

.Net یک مجموعه ای از کلاس هایی دارد که برای خواندن MetaData یک برنامه مورد استفاده قرار می گیرد که Reflection نام دارد
در garbage Collection برای شناسایی فیلد ها و ارجاعات ان از مورد استفاده قرار می گیرد و تعیین می کند چه اشیایی باید آزاد شوند
JIT تمام اطلاعات نوع داده را برای کامپایل از MetaData جمع آوری می کند و این اطلاعات را برای بررسی کد به کار می برد تا مطمین شود برنامه عملیات را به درستی انجام دهد!

apasandideh
چهارشنبه 06 شهریور 1392, 09:01 صبح
What is metadata?

Simply put, metadata is data about data. It is descriptive information about a particular data set, object, or resource, including how it is formatted, and when and by whom it was collected. Although metadata most commonly refers to web resources, it can be about either physical or electronic resources. It may be created automatically using software or entered by hand.
The underlying concepts of metadata have been in use for as long as collections of information have been organized. For example, the information structure for materials in library card catalogs is a type of metadata that has served as a collection management and resource discovery tool for decades.
Using metadata, it is possible to create customizable tags for markup languages such as XML and SGML.