Comments: یادداشت‌هایی که فقط برنامه‌نویس می‌بینه

حتماً تا الان تو کدهای این دوره چندبار یه چیزی شبیه <!-- این یه توضیحه --> دیدی. تو این درس می‌خوایم دقیق بریم سراغ همین موضوع؛ یعنی نظرات یا Comments در HTML، که با اینکه ساده به نظر می‌رسن، تو پروژه‌های واقعی نقش خیلی مهمی دارن.

Comment چیه؟

Comment یه بخشی از کد هست که مرورگر کاملاً نادیده‌ش می‌گیره و هیچ‌وقت تو صفحه نمایش داده نمی‌شه. این بخش فقط برای خود برنامه‌نویس یا تیم توسعه نوشته می‌شه؛ مثلاً برای توضیح دادن یه بخش از کد، یادداشت‌گذاری برای خودت، یا غیرفعال‌کردن موقت یه تکه کد بدون حذفش.

سینتکس نوشتن Comment

<!-- این یک توضیح است -->

هر Comment در HTML همیشه با <!-- شروع و با --> تموم می‌شه. هر چیزی که بین این دو قرار بگیره، کاملاً از دید مرورگر مخفی می‌مونه و هیچ تأثیری روی نمایش صفحه نداره.

مثال‌های کاربردی

مثال ۱: توضیح‌دادن یه بخش از کد

<!-- شروع بخش هدر سایت -->
<header>
  <h1>فروشگاه من</h1>
</header>
<!-- پایان بخش هدر سایت -->

تو این مثال، دو تا Comment گذاشتیم تا مشخص کنه کجا بخش هدر شروع و کجا تموم می‌شه. این کار وقتی صفحه بزرگ و پیچیده می‌شه (مثلاً چند صد خط کد)، خیلی کمک می‌کنه که سریع بفهمی هر بخش کجاست.

مثال ۲: غیرفعال‌کردن موقت یه تکه کد

<p>این پاراگراف نمایش داده می‌شود.</p>

<!-- 
<p>این پاراگراف موقتاً غیرفعال شده و نمایش داده نمی‌شود.</p>
-->

تو این مثال، پاراگراف دوم چون داخل Comment قرار گرفته، اصلاً تو صفحه دیده نمی‌شه. این روش خیلی به کار میاد وقتی می‌خوای موقتاً یه بخش از صفحه رو غیرفعال کنی، بدون اینکه کدش رو کامل پاک کنی؛ مثلاً برای تست کردن اینکه صفحه بدون اون بخش چه شکلی می‌شه.

مثال ۳: یادداشت‌گذاری برای کارهای بعدی

<!-- TODO: این بخش باید بعداً با یک اسلایدر جایگزین شود -->
<img src="banner.jpg" alt="بنر تبلیغاتی">

خیلی از برنامه‌نویس‌ها از عبارت TODO داخل Comment استفاده می‌کنن تا کارهای ناتموم یا برنامه‌های آینده رو یادداشت کنن. این عبارت هیچ معنای خاصی برای مرورگر نداره؛ صرفاً یه قرارداد رایج بین برنامه‌نویس‌هاست.

آیا Comment روی سرعت صفحه تأثیر داره؟

Comment مقدار خیلی ناچیزی به حجم فایل اضافه می‌کنه، چون بالاخره یه متنه که باید از سرور به مرورگر منتقل بشه. اما این تأثیر تو عمل تقریباً قابل‌چشم‌پوشیه، مگر اینکه صدها خط توضیح طولانی تو یه فایل بزرگ داشته باشی. نکته‌ی مهم‌تر اینه که Comment هیچ تأثیری روی نحوه‌ی رندر یا اجرای صفحه نداره؛ فقط یه‌کم حجم فایل رو زیاد می‌کنه.

نکته‌ی مهم: Comment یعنی مخفی از مرورگر، نه از کاربر کنجکاو

یه نکته‌ی مهم اینه که Comment فقط از دید بصری کاربر عادی مخفیه؛ اما اگه یکی کد صفحه رو با «View Page Source» یا از طریق Inspect باز کنه، دقیقاً همون متن Comment رو می‌بینه. بنابراین هیچ‌وقت نباید اطلاعات حساس (مثل رمز عبور یا کلید API) رو داخل Comment بذاری، چون اصلاً مخفی نمی‌مونه.

محدودیت مهم: تودرتو نبودن Comment

یه قانون مهم اینه که نمی‌شه یه Comment رو داخل یه Comment دیگه نوشت:

<!-- این یک کامنت است <!-- این کامنت تودرتو خطاست --> -->

این کد باعث رفتار غیرمنتظره می‌شه، چون مرورگر به محض دیدن اولین -->، فکر می‌کنه Comment تموم شده و بقیه‌ی متن رو به‌عنوان کد عادی تفسیر می‌کنه که معمولاً باعث بهم‌ریختگی صفحه می‌شه.

چند اشتباه رایج

  • گذاشتن اطلاعات حساس (مثل رمز، ایمیل داخلی تیم یا نکات امنیتی) داخل Comment، با این تصور غلط که کاربر نمی‌تونه ببینتش.
  • نوشتن Comment های تودرتو که باعث خطا در نمایش صفحه می‌شه.
  • فراموش‌کردن بستن Comment (یعنی ننوشتن -->)، که باعث می‌شه بخش بزرگی از کد بعدی به‌اشتباه داخل Comment در نظر گرفته بشه و نمایش داده نشه.

بهترین روش‌ها

  • از Comment برای مشخص‌کردن شروع و پایان بخش‌های بزرگ صفحه (مثل هدر، منو، فوتر) استفاده کن؛ این کار خوانایی کد رو برای خودت و بقیه‌ی اعضای تیم خیلی بالا می‌بره.
  • هیچ‌وقت اطلاعات حساس رو داخل Comment قرار نده.
  • Comment های اضافی و بی‌فایده رو تو نسخه‌ی نهایی و منتشرشده‌ی سایت پاک کن تا حجم فایل غیرضروری زیاد نشه.

نکته‌ی سئو

Comment ها هیچ تأثیر مستقیمی روی سئو ندارند، چون موتورهای جستجو محتوای داخل آن‌ها را نادیده می‌گیرند و آن را جزو محتوای قابل‌ایندکس صفحه به‌حساب نمی‌آورند.

نکته‌ی دسترسی‌پذیری

Comment ها توسط صفحه‌خوان‌ها هم خوانده نمی‌شوند؛ بنابراین هیچ تأثیری، مثبت یا منفی، روی تجربه‌ی کاربران دارای ناتوانی بینایی ندارند.

جمع‌بندی

نظرات یا Comments در HTML با سینتکس <!-- ... --> نوشته می‌شوند و ابزاری برای یادداشت‌گذاری و توضیح کد هستند، بدون اینکه هیچ تأثیری روی نمایش صفحه داشته باشند. این بخش‌ها هرگز کاملاً مخفی نیستند و از طریق مشاهده‌ی کد صفحه قابل دیدن‌اند، پس هرگز نباید حاوی اطلاعات حساس باشند.