xml چیست

نوشته شده توسط:

XML یک سیستم برای ذخیره مناسب اطلاعات است و کاربرد زیادی در سیستم‌های مختلف و برنامه نویسی برای گوشی‌های تلفن همراه دارد.

XML خلاصه شده عبارت eXtensible Markup Language به معنای زبان نشانه گذاری قابل گسترش است. همانطور که در دوره آموزش طراحی وب و زبان HTML گفتیم، HTML نیز یک زبان نشانه گذاری است که برای نمایش اطلاعات مورد استفاده قرار می‌گیرد.

XML را می‌توان به سادگی در هر ادیتوری اعم از notepad ویندوز و یا هر ادیتور دیگری ویرایش و مشاهده کرد. اهمیت XML در استاندارد بودن آن است، به این معنا که یک استاندارد پذیرفته شده در زمینه ذخیره اطلاعات در قالب فایل است. فایل‌های XML با پسوند .xml ذخیره می‌شوند و حجم بسیار پایینی دارند.

جالب است بدانید XML فرزند SGML قدیمی ترین زبان نشانه گذاری دهه هشتاد میلادی است که بسیار ساده تر از آن می‌باشد.

در HTML تگ‌ها از پیش تعریف شده هستند ولی در XML اینگونه نیست و تگ‌ها را باید درون فایل خود تعریف کرد.

عناصر درونی XML از تگ‌ها تشکیل شده اند و این تگ‌ها می‌توانند تک قسمتی یا دو قسمتی باشند. تگ‌های XML مانند HTML با کاراکترهای < و > نشانه گذاری می‌کنند و در پایان تگ از کاراکتر / استفاده می‌شود. یک فایل ساده xml به شرح زیر است:

<?xml version="1.0" encoding="utf-8"?>
<student>
     <name>ali</name>
     <lastname>razavi</lastname>
     <age>20</age>
</student>
<student>
     <name>mohsen</name>
     <lastname>alavi</lastname>
     <age>19</age>
</student>

در سطر اول ورژن xml و نوع encoding صفحه مشخص شده است. در سطرهای بعدی عناصر XML را می‌بینید که دو عنصر student داریم که درون هر یک از این عناصر سه عنصر دیگر به نام‌های name و lastname و age قرار گرفته است.

عناصر XML گاه صفت‌هایی را نیز شامل می‌شوند. در زیر یک مثال پیچیده از یک فایل XML می‌بینید که از آن برای تولید رابط کاربری نرم افزارهای اندروید استفاده می‌شود:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="hitos.ir.hitosapp.MainActivity">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"/>
</RelativeLayout>

در خط اول ورژن XML و نوع encoding صفحه را مشاهده می‌کنید.

در سطر دوم یک عنصر به نام RelativeLayout شروع می‌شود و در آخرین سطر خاتمه می‌یابد. اطلاعات سطرهای سه تا نه متعلق صفت‌های تگ RelativeLayout هستند و درون این تگ یک تگ دیگر به نام TextView قرار گرفته است. تگ TextView یک قسمتی است و تگ پایانی ندارد ولی با کاراکتر /> خاتمه می‌یابد. تگ TextView نیز در سطرهای 13 الی 15 صفت‌هایی را شامل می‌شود.

همانطور که در بالا گفتیم، مثالی که در بالا به آن اشاره کردیم در واقع رابط کاربری یک برنامه اندروید را تولید می‌کند و طبیعتا تنها در یک نرم افزار اندروید مفهوم دارد. هر فایل XML برای یک منظور خاصی تولید می‌شود.

کاربردهای XML

کاربردهای XML واقعا گسترده و متنوع هستند، تقریبا در هر سیستمی نرم افزاری می‌توان اثری از XML‌ها یافت. حتی نرم افزارهایی مانند Photoshop برای ذخیره تنظیمات خود از XML بهره می‌برند. این زبان نشانه گذاری گاه بسیار بزرگ می‌شود ولی معمولا از آن‌ها برای ذخیره اطلاعات کوتاه استفاده می‌شود.

مهم ترین کاربرد XML تولید اطلاعات برای ارتباط بین سیستم‌های نا متجانس است. مثلا فرض کنید اطلاعات XML تولید شده در یک رایانه برای تنظیمات یک دستگاه سخت افزاری مانند یک مودم مورد استفاده قرار گیرد.

یکی دیگر از کاربردهای XML در طراحی رابط کاربری نرم افزارهای اندروید است.

یک کاربرد مهم XML در ذخیره اطلاعات LOG سیستم و یا انتقال اطلاعات پایگاه داده از یک سیستم به سیستم دیگر است.

چرا XML مهم است؟

همانطور که در ابتدای این مطلب گفتیم، اهمیت XML در استاندارد بودن آن است، همین که این زبان سال‌ها به عنوان زبان استاندارد ذخیره اطلاعات انتخاب شده است در تمام زبان‌های برنامه نویسی مطرح جهان می‌توان اطلاعات درون این فایل‌ها را خواند و ویرایش کرد.

استاندارد بودن فرایندی است که همه را متقاعد می‌کند از این رویکرد استفاده کنند.

امیدوارم این مطلب برای شما مفید بوده باشد.

نظر خود را برای این مطلب وارد کنید
دریافت خبرنامه

موضوعات بخش برنامه نویسی و نرم افزار

مطالب برگزیده مطالب عمومی برنامه نویسی

مطالب برگزیده سایت