گوناگون : موتور های مرورگر

همه‌ی مروگرهایی که ما با آن‌ها کار می‌کنیم، از موتورهایی برای پردازش جزئیات برگه و نمایش آن‌ها به ما استفاده می‌کنند. این موتورها را Layout engine یا Browser engine می‌نامند. موتور مرورگر، نرم‌افزاری است که محتویات صفحه‌ی اینترنتی را در خود پردازش می‌کند و نتیجه‌ی آن را به شکل یک صفحه‌ی وب به کاربر مروگر تحویل می‌دهد. محتویات داخل صفحه می‌تواند کدهای HTML باشد، می‌تواند طرح‌های CSS باشد و یا می‌تواند تصاویر و عکس‌هایی باشند که به‌عنوان شیء در صفحه‌ی درخواست شده قرار گرفته‌اند. هنگامی که کاربر مروگر به برنامه دستور اجرای یک‌سایت را می‌دهد، مرورگر به صفحه‌ی خواسته‌شده می‌رود و اجزای صفحه را داخل layout engine خود پردازش می‌کند و نتیجه را روی مانیتور چاپ می‌کند. تقریبا همه‌ی مرورگرهای پیشرفته‌ی امروزی از موتور مرورگر برای نمایش صفحه استفاده می‌کنند.

بنیاد موزیلا (سازنده‌ی مرورگر فایرفاکس) از موتوری به نام Gecko استفاده می‌کند که بازمتن است و با زبان سی‌پلاس‌پلاس نوشته‌شده‌است. Gecko ابتدا در آزمایشگاه شرکت Netscape طراحی‌شد. اصل این موتور برای مرورگر Netscape Navigator نوشته‌شده‌بود که پس از شروع‌به‌کار پروژه‌ی موزیلا در 1998، نسخه‌ی بازمتن (Open Source) این موتور، منتشر شد. در ابتدا با استانداردهای کنسرسیوم جهانی وب (W3) مشکل داشت، سرعت آن از مرورگر IE بیشتر بود، اما صفحات DHTML را به‌خوبی نمایش نمی‌داد. این‌بود که توسعه‌دهندگان موزیلا تصمیم گرفتند روی این موتور کار کنند تا به یکی از بهترین مروگرهای جهان تبدیل شود. هم‌اکنون این موتور به عنوان یکی از بهترین موتورهای مرورگر جهان، روی مرورگرهایی چون Firefox، Flock، Camino، SeaMonkey درحال استفاده‌است. Gecko موتوری‌است که با آخرین فناوری‌های تولید وب‌سایت هماهنگ و سازگار است و از HTML 5 ، CSS 3، XML 1.0 و آخرین نسخه DOM پشتیبانی می‌کند. نام اصلی جکو، NGLayout یا New Generation Layout Engine به معنای نسل جدید موتور طرح (مرورگر) است.

مروگرهای Google Chrome و Apple Safari از موتور Webkit استفاده می‌کنند؛ موتوری که بازمتن است و تحت لیسانس  GNU LGPL منتشر می‌شود. وب‌کیت درآغاز توسط شرکت اپل پرده‌برداری شد و با هدف سرعت بالا در پردازش و نمایش کدهای صفحه و جاوااسکریپت‌ها ساخته‌شد. وب‌کیت که بسیار جوان‌تر از سایر هم‌نوعان خود بود، به‌سرعت پیش رفت و به جایی رسید که هم‌اکنون شرکت‌های بزرگی چون Google و Nokia از آن پشتیبانی می‌کنند. این موتور، یک کپی آزاد از موتور KHTML بود که توسط KDE ساخته شده‌بود. KHTML که در مرورگر Konqueror استفاده‌شده، کاملا متن‌باز بود و توسعه‌دهندگان Apple از این خاصیت KHTML استفاده‌کرده و آن‌را توسعه دادند. از جمله توسعه‌های داده شده این‌بود که حجم کدهای Webkit بسیار کم‌تر از کدهای KHTML شد و موتور جاوااسکریپت Webkit سریع‌تر و دقیق‌تر از قبل شد. شرکت نوکیا هم برای سیستم عامل گوشی‌های خود (symbian) از Webkit استفاده کرد و هم‌اکنون مرورگرهای گوشی‌های نوکیا به این موتور مجهز اند. شرکت گوگل که کار روی سیستم عامل Android را از سال 2005 آغاز کرده‌بود، برای مرورگر این سیستم عامل، webkit را برگزید. گوگل کروم هم از این موتور طرح برای نمایش وب‌سایت‌ها استفاده کرد. KTHML تحت فریم‌ورک KPart با زبان سی‌پلاس‌پلاس نوشته شده اما گوگل پس از توسعه‌ی webkit برای Chrome، هم از سی‌پلاس‌پلاس و هم از Assembly استفاده کرده‌است.

اما می‌رسیم به مرورگر Opera. این مرورگر از موتوری به‌نام Presto استفاده می‌کند که Cross-Platform است اما نرم‌افزاری غیرآزاد است. بیشتر آن با سی‌پلاس‌پلاس نوشته‌شده و درسال 2003 ارائه شد. شرکت Opera سازنده‌ی این موتور ادعا می‌کند که سریع‌ترین موتور را ساخته، آما آزمایش‌ها نشان می‌دهد مرورگرهای برپایه Webkit سریع‌ترین مرورگرها هستند (×). Presto هیچ‌گاه از نسخه‌های تحت توسعه‌ی استانداردهای وب پشتیبانی نکرده‌است. برای مثال CSS 3 که تحت توسعه به سر می‌برد؛ در مرورگر Opera پشتیبانی نمی‌شود. همچنین سورس‌های DLL آن به صورت عمومی منتشر نشده (طبق قوانین نرم‌افزارهای غیر آزاد) و توسعه‌ی عمومی ندارد.

شرکت مایکروسافت نیز برای مرورگر پیش‌فرض ویندوزهایش (IE) از موتور Trident استفاده می‌کند که غیرآزاد است و حتی Cross-Platform هم نیست. از پروژه‌های تحت توسعه پشتیبانی نمی‌کند و روی مرورگرهایی چون Internet Explorer و Avant Browser نصب است. مزیت این موتور نسبت به Presto انتشار DLL های Triedent به صورت عمومی است.

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد