DEV Community

Moaz ebrahem
Moaz ebrahem

Posted on

الجافاسكربت بتعتمد علي ال compiler ولا ال interpreter ؟؟

البروسيسور عشان ينفذ الاوامر اللي احنا كاتبنها فهو مش بيفهم غير لغه واحده وهي الماشين كود وعشان كده احنا بنحتاج طرق مختلفة عشان نحول الكود للغه اللي بيفهمها البروسيسور وده بيتم بواحد من دول

1- compiler

الكومبايلر هنا بياخد كود البرنامج كله وبيحوله لماشين كود وبعد كده بيطلعك ملف بتدوس عليه واوامر الكود بتتنفذ معاك والبرنامج بيشتغل

الميزه هنا ان الكود بيتحول اول مره بس لماشين كود وده معناه انك بعد كده لما تحب تفتح البرنامج هيشتغل معاك علطول فبيكون اسرع

العيب بقا ان الملف اللي بيطلعلك عشان تدوس عليه وتفتح البرنامج بيكون طالع ل نظام تشغيل واحد بس , يعني لو عندك جهازين واحد نظام التشغيل بتاعه ويندوز والتاني لينكس فالبرنامج مش هيشتغل عليهم هما الاتنين , لازم تطلع نسخه مناسبه لكل نظام منهم

كمان لو حبيت تعمل تعديل بسيط في الكود فانت هتكون متضطر انك تعمل كومبايل تاني

2- interpreter

هنا بقا الكود بتاعك بيتحول سطر بسطر عشان يتنفذ عالبروسيسور

والميزه انه كده هيشتغل علي اي نظام تشغيل عادي لانه بيتحول سطر ورا التاني في الوقت اللي البرنامج بيشتغل فيه

بس العيب هنا انه اكيد هياخد وقت اكبر في التشغيل بما انه هيتنفذ سطر بسطر

طب الجافاسكربت بقا بتشتغل بايه منهم؟
الجافا سكربت بتشتغل بال interpreter بس لما الاكواد بدأت تكبر وابتدينا نشوف frameworks مبنيه عالجافاسكربت بقي فيه بطئ ملحوظ عشان كده ظهرت طريقه تالته في ال engines الجديده وهي ال just in time (JIT) وده بقي ميكس ما بين ال compiler وال interpreter عشان يقدم سرعه ومرونه اكتر

Top comments (0)