براؤزر انجن

ایک **براؤزر انجن** ( جسے ایک **لے آئوٹ انجن** یا **رینڈرنگ انجن** بھی کہا جاتا ہے) ہر بڑے ویب براؤزر کا بنیادی سافٹ ویئر جزو ہوتا ہے ۔ براؤزر انجن کا کام ایچ ٹی ایم ایل (HTML) سکرپٹ کو سکرین پر اجسام کی شکل میں دکھایاجائے۔

## نام
براؤزر انجن علاحدہ کمپیوٹر پروگرام نہیں ہوتا بلکہ ایک بڑے پروگرام کا ایک اہم حصہ ہوتا ہے ، جیسے ویب براؤزر ، یہ لفظوں کا مجموعہ ہے یعنی براؤزر اور انجن۔ لفظ "انجن" کار کے انجن سے ملتا جلتا ہے۔

"براؤزر انجن" کے علاوہ ، دو دیگر اصطلاحات عام استعمال میں ہیں: "لے آؤٹ انجن" اور "رینڈرنگ انجن"۔    کہنے کی حد تک یہ دونوں الگ الگ کام کرتے ہیں لیکن حقیقت میں یہ ایک دوسرے کے بغیر نامکمل ہیں۔ لے آؤٹ انجن نام سے ظاہر ہے کہ اس کا مقصد ویب پیچ کا ڈھانچہ بنانا ہے۔ جبکہ رینڈرنگ انجن کا کام انہی شکل کو نظر آنے والے اجزاء میں ڈھالنا ہے۔

اس کے علاوہ براؤزر انجن تحفظ کے حوالے سے اہم کام کرتا ہے۔روابط (Hyperlinks)، فارمز اور ڈاکیومنٹ آبجکٹ ماڈل (DOM) کواسکرپٹنگ کے لیے تیار کرنا بھی براوزر انجن کی ہی ذمہ داری ہے۔

جاوا اسکرپٹ (جے ایس) کی تالیف (Compilation) اور چلانا (Execution) ایک الگ کام ہے جس کا براؤزر انجن سے کوئی تعلق نہیں۔ تاہم ایچ ٹی ایم ایل اور سی ایس ایس کے ایسے بہت سے اجزاء ہیں جو جاوا اسکرپٹ میں استعمال ہوتے ہیں۔ براؤزر انجن ان اجزاء کو بھی ایسی شکل میں لے کر آتا ہے جواسکرپٹ کے لیے قابل استعمال ہوں۔

براؤزر انجن کو ویب براؤزرز کے علاوہ دیگر قسم کے پروگراموں میں بھی استعمال کیا جاتا ہے۔ ای میل کلائنٹس کو ان کی ضرورت ہے کہ وہ ایچ ٹی ایم ایل فارمیٹ میں ای میل کو دکھا سکیں۔ الیکٹرون فریم ورک ، جو گوگل کروم براؤزر کے دو انجنوں سے چلتا ہے ، بہت سے ایپلی کیشنز بنانے کے لیے استعمال ہوتا رہا ہے۔

## لے آؤٹ اور رینڈرینگ
عام طور پر ویب پیچ کا ڈھانچہ ایچ ٹی ایم ایل (HTML) اور خاکہ (Design) سی ایس ایس (CSS) میں لکھا جاتا ہے۔یعنی ٹیبل (Table)، ڈیو (Div) اور دیگر اس قسم کے ٹیگ ایچ ٹی ایم ایل میں لکھے جاتے ہیں جبکہ رنگ اور فانٹ وغیرہ سی ایس ایس میں بنائے جاتے ہیں۔ جب بھی براؤزر ایچ ٹی ایم ایل اور سی ایس ایس کے کوڈ کو پڑھتا ہے تو اس کی ذمہ داری ہے کہ لکھے گئے احکامات کے مطابق ہی ویب پیچ کو دکھائے۔ 

