مقدمه ای بر ابزار برنامه نویس کروم، قسمت اول

معرفی

Google Chrome یک مرورگر وب غنی و قدرتمند است که برای برنامه های کاربردی در وب پیشگام است. Google سخت کار کرده است تا یک تجربه مرور بسیار سریع، بسیار پایدار و غنی از ویژگی ها را برای کاربران نهایی ارائه دهد. Google همچنین تضمین کرده است که توسعه دهندگانی مانند شما تجربه خوبی با Chrome دارند. Developer Tools که در کروم و سافاری موجود است، به توسعه دهندگان وب و برنامه نویسان اجازه می دهد تا به قسمت های داخلی مرورگر و برنامه وب آنها دسترسی عمیق داشته باشند.

Developer Tools بخشی از پروژه Webkit منبع باز است. بیشتر بحث در این مقاله مربوط به گوگل کروم و سافاری است. با این حال، اسکرین شات ها با استفاده از Google Chrome 6 گرفته شده اند، بنابراین ممکن است تفاوت های جزئی در مرورگر شما وجود داشته باشد.

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

اگر نمونه شما از Developer Tools کاملاً با اسکرین شات های موجود در این مقاله مطابقت ندارد، توصیه می کنیم آن را به 5 ارتقا دهید تا بتوانید دنبال کنید و به همه ویژگی های توضیح داده شده در اینجا دسترسی پیدا کنید.

بررسی اجمالی

به طور کلی، هشت گروه اصلی از ابزارهای موجود برای مشاهده ابزار توسعه‌دهنده وجود دارد و قابلیت‌ها با هر نسخه افزایش می‌یابد. Chrome 5 اکنون عناصر، منابع، اسکریپت‌ها، جدول زمانی، نمایه‌ها، فضای ذخیره‌سازی، حسابرسی و کنسول را ارائه می‌دهد.

عناصر

برگه عناصر
برگه عناصر

ابزار Elements به شما این امکان را می دهد که صفحه وب را همانطور که مرورگر می بیند ببینید. یعنی با استفاده از ابزار Elements می‌توانید HTML خام، سبک‌های CSS خام، Document Object Model را ببینید و هر کدام را در زمان واقعی دستکاری کنید.

منابع

برگه منابع
برگه منابع

از ابزار Resources استفاده کنید تا بدانید صفحه وب یا برنامه شما چه اجزایی را از سرورهای وب درخواست می کند، این درخواست ها چقدر طول می کشد و چه مقدار پهنای باند مورد نیاز است. همچنین می توانید هدرهای درخواست و پاسخ HTTP را برای هر یک از منابع خود مشاهده کنید. ابزار Resources برای کمک به افزایش سرعت بارگذاری صفحه بسیار مناسب است.

اسکریپت ها

برگه اسکریپت ها
برگه اسکریپت ها

برای بررسی داخل جاوا اسکریپت برای یک صفحه، از ابزار Scripts استفاده خواهید کرد. در اینجا می‌توانید فهرستی از اسکریپت‌های مورد نیاز صفحه به‌علاوه یک دیباگر اسکریپت کامل را پیدا کنید. حتی می توانید جاوا اسکریپت را در لحظه تغییر دهید!

جدول زمانی

برگه جدول زمانی.
برگه جدول زمانی

برای تجزیه و تحلیل زمان و سرعت پیشرفته، ابزار Timeline دید عمیقی را به فعالیت‌های مختلف پشت صحنه Chrome ارائه می‌دهد. می‌توانید یاد بگیرید که مرورگر چقدر طول می‌کشد تا رویدادهای DOM، رندر کردن طرح‌بندی‌های صفحه و رنگ‌آمیزی پنجره را انجام دهد.

پروفایل ها

برگه عملکرد.
برگه عملکرد

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

ذخیره سازی

برگه ذخیره سازی.
برگه ذخیره سازی

برنامه‌های کاربردی وب مدرن به ماندگاری بیشتری نسبت به کوکی‌های ساده نیاز دارند، و ابزار Storage به شما کمک می‌کند فضای ذخیره‌سازی مرورگر محلی را ردیابی، جستجو و اشکال‌زدایی کنید. این ابزار می‌تواند داده‌های ذخیره‌شده در پایگاه‌های داده محلی، ذخیره‌سازی محلی، ذخیره‌سازی جلسه و کوکی‌ها را نمایش دهد و پرس و جو کند.

حسابرسی

برگه حسابرسی
برگه حسابرسی

ابزار حسابرسی مانند این است که مشاور بهینه سازی وب خود در کنار شما بنشیند. این ابزار می‌تواند یک صفحه را هنگام بارگذاری آنالیز کند و پیشنهادات و بهینه‌سازی‌هایی را برای کاهش زمان بارگذاری صفحه و افزایش پاسخ‌گویی درک شده (و واقعی) ارائه دهد.

کنسول

تب کنسول.
تب کنسول

آخرین اما قطعا نه کم اهمیت، Developer Tools یک کنسول کامل ارائه می دهد. از کنسول، می توانید جاوا اسکریپت دلخواه را وارد کنید و به صورت برنامه نویسی با صفحه خود تعامل داشته باشید.

راه اندازی

راه‌اندازی ابزارهای توسعه‌دهنده در داخل Chrome آسان است.

برای هر سیستم عاملی، می توانید به سادگی بر روی هر عنصر در صفحه کلیک راست کرده و گزینه "Inspect Element" را از منوی زمینه انتخاب کنید. با این کار Developer Tools باز می شود و دقیقاً روی عنصری که روی آن کلیک کرده اید دریل می شود.

برای مشاهده عملکرد، از http://www.google.com در مرورگر کروم دیدن کنید. روی لوگوی گوگل کلیک راست کنید و گزینه های زیر را مشاهده خواهید کرد:

باز کردن بازرس
باز کردن بازرس

با انتخاب "Inspect Element" ابزار Developer Tools ظاهر می شود که باید به شکل زیر باشد:

داخل بازرس المنت.
داخل بازرس المنت

توجه کنید که چگونه ابزار Developer Tools در داخل برگه Elements باز می شود و به طور خودکار به تگ <img> برای لوگوی Google کشیده شده و برجسته می شود. وقتی کنجکاو هستید که کدام HTML عنصر صفحه خاصی را ایجاد کرده است، بسیار مفید است.

همچنین می توانید Developer Tools را با یک میانبر صفحه کلید ساده باز کنید. بسته به سیستم عامل خود، موارد زیر را امتحان کنید:

  • در ویندوز و لینوکس، کلیدهای Control-Shift-J را انتخاب کنید.
  • در مک، کلیدهای Command-Option-J را انتخاب کنید.

در نهایت، می‌توانید ابزارها را از منوی اصلی مرورگر باز کنید.

در مک و از نوار منوی اصلی برنامه، View، Developer، Developer Tools را انتخاب کنید.

باز کردن Dev Tools در مک.
باز کردن Dev Tools در مک

در رایانه شخصی ویندوز، باید از منوی صفحه در بالا سمت راست استفاده کنید و Developer, Developer Tools را انتخاب کنید.

باز کردن Dev Tools در ویندوز.
باز کردن Dev Tools در ویندوز

اکنون که ابزار Developer Tools را باز و آماده کرده اید، بیایید با کاوش در عناصر صفحه اصلی Google شروع کنیم.

عناصر

انتخاب تب Elements
انتخاب تب Elements

اولین تب در Developer Tools Elements است. این پنجره شما در ساختار صفحه وب است که همانطور که مرورگر شما آن را می بیند ارائه می شود.

مرور DOM

هنگامی که نیاز به شناسایی قطعه HTML برای برخی از جنبه های صفحه دارید، اغلب از برگه های Elements بازدید می کنید. به عنوان مثال، ممکن است کنجکاو باشید که آیا یک تصویر دارای ویژگی HTML id است و ارزش آن ویژگی چقدر است.

برگه عناصر گاهی اوقات راه بهتری برای "مشاهده منبع" برای یک صفحه است. در داخل تب Elements، DOM صفحه به خوبی قالب بندی می شود و به راحتی عناصر HTML، اصل و نسب آنها و فرزندان آنها را به شما نشان می دهد. اغلب، صفحاتی که بازدید می‌کنید دارای HTML کوچک یا به سادگی زشت هستند که دیدن ساختار صفحه را دشوار می‌کند. تب Elements راه حل شما برای مشاهده ساختار واقعی صفحه است.

به عنوان مثال، خروجی زیر از «نمایش منبع» صفحه اصلی گوگل است.

منبع کوچک Google.com.
منبع کوچک Google.com

خواندن منبع فوق سخت است زیرا بهینه و کوچک شده است. فرمت برای مشتریان و سرورها خوب است اما برای توسعه دهندگان دشوار است!

در عوض، زمانی که می‌خواهید منبع یک صفحه را بخوانید، از تب Elements برای مشاهده سلسله‌مراتب عناصر برجسته‌شده با نحو زیبا و چاپ شده استفاده کنید.

بازرس Elements زیبا HTML را چاپ می کند.
بازرس Elements زیبا HTML را چاپ می کند

برگه Elements همچنین به شما امکان می دهد برای هر عنصری در صفحه بگردید، تعامل داشته باشید و گاهی اوقات حتی سبک ها، معیارها، ویژگی ها و شنوندگان رویداد را تغییر دهید.

مرور سبک ها

ماهیت آبشاری CSS مرورگر Styles را در تب Elements بسیار مفید می کند. گاهی اوقات، سبک ها روی خود فرو می ریزند و تصاویر ناخواسته ظاهر می شوند. دانستن اینکه کدام قانون استایلی که مرورگر بر روی عنصر اعمال می کند به شما کمک می کند چنین مشکلی را رفع کنید.

با کلیک بر روی هر عنصر در تب Elements، تمام سبک های متصل به آن عنصر نمایش داده می شود.

یک ظاهر طراحی CSS در بازرس.
یک ظاهر طراحی CSS در بازرس

در تصویر بالا خواهید دید که ما می‌توانیم تمام ویژگی‌های سبک اعمال شده را بگوییم. برای مثال، padding مستقیماً از ویژگی style عنصر <img> می آید. با این حال، عرض و ارتفاع از ویژگی‌های بومی مربوطه خود می‌آیند. جالب اینجاست که می‌توان گفت که سبک‌هایی نیز از تگ <center> ، تگ <body> و دیگران به ارث رسیده‌اند.

در حالی که دیدن تک تک استایل ها و اینکه از کجا آمده اند بسیار عالی است، دیدن مجموعه نهایی سبک ها پس از محاسبه و اعمال بر روی عنصر نیز بسیار مفید است. همانطور که در تصویر زیر نشان داده شده است، می توانید محصول نهایی را با انتخاب منوی Computed Style مشاهده کنید.

سبک های محاسبه شده مرورگر نیز نمایش داده می شوند.
سبک های محاسبه شده مرورگر نیز نمایش داده می شوند.

در ادامه نگاهی کوتاه به سایر ویژگی های ارائه شده توسط Elements Tab خواهیم داشت. موارد زیر را با جزئیات بیشتری در مقالات بعدی پوشش خواهیم داد.

مدل جعبه

با انتخاب منوی Metrics می‌توانید مدل جعبه را همانطور که روی عنصر انتخاب‌شده اعمال می‌شود ببینید:

مشاهده مدل جعبه یک عنصر
مشاهده مدل جعبه یک عنصر

ویژگی های عنصر

با انتخاب منوی Properties می‌توانید تمام ویژگی‌های عنصر را ببینید، همانطور که جاوا اسکریپت و DOM آن را مشاهده می‌کنند:

مشاهده ویژگی های عنصر DOM.
مشاهده ویژگی های عنصر DOM.

شنوندگان رویداد

و در نهایت، حتی می‌توانید شنوندگان رویداد متصل به عنصر یا آن حباب را از طریق منوی Event Listeners ببینید:

مشاهده شنوندگان رویداد DOM Element.
مشاهده شنوندگان رویداد DOM Element.

خلاصه

قابلیت‌های زیادی از طریق برگه Elements در دسترس است و مقالات آینده عمیق‌تر به منوهای فردی خواهند رفت.

زمانی که می‌خواهید ببینید صفحه برای خود مرورگر چگونه به نظر می‌رسد، باید از تب Elements استفاده کنید. مشکلات رایجی مانند "این سبک چگونه محاسبه می شود؟" یا "چه تگ های HTML این مؤلفه را ایجاد کرد؟" به سرعت و به راحتی از طریق برگه عناصر پاسخ داده می شوند.

به برگه Elements مانند یک "منبع مشاهده uber" فکر کنید و دید بسیار واضحی را در صفحه خود به دست آورید.

بعد از اینکه صفحه را بررسی کردید، ممکن است تعجب کنید که چگونه HTML، CSS و تصاویر در وهله اول به آنجا رسیده اند. برگه منابع، که در ادامه توضیح داده شد، به شما نشان می دهد که چگونه مرورگر مشتری و سرور وب برای ارسال بر روی آن منابع با هم ارتباط برقرار می کنند.

منابع

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

برگه Resources در Developer Tools پنجره شما برای ارتباط بین وب سرور و مرورگر مشتری است. شما می توانید تمام منابع درخواست شده توسط مرورگر را مشاهده کنید (این همیشه بسیار تعجب آور است!)، مدت زمان دریافت آنها از سرور، و میزان پهنای باندی که در طول انتقال استفاده می شود.

از قضا، اجرای Tab Resources بر عملکرد بارگذاری صفحه تأثیر می گذارد، بنابراین به طور پیش فرض غیرفعال است. اولین باری که به عملکرد دسترسی پیدا می کنید، باید آن را برای صفحه ای که مشاهده می کنید فعال کنید.

فعال کردن ردیابی منابع
فعال کردن ردیابی منابع

توصیه می‌کنم پیش‌فرض «فقط فعال کردن برای این جلسه» را انتخاب کنید، زیرا نمی‌خواهید بیهوده جریمه عملکرد کوچک را متحمل شوید. هنگامی که روی «فعال کردن ردیابی منابع» کلیک کنید، صفحه مجدداً بارگیری می‌شود و Developer Tools منابع ارسال شده از سرور را نظارت و نمایش می‌دهد.

تصویر زیر منابع مورد نیاز و بارگذاری شده برای صفحه اصلی Google را نشان می دهد.

ردیابی منابع Google.com.
ردیابی منابع Google.com.

اطلاعات زیادی روی این صفحه وجود دارد، پس بیایید آن را تکه تکه کنیم.

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

اگر فقط به تصاویر یا شیت‌های سبک علاقه دارید، می‌توانید نوع منبع را با استفاده از منو مستقیماً زیر پنجره برگه اصلی فیلتر کنید.

مشاهده فقط منابع تصویری
مشاهده فقط منابع تصویری

همچنین ترتیب درخواست منابع را خواهید آموخت. با استفاده از نمایش خط زمانی، ممکن است درک بهتری از اینکه چرا برخی از عناصر در صفحه شما دیرتر از سایرین نشان داده می شوند، به دست آورید.

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

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

مشاهده سرصفحه های درخواست
مشاهده سرصفحه های درخواست

از صفحه نمایش سرصفحه ها برای اطمینان از تنظیم کد پاسخ HTTP مورد انتظار و ارائه هدرهای مناسب استفاده کنید. به عنوان مثال، اگر منبع به ندرت یا هرگز تغییر نمی کند، سرور شما باید سرصفحه Expires را برای آینده ای دور تنظیم کند. این به مرورگر می‌گوید که منبع تا آن تاریخ دیگر نباید درخواست شود. این مقدار اتصالات HTTP مورد نیاز برای صفحه شما را کاهش می دهد و در نتیجه سرعت سایت شما را افزایش می دهد.

خلاصه

برگه منابع چیزهای بیشتری وجود دارد که در مقاله آینده به آنها خواهیم پرداخت.

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

سرعت برای وب سایت شما، کاربران و موتورهای جستجو بسیار مهم است. هنگامی که تعداد و اندازه منابع کاهش یافت و مکالمات HTTP مناسب انجام شد، گام بعدی بررسی و بهینه سازی اسکریپت هایی است که در صفحه شما در حال اجرا هستند. خوشبختانه، تب Scripts که در ادامه به آن پرداخته شد، این کار را انجام می دهد.

منابع اضافی

برای اطلاعات بیشتر در مورد ابزارهای توسعه دهنده، می توانیم موارد زیر را توصیه کنیم:

و البته، با html5rocks.com برای قسمت 2 این مقاله همراه با بسیاری دیگر از محتوای عالی HTML5 و Chrome همراه باشید.