XHTML چیست؟ چه شباهتها و تفاوتهایی با HTML دارد؟ چه کاربردهایی دارد؟ آیا کسانیکه قصد دارند طراحی و برنامهنویسی وبسایت یاد بگیرند، لازم است XHTML را هم یاد بگیرند؟
در این محتوا به این پرسشها پاسخ میدهیم و شما را با XHTML کاملا آشنا میکنیم. مخاطبان این محتوا کسانی هستند که زبان نشانهگذاری HTML را میشناسند و با آن کار کردهاند. برای فهم اکس اچ تی ام ال و دلایل اصلی برای توسعهی آن لازم است که با html، xml و زبانهای نشانهگذاری آشنا بود. پس، اگر توسعهدهنده وبسایت نیستید و درباره html، زبانهای نشانهگذاری و اهمیت فوقالعاده آنها در طراحی و توسعه وبسایتها چیزی نمیدانید؛ ابتدا مقاله «html چیست و چه کاربردی دارد؟+(لیست جامع تگ های html)» را بخوانید.
اگر طراح وبسایت هستید و چیزهایی درباره XHTML شنیدهاید و میخواهید بیشتر دربارهاش بدانید، به خواندن ادامه دهید. سؤالی را دراینباره بیجواب نمیگذاریم.
XHTML چیست؟
Extensible HyperText Markup Language (زبان نشانهگذاری فرامتن توسعهپذیر) نسخهی توسعه و گسترشیافته زبان نشانهگذاری HTML است تا به آن امتیازات و قابلیتهای زبان نشانهگذاری XML داده شود. XML یا Extensible Markup Language (زبان نشانهگذاری توسعهپذیر) هم درست مانند html یک زبان نشانهگذاری است که مدت کوتاهی بعد از آن ساخته و منتشر شد.
زبانهای نشانهگذاری به معنای دقیق کلمه زبانهای برنامهنویسی و اسکریپتنویسی نیستند. زبانهای نشانهگذاری با هدف ذخیرهسازی و انتقال اطلاعات ازطریق اینترنت و بین سیستمهای مختلف طراحی و ساخته شدهاند. از این زبانها برای دستهبندی اطلاعات اسناد (محتواهای موجود در یک صفحه وبسایت) و ساختاردادن به بخشهای مختلف آن استفاده میشود. با استفاده از این زبانها اطلاعات طوری نوشته میشوند که مرورگرها (کامپیوتر/ماشین) قادر به خواندن و نمایشدادن ساختارها و اطلاعات در قالبهای مشخصشده به کاربر باشند.
درست است که HTML و XML شباهتهای زیادی دارند و هر دو براساس استانداردهای زبانهای نشانهگذاری (SGML) ساخته شدهاند، اما تفاوتهای بسیار مهمی هم دارند. از مهمترین تفاوتهای این دو زبان نشانهگذاری این است که زبان XML طوری طراحی شده که هم انسانها و هم هر نوع ماشین و سیستمی بتواند آن را بخواند. اما HTML اینطور نیست.
به نمونههای زیر توجه کنید. در هر دو مجموعهای از اطلاعات (یک سند یا متن واحد) با دو زبان XML و HTML ساختاربندی، قالببندی و ارائه شدهاند.
<?xml version="1.0" encoding="UTF-8"?> <bookstore> <book> <title>The Lord of the Rings</title> <author>J.R.R. Tolkien</author> <year>1954</year> <price>24.99</price> </book> <book> <title>The Hitchhiker's Guide to the Galaxy</title> <author>Douglas Adams</author> <year>1979</year> <price>14.95</price> </book> </bookstore>
<!DOCTYPE html> <html lang="en"> <head> <title>Book Catalog</title> </head> <body> <h1>Bookstore</h1> <table> <thead> <tr> <th>Title</th> <th>Author (Year)</th> <th>Price</th> </tr> </thead> <tbody> <tr> <td>The Lord of the Rings</td> <td>J.R.R. Tolkien (1954)</td> <td>$24.99</td> </tr> <tr> <td>The Hitchhiker's Guide to the Galaxy</td> <td>Douglas Adams (1979)</td> <td>$14.95</td> </tr> </tbody> </table> </body> </html>
همانطور که در نمونهها ملاحظه میکنید، زبان HTML تگهای بیشتری دارد و شاید بتوان گفت که در مقایسهبا اولین نمونه کمی پیچیدهتر است. XML سادهتر است و ذخیره و انتقال اطلاعات را نیز سادهتر میکند. XML سادهتر است چون برعکس HTML تگهای تعریفشده ندارد.
بههمیندلیل، به این زبان توسعهپذیر گفته میشود چون توسعهدهنده میتواند براساس نیازش هر تگی را تعریف و به کدهای نوشتهشده اضافه کند. اگر توسعهدهنده به اطلاعاتی که با XML ذخیزهشده است موارد جدیدی را با تگهای جدید اضافه کند، سیستمهای مختلف مشکلی با خواندن تگهای جدید ندارد.
آنچه در این زبان اهمیت ویژهای دارد این است که ساختار و قواعد کاملا رعایت شود. XML قواعد نوشتاری (نحوی) سختگیرانهتری دارد تا خوانایی کدها و ساختار منظم و شفاف را تضمین کند. بههمیندلیل، هرزمان که از آن قواعد پیروی نشده باشد، هیچ بخش از کدها اجرا و نمایش داده نمیشود.
XHTML زبان نشانهگذاری است که براساس قواعد XML ساخته شده و درحقیقت نسخهای از HTML است که با قواعد XML نوشته میشود تا برخلاف HTML توسعهپذیر و با سیستمهای مختلف و انواع زبانها سازگار باشد.
XHTML vs. HTML
XHTML نسخهی توسعهپذیر از زبان HTML است که قواعد نوشتاری دقیقتر و سختگیرانهتری دارد تا ساختار منظم و شفاف اطلاعات کاملا تضمین شود و هیچ اشتباهی بهوجود نیاید. XHTML برای بهبود عملکرد HTML و کمک به توسعهدهندگان برای طراحی و توسعه راحتتر، سریعتر و بدون خطای وبسایتها ساخته شده است.
XHTML برخلاف HTML تگهای تعریفشده ندارد. همچنین، به مرورگر اجازه نمیدهد تا اگر خطایی نحوی در کدها وجود دارد، آنها را اجرا کند. این در حالی است که مرورگرها کدهای HTML یک صفحه از وبسایت را باوجود خطاها و اشکالات موجود در نشانهگذاری (ساختاربندی کلی) اجرا میکنند. همین ممکن است باعث شود تا ساختار و قالببندی کلی یک صفحه بهدرستی نمایش داده نشود.
قطعه کد زیر با زبان نشانهگذاری XHTML نوشته شده است.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>Book Catalog</title> </head> <body> <h1>Bookstore</h1> <div class="books"> <div class="book"> <h2>The Lord of the Rings</h2> <p>by J.R.R. Tolkien (1954)</p> <p>Price: $24.99</p> </div> <div class="book"> <h2>The Hitchhiker's Guide to the Galaxy</h2> <p>by Douglas Adams (1979)</p> <p>Price: $14.95</p> </div> </div> </body> </html>
درادامه، شباهتها و تفاوتهای این دو زبان را بهتفکیک بررسی میکنیم.
شباهتهای XHTML و HTML
شباهتهای XHTML و HTM عبارت است از:
- این دو زبان ساختار مشابهی دارند. هر دو از زبانهای نشانهگذاری هستند و از تگها
< >
برای تعریف ساختار و محتوای یک صفحه از وب استفاده میکنند. - هر دو زبان از تگ
<a>
برای ایجاد هایپرلینکها بین صفحات وب پشتیبانی میکنند. - هر دو زبان از عناصر (المانهای) چندرسانهای پشتیبانی میکنند و با استفاده از آنها میشود عناصر چندرسانهای مانند تصاویر، ویدئوها و صداها را در صفحات وب قرار داد.
- بیشتر مرورگرهای وب از این دو زبان پشتیبانی میکنند و صفحات وب ساختهشده با آنها را میخوانند و اجرا میکنند.
- هم XHTML و هم HTML با زبان CSS سازگارند و برای افزودن رنگ و استایل و جذابترکردن جلوه بصری محتواها و صفحات ساختهشده با این دو زبان از CSS (Cascading Style Sheets) استفاده میشود.
- از هر دو زبان میشود برای توسعه صفحات وبسایت و وباپلیکیشن استفاده کرد.
تفاوتهای XHTML و HTML
تفاوتهای XHTML و HTML عبارت است از:
- فایلی را که قرار است با XHTML نوشته شود، باید با این عبارت آغاز کرد:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
- استفاده از این تگها در XHTML الزامی است:<html>، <head>، <title> و <body>.
- در XHTML المانها باید بهدرستی در درون یکدیگر قرار گرفته باشند.
- در XHTML، نام المانها و attributeها باید با حروف کوچک نوشته شده باشند.
- کدهای نوشتهشده با XHTML خوانایی بهتری دارد و منظمتر است چون نوشتن با این زبان قواعد سختگیرانهتری دارد.
- اگر تگها بهدرستی بسته نشده باشند یا مقادیر در ” ” قرار نگرفته باشند یا attributeها کامل نوشته نشده باشند، کدهای XHTML خطا دارند و کدنویس باید آنها را برطرف کند.
- کاربردهای XHTML از HTML بیشتر است. مهمترین کاربرد HTML در توسعه ساختار اصلی و قالببندی کلی صفحات وبسایتهای استاتیک و داینامیک است. اما XHTML کاربردهای دیگری هم دارد.
کاربردهای زبان نشانهگذاری XHTML
زبان نشانهگذاری XHTML در موارد زیر نیز کاربرد دارد:
- توسعه و کدنویسی سرور ساید بههمراه زبانهای اسکریپتنویسی PHP یا پایتون،
- ساختن رابطهای کاربر وبسایت (Web UIs) با استفاده از فریمورکهایی مانند Bootstrap،
- ساختن رابطهای کاربر موبایل (Mobile UIs) با استفاده از فریمورکهایی مانند jQuery Mobile ،
- توسعه بازیهای آنلاین،
- ساختن فرمها و
- نوشتن و توسعه اسناد XML برای انتقال داده بین برنامهها و سیستمهای مختلف.
بوت استرپ یکی از قدرتمندترین فریمورکهای توسعه فرانت اند وبسایتهای داینامیک است. توسعه صفحات کاملا واکنشگرا با این فریمورک کار بسیار ساده و سریعی است. اگر میخواهید با قدرت و امکانات این فریموک بیشتر آشنا شوید، «Bootstrap چیست؟ + کاربردها، مزایا و معایب!» را بخوانید.
منابع آموزشی برای یادگیری XHTML
برای یادگیری زبان نشانهگذاری XHTML لازم است بر زبان XML و HTML مسلط بود. با کمکگرفتن از منابع آموزشی رایگان زیر میتوانید اول آن دو زبان و بعد هم اکس اچ تی ام ال را یاد بگیرید:
۱. XML Tutorial
۲. HTML Tutorial
۳. XHTML Tutorial
جمعبندی و نتیجهگیری
XHTML یک زبان نشانهگذاری است که برپایهی XML و HTML ساخته شده است. مهمترین دلیل ساختهشدن این زبان برطرفکردن نقاط ضعف و بهبود عملکرد HTML در توسعه وبسایتها بود. XHTML قواعد نوشتاری سختگیرانهتر و کدهای خواناتری دارد و همین سبب میشود تا هیچ خطایی حتی اشتباهات جزئی در کدها باقی نماند.
یادگیری XHTML یک انتخاب شخصی است. ممکن است توسعهدهنده یا طراح سایت برای کار در پروژه یا حوزهای مشخص نیاز داشته باشد تا بر این زیان مسط باشد. اگر کسی قصد دارد فقط در دنیای طراحی و توسعه وبسایت، خیلی حرفهای و تخصصی، فعالیت کند؛ باید بر HTML مسلط باشد. چون همچنان (HTML (HTML5 اولین انتخاب توسعهدهندگان برای ساختن انواع وبسایتها است.
The post چرا باید درباره XHTML بدانید؟ appeared first on آکادمی آمانج.