جب بھی صارف کسی ویب پیچ کی درخواست (Request) سرور (Server سے کرتا ہے تو سرور مذکورہ پیچ کو کلائنٹ کی طرف بھیجتا ہے۔یہ پیچ کلائنٹ پر موجود سافٹ وئیر (براؤزر) موصول کرتا ہے اور اسے بصری شکل میں سکرین پر دکھاتا ہے۔ انٹرنیٹ کی رفتار اور ویب پیچ پر موجود مواد کے حساب سے ضروری نہیں کہ تمام ویب پیچ ایک ساتھ کلائنٹ کو موصول ہے۔ بہت سے رینڈرنگ انجن تھوڑا سا ڈیٹا موصول کرکے بھی اسے رینڈر کرنا شروع کردیتے ہیں۔

## مشہور انجن

چونکہ ویب ایک آزاد مصدر معیار ہے اسی لیے انجنوں کا استعمال بھی مختلف انداز میں ہوتا ہے۔

جیکو (Gecko) انجن کو موزیلا (Mozilla) میں استعمال کیا جاتا رہا جبکہ تھنڈر برڈ (Thunderbird) ای میل کلائنٹ اور سی منکی (SeaMonkey) بھی استعمال کیے گئے ۔  اسی طرح گوانا (Goanna) کو جیکو کے ہمراہ پیل مون (Pale Moon) میں استعمال کیا گیا۔ 

ایپل نے ویب کٹ (Webkit) تیار کیا تھا جسے کے ایچ ٹی ایم ایل (KHTML) اور کے ڈی ای (KDE) کے ساتھ استعمال کیا جاتا رہا۔ 

گوگل نے پہلے اپنے کروم براؤزر کے لیے ویب کٹ کا استعمال کیا تھا لیکن بعد میں بلنک (Blink) پر منتقل ہو گئے۔  تمام کرومیم پر مبنی براؤزر بلنک کا استعمال کرتے ہیں ، جیسا کہ سی ای ایف ، الیکٹران یا کسی دوسرے فریم ورک کے ساتھ بنائی گئی ایپلیکیشنز جو کرومیم میں شامل ہوتی ہیں۔

اگرچہ ایپل نے دیگر کمپنیوں کے براؤزرز کو بھی آئی او ایس (iOS) آلات پر سفاری کے متبادل کے طور پر اجازت دی ہے ، لیکن اس کے ایپ اسٹور کے ذریعے تقسیم کردہ تمام براؤزرز کو لازمی طور پر ویب کٹ کو انجن کے طور پر استعمال کریں۔ مثال کے طور پر ، iOS کے لیے اوپیرا منی ویب کٹ کا استعمال کرتی ہے ، جبکہ دیگر تمام اوپیرا بلک کا استعمال کرتی ہیں۔ (اوپیرا پہلے اپنا ذاتی ملکیتی پریسٹو انجن استعمال کرتا تھا۔ )

مائیکروسافٹ کا اپنا انجن EdgeHTML کے نام سے ہے۔ اسے پہلے ٹرائڈنٹ (Trident) انجن استعمال کیا جاتا تھا۔ لیکن اب ایج ایچ ٹی ایم ایل کو تمام یونیورسل ونڈوز پلیٹ فارم ایپ کے لیے استعمال کیا جاتا ہے ، کیونکہ ایج براؤزر کو بلینک انجن کے ساتھ دوبارہ بنایا گیا ہے۔ 

### ٹائم لائن

# header
ImageSize = width:700 height:200
PlotArea = left:50 right:5 bottom:20 top:5
AlignBars = justify
DateFormat = dd/mm/yyyy
Period = from:01/01/1997 till:01/09/2019
TimeAxis = orientation:horizontal format:yyyy

Colors =
 id:microsoft   value:rgb(0.3, 0.5, 1)
 id:gecko    value:rgb(1, 0, 0)
 id:goanna   value:rgb(1, 0.2, 0.2)
 id:khtml    value:rgb(0.3,0.3,0.3)
 id:webkit   value:rgb(0.3, 0.4, 0.4)
 id:blink    value:rgb(0.3, 0.5, 0.5)
 id:presto   value:rgb(0.6, 0.2, 0.0)
 id:mgray    value:rgb(0.5, 0.5, 0.5)
 id:lgray    value:rgb(0.75, 0.75, 0.75)

ScaleMajor = gridcolor:mgray unit:year increment:1 start:01/01/1997
ScaleMinor = unit:month increment:3 start:01/01/1997
BackgroundColors = bars:lgray

BarData =
 bar:Trident     text:Trident
 bar:EdgeHTML    text:Edge
 bar:Gecko      text:Gecko
 bar:Goanna     text:Goanna
 bar:KHTML      text:KHTML
 bar:WebKit     text:WebKit
 bar:Blink      text:Blink
 bar:Presto     text:Presto

PlotData=
 align:center textcolor:black fontsize:8 mark:(line,black) width:15 shift:(0,-4)

 bar:Trident
 from: 01/10/1997 till: 15/07/2015  color:microsoft mark:(line,white)

 bar:EdgeHTML
 from: 12/11/2014 till: 01/09/2019  color:microsoft mark:(line,white)

 bar:Gecko
 from: 01/05/1997 till: 01/09/2019  color:gecko mark:(line,white)

 bar:Goanna
 from: 26/01/2016 till: 01/09/2019  color:goanna mark:(line,white) 

 bar:KHTML
 from: 04/11/1998 till: 06/06/2014  color:khtml mark:(line,white)

 bar:WebKit
 from: 25/06/2001 till: 01/09/2019  color:webkit mark:(line,white)

 bar:Blink
 from: 03/04/2013 till: 01/09/2019  color:blink mark:(line,white) 

 bar:Presto
 from: 28/01/2003 till: 16/03/2015  color:presto mark:(line,white)



زمرہ:ویب براؤزر
زمرہ:ویکی ڈیٹا سے مطابقت رکھنے والی مختصر تفصیل
زمرہ:انٹرنیٹ