JavaFX خارج الآن:هل التطبيقات الصغيرة وJava Desktop ميتة/تحتضر رسميًا؟[مغلق]

StackOverflow https://stackoverflow.com/questions/377593

  •  22-08-2019
  •  | 
  •  

سؤال

جافا اف اكس لقد تم إصداره الآن، وهناك وعود بأن Swing سوف يتحسن مع JavaFX.لقد ولت أيام واجهة المستخدم الافتراضية القبيحة، وبعد طول انتظار أصبح بإمكاننا إنشاء تطبيقات جذابة يمكن مقارنتها بواجهة المستخدم الافتراضية فلاش، الهواء، وSilverlight من حيث الجودة.

  1. فهل هذا يعني ذلك تطبيقات جافا هل ماتت تلك الأجيال من التسعينات ولا تستحق العودة إليها؟

  2. نفس الشيء مع جافا سطح المكتب:ما الذي سيكون مقنعًا بالنسبة لنا نحن مطوري Java لاستخدامه بدلاً من JavaFX؟

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

المحلول

في رأيي ، ماتت جافا للتطبيقات لسنوات. لقد كتبت بعضًا في أواخر التسعينيات - لعبة Tetris خلال فترة تدريب لإظهارها على صندوق Arm Acorn أعلى 40 ميجا هرتز على سبيل المثال. بالطبع أراهن أن هناك بعض مواقع الألعاب غير الرسمية التي لا تزال تحتوي على أطنان منها ، وبالتالي ستظل مدعومة ، لكن التنمية النشطة ستنخفض.

Java Web Start هي تقنية مفيدة في رأيي. سيظل ذلك يعمل مع Javafx ، إنها مجرد مكتبة أخرى لهذا النظام.

ستمنح Javafx فرص Java تتجاوز الأدوات التقنية (مثل SQL Developer) ، وتطبيقات الأعمال الداخلية وتطبيقات الخادم (حيث تتفوق). أعتقد أنها واحدة من تلك المكتبات التي تستحق التعلم لأي مطور Java ، إذا كان بإمكانهم الحصول على الوقت. ليس هناك جادل بأن مكتبات واجهة المستخدم لجافا كانت تفتقر إلى حد كبير ، أو معقدة للغاية ، على مدار عام.

ومع ذلك ، هناك الكثير من المنافسة هناك ، وهي جديدة جدًا (مما يعني أن دعم أداة التطوير خام للغاية ، مقارنةً بالفلاش و Silverlight). كما لا يحب الناس تنزيل بيئات وقت التشغيل الضخمة ، على الرغم من أن النطاق العريض يجعله أقل إيلامًا من 5 سنوات قبل الكثيرين!

نصائح أخرى

أعتقد أن هذه المناقشة مضللة إلى حد ما. أنا لا معجب بتقنية التطبيقليت أيضًا (وقد شعرت بالارتباك من قبل Javafx). لكن النقطة التي يفقدها هذا الموضوع هو ذلك ، ما لم أكن مخطئًا ، تم تصميم Javafx على رأس تقنية Applet. أنها ليست متنافسة أو حصرية بشكل متبادل. انظر هذه المقالات هنا و هنا.

قد يكون الارتباك مقصودًا إلى حد ما من جانب الشمس لأنهم لا يريدون ذكر Javafx و Applets في نفس الجملة ، لأن التطبيقات تواجه الكثير من المشكلات.

تطبيقات جافا لم تمت.

تاريخهم سيء لعدة أسباب:

  • كانت معظم الأنظمة الأساسية تحتوي على مكونات إضافية سيئة للمتصفح طوال التسعينيات، ثم انتقلت إلى العقد الأول من القرن الحادي والعشرين، مما أعطى التطبيقات الصغيرة (وجافا، إلى حد ما) سمعةً بسبب البطء والتنزيلات الكبيرة.
  • قامت منصة التطبيق الصغير الفعلية بإنشاء جهاز افتراضي جديد لكل تطبيق صغير، مما أدى إلى مزيد من التباطؤ، خاصة عند بدء تشغيل التطبيق الصغير.
  • لم يكن العديد من مطوري التطبيقات الصغيرة حريصين على تقليل حجم الجرار التي قاموا بدفعها للأسفل، بل وخلقوا انطباعًا بالتباطؤ

