سؤال

جاوة .صافي نوعان من اللغات التي تستهدف إزالة منصة الاعتماد.ويتحقق هذا عن طريق إضافة الجهاز الظاهري/الإطار بين قانون و نظام التشغيل.

إذن ما هي النقطة في استخدامه على جانب الملقم ، حيث أن جميع المواقع التي يمكن الوصول إليها عبر المتصفح ، وهذا هو منصة مستقلة ؟ هل هناك أي سبب خاص من أجل استخدامها ؟

هل كانت مفيدة؟

المحلول

يهدف .NET إلى منصة Windows فقط. Java هو الوحيد من الاثنين المقصود أن يكون منصة مستقلة.

هذه اللغات لها وجود قوي على نهاية الخادم لأسباب عديدة:

  1. الكثير من المكتبات التي تتعامل مع المهارات الفرعية للمشكلة
  2. بنيت كلا الأطر بالأمن في الاعتبار
  3. إنها لغات مدارة، من الصعب سحب الهجمات النموذجية على البرامج.
  4. إنهم يعتبرون تقنيات ناضجة، فقد تم طرحهم قليلا من سوء المعاملة وقد وقفوا الاختبار.
  5. لديهم دعم الصناعة.
  6. كلاهما موجه نحو الكائن
    1. هذا يعني أن هناك القدرة على تطوير موقع ويب من خلال استخدام مكونات قابلة لإعادة الاستخدام أو مكونات الطرف الثالث.
  7. السماح لكلتا اللغة "برميل الرمل" للمكونات غير المدارة (Java: JNI .NET: Boxing) [يسمح بإدراج المكونات القديمة

نصائح أخرى

تم اختيارهم بالفعل لأسباب عكسية تماما تقريبا:

  • إن الاستقلال منصة Java يعني أنك لا ترتبط بمنصة واحدة، وبالتالي فهي أكثر مرونة في اختيار النظام الأساسي الأكثر فعالية من حيث التكلفة، أو الأكثر موثوقية. ويمكنك الاحتفاظ بتطبيقاتك تعمل حتى عندما تضطر إلى تغيير منصات الخادم لأن القديم غير مدعوم بعد الآن.
  • يتم اختيار .NET لأنه إذا كنت ستقوم بربط نفسك لنظام التشغيل، فإن Microsoft أكبر لاعب، وبالتالي الخيار الأقل محفوفة بالمخاطر - أو ببساطة لأن الشركات سقطت في فخ "متجر جميع Microsoft" من خلال أدوية بوابة مثل التبادل. وبمجرد تناولك،. NET هو ما تريد Microsoft منك استخدامه ويدعمه ويدمجه بكل أدواته الحالية.

كل من Java و .NET لديه فوائد خاصة بهم من جانب الخادم.

على سبيل المثال، مع .NET أنت حر في اختيار أفضل لغة من أجل جزء التطبيق الذي تعمل عليه، وجميع لغات .NET هذه تعمل معا.

لذلك، قد ترغب في استخدام F # لوظائف تعدين البيانات، C # للعمل مع قاعدة البيانات، و C ++ غير المدارة C ++ (من خلال طبقة C ++ تدار رقيقة) لاتصالات الشبكة السريعة، أو مكالمات النظام، وهناك مجموعة من اللغات الأخرى. .NET أقل منصة مستقلة حاليا، ولكن اللغة مستقلة.

يمكن استخدام Java على عدة أشكال تشغيل مختلفة، وهي مفيدة إذا كنت تبيع حل، لأنك لا تهتم بما يستخدمه العميل.

الآن أصبحت JVM أقل لغة معتمدة بلغة، مع عباءة وسكالا تنفد منها، لذلك أصبحت Java أكثر إثارة للاهتمام الآن، لتصميم التطبيقات.

يحفظوا النظام الأساسي، لذلك يمكن تشغيلها على أنواع مختلفة من أنظمة تشغيل الخادم.

وتم تصميمها لتكون أنظمة تطوير تطبيقات للأغراض العامة، لذلك يهدف إلى تشغيل أي شيء مع معالج.

إذا كنت تسأل لأنك لا تفهم السبب في أن المرء يقبل النفقات العامة لطبقة التجريد، ضع في اعتبارك أن كل من Java و .NET JIT وصولا إلى الرمز الأصلي.

لذلك، ما هي النقطة في استخدامه على جانب الخادم، حيث يمكن الوصول إلى جميع مواقع الويب عبر المتصفح، وهذا هو منصة مستقلة؟

حسنا، تطبيقات الويب ليست مجرد تقديم HTML للمتعة، فهي القيام بالأشياء على جانب الخادم الذي قد ينطوي على التحدث إلى قاعدة البيانات (قواعد البيانات)، وإرسال الرسائل إلى أمي، إلخ.

هل هناك أي سبب خاص لاستخدامها؟

هذه إجابة جزئية لكنني أردت على الأقل لتغطية حالة Java هنا. يمكن أن أبدأ عن طريق الجدال بأن جافا عبارة عن جافا عبارة عن آمنة وقوية وجمعية وجهازي وجوه ذات أداء عالي الجودة ومتعددة الخيوط ومتعددة الترابط والهندسة المعمارية، وهي لغة برمجة متوافقة مع الكلمات المتوافقة مع الكلمة ... ولكن هذا لن حقا الإجابة حقا سؤالك. في الواقع، فإن الصفقة الكبيرة مع Java على جانب الخادم هي IMO التي تستفيد منها من واجهة برمجة تطبيقات المؤسسات الموحدة (AKA J2EE) التي تسمح لك بعمل "أشياء المؤسسات" (JDBC، JTA، JMS، إلخ) بطريقة قياسية مع الأجهزة، تعمل نظام واستقلال بائع البرمجيات (وهو زائد كبير لمفاوضات العقد). بمعنى آخر، Java مثالية للبيئات غير المتجانسة التي تكون دائما هي الحال دائما مع المنظمات الكبيرة ولا تقلبك.

في حين أن منصة الاستقلال كبيرة على السعي أود أن أقول جافا و .صافي تستخدم عادة كما أن هناك عدد كبير من الأطر المتاحة التي تجعل من الأسهل كثيرا على تطوير مستوى المؤسسة التطبيقات.هذا صحيح لا سيما مع جافا ، حيث لديك لا يصدق اختيار تقنيات عالية الجودة في معظمها مرنة بما فيه الكفاية لتلبية احتياجات معظم المشاريع ، مما يتيح لك التركيز على التطبيق الخاص بك وظيفة.

أيضا ، من دون أي نية لبدء شعلة الحرب ، جافا .صافي لديك أفضل أداة تطوير الدعم و أسهل/أسرع إلى تطوير مع متوسط مبرمج.

في أيام الويب المبكرة، كان في الغالب بيرل والأرواح الشجاعة العرضية التي لا تحب بيرل أو أراد المزيد من الأداء المستخدمة C ++. ثم طورت Sun JDBC والخدمات ل Java، ثم قطع J2EE الأخرى، وأصبحت Java بديلا أعلى من الأداء ل PERL وأسهل من C ++. مع J2EE جاءت الكثير من منتجات خادم التطبيقات من الشركات الكبيرة، والآن لديك مجتمع خادم جافا ويب كبير.

ثم جاءت Microsoft، بعد فقدان حرب J ++ / Java مع Sun، وخلقت بنية تحتية تطبيق ويب مماثلة مع .NET. مع .NET لديك خيارات أقل، مع كل مزايا وعيوب التي تجلب.

لذلك، أعتقد أن الإجابة هي مزيج من الأداء اللائق والسلامة وميزات المؤسسات، ودعم الشركات الكبرى. C ++ صعب للغاية وخطير بالنسبة لمعظم الناس. Perl، PHP، Python، و Ruby لها مشجعيهم، ولكن ليس دعم الشركات. لا أعتقد أن حقيقة أن Java / .Net في الآلات الافتراضية مهمة لجانب الخادم. استخدمت Java VM في الأصل للعميل. كان على شمس العمل بجد لجعل سرعة VM سريعة. أعتقد أن Microsoft استخدمت VM للتنافس مع Sun، وتسهيل دعم لغات متعددة. سيكون من المثير للاهتمام معرفة ما إذا كانت لغة Google Google تقلع، مما قد يتجاوز Java و C # للسلامة والقوة ولكن لا VM.

لا يتلقى المستعرض إمكانية الوصول إلى موارد الخادم (قاعدة البيانات والملفات وما إلى ذلك) أن هذه الأطر لديها إمكانية الوصول إليها. لم تتمكن من الحصول على تطبيق هو JavaScript فقط (ويفعل أشياء ذات مغزى)

أنا أفهم سؤالك بهذه الطريقة: لماذا تختار Java أو .NET إذا كان هناك طرق مريحة أخرى لإعداد خادم لأن العملاء يستخدمون HTTP للوصول إلى الخادم؟

أنت على حق أن لا يهم نظام تشغيل الخادم أو الإطار عموما للعميل.

ومع ذلك، يمكن أن يحتوي جانب العميل أيضا على تطبيقات أو رمز يحتاج إلى التواصل مع نظيره على الخادم. ثم يصبح JSP أو .NET أكثر إثارة للاهتمام لأنك لا تضطر إلى إدارة نظام التشغيل العميل المختلفة. ثم أصبح موقع الويب قابل للتوسيع بسهولة.

إذا كنت ترغب في دمج بعض حلول الرسوم البيانية والرسوم البيانية لطيفة (Telerik، Dundas، ... أو أيا كان من المفترض أن تكون إعلانية -) من الأحزاب الثالثة، سيتعين عليك أيضا تحديد بنية تحتية متوافقة مع تشغيلها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top