ما الفرق بين JavaScript و Java و Python ؟
وايهما افضل فى مجال web developer؟
انا اسف لو السوال بسيط جدا
لكن انا فى اول الطريق فى مجال web developer
السلام عليكم، اخي فادي
عموما من الصعب مقارنة لغات برمجة و تحديد ما الافضل بينها ، فكل لغة بها مزايا و عيوب ( الكمال لله وحده )
اما بالنسبة لسؤال فاجيبتك بالاتي :
1. الجافا اسكربت : تعتبر لغة القلب بالنسبة للويب ، فهي لغة اساسية يجب عليك تعلمها في عالم الويب، فستحتاج لاستخدامها مع الHTML, CSS لتكون صفحة تتفاعل مع المستخدم ، و اقصد بكلمة "تتفاعل" هو انه مثلا اذا ضغط المستخدم زر معين تظهر له رسالة تحذير مثلا (كمثال بسيط)
كانت الجافا اسكربت اساسا تستخدم في client side - و هو الذي يتم تنفيذه عند المستخدم (عن طريق المتصفح) - للتمكن من عمل الevent handling لكن مع مرور الوقت تطورت اللغة و اصبحت تستخدم استخدامات كثيرة جدا،
اما في الserver side فيمكن ايضا استخدام اللغة كلغة خادم (باستخدام اطار االعمل node.js )
خلاصة القول هي لغة اساسية ، على الاقل ستستخدما في جزء المستخدم .
2. الجافا : ليست لها علاقة بالجافا اسكربت ، اساسا صممت لتعمل مع بيئة سطح المكتب ، لكن مع الوقت ظهرت مكتبات و ادوات لتجعها تصلح لتعمل كلغة سيرفر
3. البايثون : ايضا تعمل على سطح المكتب و هناك مكتبات كثيرة لتعمل كلغة سيرفر .
فرق البايثون من الجافا
اغلب الاختلافات في الsyntax ، و لكن اغلب المفاهيم نفسها.
لغة بايثون في الغالب اسهل في التعلم من الجافا للمبتدئين
كلا اللغتين تتمتع بمزايا عديدة و خصائص كثيرة ( قد لا تحتاج اليها اصلا ) ، و كلاهما لديها مكتبات للويب
ايهمما افضل
كما قلت سابقا ، الامر يختلف من شخص لاخر، و لغات البرمجة كثر ، و لكن هذه بعض الاشياء التي تفيدك في الاختيار:
اي من اللغات المذكورة تجيد ؟
ما الاسهل للتعلم ان كنت لا تجيدها ؟
ما التي يتقنها بقية افراد فريقك ( ان كنت في فريق ) ؟
و الاهم ، اي منها تؤدي الوظيفة التي تريدها ؟
اي منها لديها مكتبات تساعد في اداء الوظيفة المطلوبة ؟
ما ترخيص كل منها ؟
اي منها تفضل - كرأي شخصي - ؟
هناك العديد من العوامل التي تؤثر في اختيارك للغة ، و لكن في النهاية لغات البرمجة ادوات لمساعدتك في الوصول للهدف المطلوب ، لذا اختر التي ترتاح عند العمل بها و تؤدي غرضك ، و لا تشغل نفسك بالباقي.
انا مثلا كرأي شخصي افضل البايثون على الجافا :) و لكن انا متأكد انا هنالك المئات ممن يخالفونني الرأي .
الجافا اسكربت : تعتبر لغة القلب بالنسبة للويب ، فهي لغة اساسية يجب عليك تعلمها في عالم الويب
اقصد هنا انها لغة اساسية بالنسبة للclient side و ليس الserver side
فابسط استعمالات الجافا اسكربت في جزء المستخدم مثل طلبات ajax, websocket او تعديل محتوى الصفحة باضافة او حذف عناصر ، و لا اظن ان صفحة او تطبيق ويب اليوم لا يستخدم واحدة على الاقل من هذه الاستخدامات.
اما بالنسبة لجزء الخادم فتتوفر لديك الكثير من الخيارات مثل Python, ASP.net,php,java,ruby,node.js ... الخ.و لا يشترط اختيار الجافا اسكربت .
وعليكم السلام ورحمه الله وبركاته
رد راقي عزيزي @aseer alsamt واعتذر منك لدي مداخله حول الجافاسكربت
لابد فصل "client side" عن "server side" حيث ان الاول سيعمل مع كافه اللغات كحال css ، html ولا تعطيه الافضليه ويمكن الاستغناء عنه في مشاريع كثيره اما nodejs التي هي "server side" في بعض المشاريع لا تنفع ولذلك لا يجب علينا وضع لغه تحت ايطار من هو الافضل حيث اننا نحن من يخسر
ربما الجافا سكربت و الجافا ممكن استوعاب syntax وهنا اختلاف كبير ما بينهم وبين البايثون
فرق في عمليه التطبيق والكتابه ولكن هناك مفارقات استحبابيه عند الاستخدام
Java:
http://search.maven.org/#stats
Node
Python
الروابط اعلاه تبين عدد المكتبات المتوفره في مجتمع اللغه وتساهم في عدم بناء العجله مره اخرى
وانصحك يا صديقي بالبدايه قرآءه الغات التي ذكرتها وبعد ذلك اذكر لنا ما ملت عليه لتوفير النصيحه
الجافا سكريبت لغة تترجم او تشتغل عند المستخدم اي في متصفحك وليس عند الموقع او الخادم
الجافا والبايثون لغات مجالهما واسع من الجافا سكريبت ويمكن برمجة تطبيقات ومواقع فقط بهما
ايضا الجافا والبايثون يشتغلان في شق المستخدم وفي شق الخادم
ايضا ان يمكن ان تبرمج بيها Client/Serveur
بعكس الجافا سكريبت التي هي Client
طبعا توجد اضافات ومكتبات مبينة على الجافا سكريبت اشهرها JQuery
اللغات الثلاثة مطلوبة كثيرة في مختلف مجالات البرمجة وتشتغلان على اكثر من منصة
الجافا سكريبت والبايثون لا يعتمدون بشكل اساسي على تعريف نوع المتغير اي يمكن تخزين قيم متنوعة في متغير واحد فمرة تخزن فيه حروف مرة اعداد
اي مثلا في الجافا سكريبت تكتب
a="hello wolrd"
بدون تعريف نوع a
مثلا في الجافا تحتاج ان تبين نوع a فتكتبت مثلا
String a="hello wlord";
في الجافا سكريبت يمكن تخزين عدد في a
مثل a=5
بينما هذا غير ممكن * يمكن بواسطة دوال واشياء اخرى في بعض الاحيان* في الجافا
في الاخير مبرمجي الجافا يكونون من احسن المبرمجين لانهم يبنون برامج بشكل جيد وبتنظيم وتفكير
بينما مبرمجي البايثون او الجافا سكريبت قد يجدوا صعوبة في البرمجة بالجافا او اللغات الاخرى لان التفكير مختلف نوعا ما
هنا اشياء اخرى وفوارق بطبيعة الحال
السلام عليكم اخي ،
تقبل منى مداخلتي البسيطة
الجافا سكريبت لغة تترجم او تشتغل عند المستخدم اي في متصفحك وليس عند الموقع او الخادم
بالرغم من ان الجافا اسكربت اساسا صمممت لتعمل على جزء المستخدم ، الا انه يمكن ان تستخدم في جزء الخادم ، مثلا باستخدام الذي اصبح مشهور جدا و قد ظهرت اطر عمل اخرى مبنية عليه مثل Express.js, restify.js و غيرها .
في الاخير مبرمجي الجافا يكونون من احسن المبرمجين لانهم يبنون برامج بشكل جيد وبتنظيم وتفكير
هذا رايك ، و لايشترط ان ينطبق على كل المبرمجين .
اذا كان المبرمج لا يهتم بالتنظيم و التفكير قبل و اثناء كتابة البرنامج ، فلا تستطيع لغة ان تجبرك على ذلك ، هذه اشياء شخصية تختلف من مبرمج لاخر .
الامر اشبه من يقول لك اذا اردت ان تكتب برنامج سريع يجب عليك برمجته بلغة منخفضة المستوى ! اقول حينها انه يمكن لمن يتقن الجافا ان يكتب برنامج اسرع من برنامج مكتوب بالC ( كتب بواسطة من لا يتقن الC ) لان الامر يعتمد على المفاهيم و طريقة كتابتك للمصدر .
تقبل تحياتي .
التعليقات