التحسينات التي تأتي مع JavaFX تجلب أيضًا تحسينات إلى التطبيق الصغير (هما نفس الشيء).يمكن مشاركة الأجهزة الافتراضية وأصبح التخزين المؤقت أفضل من ذي قبل.بالإضافة إلى ذلك، يمكن أن يساعد متوسط ​​النطاق الترددي الأعلى للمستخدم حتى في بدء عمليات نشر التطبيقات الصغيرة المصممة بشكل سيء بسرعة.إذا نظرت إلى محوري قاعدة التثبيت وقوة النظام الأساسي، فإن التطبيق الصغير لا يزال مرتفعًا جدًا، إن لم يكن الأعلى، في رأيي.

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

مات جافا Applets ليس بسبب مفهوم التطبيق ، ولكن لأن المكون الإضافي JRE لمتصفحات الويب كان abyssmal.

في الواقع ، أثبت Flash أن هناك دورًا للمحتوى التفاعلي في الخط.

Javafx هي طريقة جديدة لبرمجة تطبيقات الإنترنت الغنية - تعادل بشكل أساسي تطبيقات Java أو محتوى الفلاش. يتضمن وقت تشغيل JRE الجديد (1.6.0_10 ، ويعرف أيضًا باسم "Update 10") الكثير من الميزات التي تجعل تشغيل Java في سياق المتصفح أكثر قبولا.

Javafx! = جافا سطح المكتب. يختلف الاثنان تمامًا ، ولكل منهما مكان في صندوق أدوات المطور.

في الواقع ، تعتبر تطبيقات Java Applets تقنية لطيفة يمكن أن تكون في كل مكان مثل Flash ، إذا لم تفقد Sun فقط حرب العلاقات العامة والتكنولوجية مع Microsoft.

كانت Microsoft تدفع عناصر التحكم DirectX في وقت واحد ، وتستفيد من حصة السوق IE ضد التطبيقات. أتذكر القيام ببعض المعايير ثم: جافا Applet البالغة 3 ميغابايت (التي كانت كبيرة) ، محملة من القرص المحلي (لأخذ أوقات تحميل الشبكة من المعادلة) ، استغرق حوالي 5 ثوان للبدء في الأوبرا. استغرق نفس التطبيق بطريقة ما حوالي دقيقتين للبدء في IE.

لذلك ، لم تكن تلك التكنولوجيا امتصت. لم يكن الأمر أن التطبيقات كانت بطيئة لأنها كانت كبيرة جدًا ؛ كانت بطيئة لأن المتصفح المهيمن في ذلك الوقت جعلها بطيئة. قون

أعتقد أن Javafx هي محاولة Sun لإحياء الكثير من الأفكار من التطبيقات ، وفي وقت مختلف وفي سوق مختلف.

على الرغم من أن هذا قد يكون صحيحًا في النهاية ، إلا أن Javafx تفتقر إلى عناصر التحكم ، ولا توجد دعم للأجهزة المحمولة وغيرها من lacunae مما يجعلها "لم يتم ذلك بعد"

  1. هل هذا يعني أن تطبيقات Java التي تنحدر من التسعينيات قد ماتت ولا تستحق العودة إليها؟

Javafx والتغييرات المرتبطة بها هي محاولة لإعادة تنشيط مساحة التطبيقات - كانت عمليات التطبيقات دائمًا من خلال تطبيقات المساعد السيئة وجسور Flakeu`y في المتصفح. تم تحسين ذلك - على الرغم من أنه لا يزال يحتاج إلى مزيد من العمل - ولكن في النهاية أدركت الشمس أنه بحاجة إلى عمل وفعلت شيئًا حيال ذلك. التطبيقات في وضع أفضل مما كانت عليه في أي وقت مضى. من المنافسة التي ذكرتها - الفلاش والهواء و Silverlight - أعتقد أنك فاتتك المنافس الرئيسي - المتصفح/JavaScript - يعالج صانعي المتصفح أيضًا نقاط الضعف الأساسية للمنصة - أداء JavaScript ، والقدرة على القيام بالرسم التعسفي (أي قماش إلخ) . بالنسبة للمتطلبات المنخفضة ، أعتقد أن نهج متصفح اللعب الخالص سيفوز - للحصول على الرسومات ذات النهاية العليا - لدى Javafx فرصة.

  1. نفس الشيء مع سطح المكتب Java: ما الذي سيكون مقنعًا بالنسبة لنا مطوري Java لاستخدامه بدلاً من Javafx؟

كمطور كبير لتطبيقات سطح المكتب Java ، فإن أحد الأشياء المفقودة هو مجموعة لائقة من الأدوات الأساسية والوقت للعب! إنه يحتاج إلى تطبيق طاولة قاتلة - يمكنك تضمين التأرجح ولكن ما هي النقطة. الآن يمكنني أن أكتب بلدي من خلال هذا ليس حقًا حيث أضيف قيمة في وظيفتي.

1 - هل هذا يعني أن تطبيقات Java التي تنحدر من 1990 ميت ولا تستحق العودة إليها؟ من خلال التحديث إلى المكون الإضافي Java-جميع التطبيقات ، وليس فقط التطبيقات المستندة إلى Javafx تحصل على تجربة المستخدم المحسّنة والأداء. ومع ذلك - لا أعتقد أن هناك العديد من التطبيقات القاتلة (إن وجدت) هناك. إذا كان هناك - لم يكن هناك حاجة إلى Javafx.

2 - نفس الشيء مع سطح المكتب Java: ما الذي سيكون مقنعًا بالنسبة لنا مطوري Java لاستخدامه بدلاً من Javafx؟إذا كنت تقوم ببناء تطبيقات واجهة المستخدم الرسومية وترغب في تشغيلها في Java - لا سيما عبر منصات متعددة (مثل سطح المكتب ، والتطبيقات والجوال) ، بالإضافة إلى تسهيل العمل مع شخص لديه مهارات Photoshop/GIMP الفعلية - Javafx هو خيارك الأفضل لأنه تم تصميمه بشكل صريح لهذا النوع من العملية. ومع ذلك ، تذكر أنه يمكن لـ Javafx الاتصال بـ Java Code ويمكنه أيضًا إجراء مكالمات عن بُعد (إما الحصول على XML أو JSON). أعتقد أن نقطة التكامل الأكثر ترجيحًا هي استخدام Javafx لـ UI وتخزين المؤقتة للنتائج ، لكن كل منطق الترميز الثقيل سيكون على الخادم. حيث يمكن كتابتها في Java أو .NET أو Assembler إذا كان يمكنك الحصول على التجميع الخاص بك لإبعاد XML أو JSON :).

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

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

أرى أيضًا أن Java Applets أكثر ملاءمة للمشاريع المجتمعية التي تستند إلى بناء جانب الخادم ومراجعة التعليمات البرمجية. يمكن أن تجعل العديد من أدوات فاخرة سهلة الاستخدام تطوير مكونات الويب سريعة وسهلة ، لكن النتيجة إما غير قابلة للقراءة على الإطلاق أو من الصعب للغاية مراجعتها.

لقد أطلقنا مؤخرًا Ultrastudio.org المشروع الذي لا يزال يعتمد على تقنية Java Applet. كنت أفكر كثيرًا في وضع المزيد من اللغات والمنصات ، لكن في النهاية أُجبرت على استنتاج أنه إما أقل أمانًا أو أكثر تعقيدًا.

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