ترجمة جيدة شو السبب ومطوري جافا نود.جي إس وجافا سكريبت متحمس جدا؟

الصين تشعر بالقلق إزاء مفتوحة المصدر عدد OSC عنوان، الحصول على أحدث المعلومات التقنية

تشارك في الترجمة (6): بلدة حدودية، وادي السليكون الفصول الدراسية، liyue لي يو، الظل الطفل، ZICK_ZEON، Tocy

حتى النفس الأخير، وأكثر من 10 عاما في فريق جافا SE صن مايكروسيستمز "لا ينبغي أن الناس خارج رمز بايت جافا ومثيل واجهة مجردة ذلك؟ جافا SE لأعضاء الفريق السابق 2011 نود.جي إس منصة التعلم هو تيار واضح. في يناير 2009، بعد اطلاق النار من الشمس (قبل استحواذ أوراكل)، تعلمت نود.جي إس وسقطت في الحب معها.

كيف فتنت؟ منذ عام 2010، وقد كتبت العديد من المقالات حول البرمجة نود.جي إس. وهذا هو، وضعت نود.جي إس الويب أربع نسخ، فضلا عن غيرها من الكتب على نود.جي إس برمجة الدروس والعديد من الوظائف بلوق. هذه المواد تفسر الكثير من الوقت والتقدم اللغة نود.جي إس جافا سكريبت.

صن مايكروسيستمز خلال العمل، وأعتقد أن كل شيء جافا. حضرت مؤتمر جافا ون، وضعه بالاشتراك مع الطبقة java.awt.Robot والتوزيع تشغيل المنافسة الظهر الفرس (جافا 1.6 نسخة من المنافسة اكتشاف الضعف)، وإطلاق ساعد قبل "رخصة توزيع لجاوا" OpenJDK أجاب توزيعات JDK نسخة لينكس ولعب في وقت لاحق دور صغير في المشروع بداية OpenJDK. في هذه العملية، وضعت على java.net (موقع لالمنحلة) بلوق، والكتابة 1-2 مرات في الأسبوع لمناقشة الحادث البيئي جافا حوالي ست سنوات. موضوع هام هو حماية هؤلاء الناس من آثار جافا جافا يتوقع الموت.

وتمنح جائزة دوق التي تفوقت الموظفين الممنوحة. أركض بعد فوز البرونكو هذه المسابقة يعود الجائزة، أن هذه علة المنافسة لصالح جافا 1.6 الإصدار.

كود جافا يوان ماذا حدث؟ هدفي هنا هو شرح كيف نقي يدعو جافا هو أن تصبح محض دعاة نود.جي إس / جافا سكريبت.

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

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

TL، DR

  • شغل جافا مع رمز المتداول، فإنها تخفي نية حقيقية للمبرمج
  • دروس الربيع والربيع التمهيد تحقيق: اخفاء تعقيد سوف تصبح فقط أكثر تعقيدا
  • جافا EE هو "مجلس التصميم" المشروع الذي يغطي جميع شؤون تطوير تطبيق المشاريع ومعقد للغاية
  • خبرة في البرمجة الربيع كبيرة، حتى يوم واحد، والحيرة الوضع الشاذ للخروج من عمق كنت لا تعرف الفرعي، بحيث يمكنك قضاء ثلاثة أيام على الأقل لتنفيذ له فهم أي المشاكل التي واجهتها
  • سوف الإطار كود الصفر تحقيق ما هو الثمن؟
  • مثل IDE الكسوف هو قوي جدا، لكنه يكشف أيضا تعقيد جافا
  • نود.جي إس هو مبلغ أخف وزنا من العمارة استخراج المنتج الحدث يحركها
  • يبدو المجتمع جافا سكريبت المحتوى لوضع جانبا رمز المتداول، لذلك المبرمجين حرية الفكر تألق
  • المتزامن / ننتظر يتم استخدام الدالة الاستدعاء إلى حل الجحيم هو إزالة نموذجا، مثال لإنشاء عناق
  • استخدام نود.جي إس الناس البرمجة القلب والعقل
  • جافا سكريبت مثل جافا عن عدم وجود نوع الفحص الدقيق للكلمة، هذه الايجابيات والسلبيات، لأنه يصبح من السهل لكتابة رمز، ولكنها تتطلب المزيد من الاختبارات للتأكد من صحتها
  • الآلية الوقائية الوطنية / الغزل نظام إدارة حزمة كبيرة، من السهل جدا استخدام، من مخضرم بغيض لا يعرف بشكل أفضل إلى أين أذهب
  • جافا ونود.جي إس ديك الأداء الممتاز. وقال لا تختلف عن شخص ما، نظرا لأن جافا سكريبت بطيء، حتى الفقراء أداء نود.جي إس
  • مزايا الأداء نود.جي إس لجوجل كروم من أجل تسريع التنمية والاستثمار V8
  • منافسة شرسة بين المتصفح وجعل جافا سكريبت سنة قوية بعد عام، وهذا هو إنجيل نود.جي إس

أصبح جافا عبئا، وذلك باستخدام نود.جي إس مليء الفرح

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

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

هذه هي قصة كبيرة وأنها تجربة كبيرة، حتى أنه ذهب.

عند الحصول على السبات PersistentObjectException على "لاستمرار كيانات منفصلة"، ماذا يعني ذلك استغرق الأمر عدة أيام مرة - تحدوا خطر الإفراط في التبسيط - وهو ما يعني الوصول إلى النهاية JSON REST لها حقل معرف مع القيمة. السبات، والحمولة الزائدة، وتريد السيطرة على قيمة ID، ويطرح الاستثناء الحيرة. وهناك الآلاف من رسالة استثناء مملة على قدم المساواة ومربكة. في واحدة من الربيع كومة من قبل النظام الفرعي واحد، مثل آلهة الثأر يجلس هناك في انتظاركم لجعل أصغر خطأ، ثم تحطم لمهاجمة استخدام غير طبيعي تطبيق.

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

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

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

التركيز تحت نود.جي إس

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

نود.جي إس الجانب الآخر ...

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

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

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

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

دراسة أخرى: معظم لغات البرمجة وضوح القصد من مبرمج، مما يجعل الأمر أكثر صعوبة لفهم التعليمات البرمجية.

هذا يشير إلى Node.js. ولكن هناك تحذير أننا يجب أن نتعامل مع: الجحيم رد.

تسبب حلول المشاكل في بعض الأحيان

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

وكانت هناك العديد من المكتبات، التي من المتوقع أن تبسيط تنفيذ غير متزامن. مثال آخر على تعقيد ملثمين يخلق المزيد من التعقيد.

على سبيل المثال:

تتطلب المتزامن CONST = ( 'المتزامن')؛ خ CONST = تتطلب ( 'خ')؛ القط CONST = وظيفة (filez، فيني) { async.eachSeries (filez، وظيفة (filenm، بجانب) { fs.readFile (filenm، 'UTF8، وظيفة (يخطئ، البيانات) { إذا (يخطئ) عودة التالي (يخطئ)؛ process.stdout.write (بيانات، "UTF8"، وظيفة (يخطئ) { إذا (يخطئ) بجوار (يخطئ)؛ آخر بجانب ()؛ })؛ })؛ }، وظيفة (يخطئ) { إذا (يخطئ) فيني (يخطئ)؛ فيني شيء آخر ()؛ })؛ }؛ القط (process.argv.slice (2)، وظيفة (يخطئ) { إذا (يخطئ) console.error (err.stack)؛ })؛

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

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

نود.جي إس 10.X في المعادلة على النحو التالي:

خ CONST = تتطلب ( 'خ') وعود؛ المتزامن وظيفة القط (filenmz) { ل(فار filenm من filenmz) { السماح البيانات = ننتظر fs.readFile (filenm، 'UTF8')؛ ننتظر الجديد وعد ((تصميم، رفض) = >  { process.stdout.write (بيانات، "UTF8، (يخطئ) = >  { إذا (يخطئ) رفض (يخطئ)؛ تصميم آخر ()؛ })؛ })؛ } } القط (process.argv.slice (2)). الصيد (يخطئ = >  { console.error (err.stack)؛ })؛

استخدام المتزامن / وظيفة تنتظر يتجاوز المثال السابق. ومن نفس بنية غير متزامن، ولكن مكتوبة باستخدام هيكل حلقة العاديين. أخطاء وتقديم تقرير عن النتائج بطريقة طبيعية. فمن الأسهل لقراءة وفهم القصد من مبرمج الترميز.

والمشكلة الوحيدة هي process.stdout.write وعد لا يوفر واجهة، حتى إذا كان لا يحتوي على وعد ونظيفة ولا يمكنك استخدام وظيفة غير متزامن.

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

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

حسب نوع واجهة واضحة تعريفات التظاهر بأن كل شيء تحت السيطرة

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

في المقابل، جافا سكريبت لديها نوع ضعيفة. والسبب بسيط: منذ المبرمجين لا يعرفون الحصول على ما نوع الكائن، ونعرف كيف يمكن القيام به؟

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

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

هناك ...... لا تدع لي أن استخدم مخضرم، وأداة يمكن أن تستخدم ببساطة لوصف الرعب.

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

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

اعدام من خلال وحدة اختبار عيب صغير

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

وحدة لديه الخصائص التالية:

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

كل هذه القرارات ونود.جي إس سهلة نطاق-اضحة المعالم، واختبار.

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

حل آخر لحل المشكلة هو تعزيز الاختبار.

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

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

التركيز هنا هو نود.جي إس وجافا سكريبت.

إدارة حزمة

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

والمشكلة هي أن النظام البيئي جافا لايوجد نظام إدارة الحزم متماسك له. مخضرم حزمة موجود ويعمل بشكل جيد جدا، ويقال أن العمل في Gradle. ولكنها ليست مفيدة مثل نظام نود.جي إس إدارة مجموعة / صالحة للاستعمال / قوية.

نود.جي إس في العالم، وهناك تعاون وثيق مع اثنين من أنظمة إدارة الحزم ممتازة. أولا، الآلية الوقائية الوطنية مستودع وهو الأداة الوحيدة.

استخدام الآلية الوقائية الوطنية، لدينا تعتمد على نموذج جيدة لوصف الحزمة. يمكن تبعيات تكون صارمة (وتحديدا الإصدار 1.2.3) أو تحديد وسائل "*" باستخدام أحدث إصدار. أصدرت المجتمع نود.جي إس مئات الآلاف من الحزم إلى مستودع الآلية الوقائية الوطنية. استخدام حزمة من مستودع حزمة الآلية الوقائية الوطنية واستخدامه بمثابة مستودع الآلية الوقائية الوطنية بسيط.

مكتبة الآلية الوقائية الوطنية لا تخدم سوى نود.جي إس، يقدم أيضا المهندسين الأمامية، فإنه لا يمكن أن يكون أفضل. قبل أن استخدام مثل أدوات المظلة لإدارة الحزم. لم يعد يوصى كوخ في الريف، والآن المطورين الأمامية سوف ننظر لالأمامية الآلية الوقائية الوطنية مكتبة جافا سكريبت. العديد من الواجهة الأمامية سلسلة أداة، مثل Vue.js CLI وWebpack، يتم كتابة نود.جي إس.

نود.جي إس هو نظام إدارة آخر حزمة الغزل، والتي يمكن تحميلها من حزمة الآلية الوقائية الوطنية مكتبة اللازمة، وذلك باستخدام نفس التشكيل الجانبي الآلية الوقائية الوطنية. من المهم والغزل تشغيل أسرع.

مكتبة الآلية الوقائية الوطنية يمكن الوصول إليها عن طريق الآلية الوقائية الوطنية أو الغزل، فإنه من السهل أن استخدام نود.جي إس ضمانة قوية.

بعد ساعد على خلق java.awt.Robot، وكان مصدر إلهام لخلق هذه الأداة. التميمة الرسمية دوق ضعت بالكامل من قبل المنحنى، RoboDuke بالإضافة إلى جزء انتقال والجزء الكوع، والأخرى هي خط مستقيم.

أداء

أحيانا تعتبر جافا وجافا سكربت ليعمل ببطء.

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

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

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

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

نود.جي إس الاستفادة بصورة مباشرة من هذا الاتجاه لأنه يستخدم محرك V8 كروم.

بيتر مارشال يأتي على سبيل المثال، الرئيسي جوجل V8 المهندسين العمل لتحسين أداء V8. وظيفة مارشال تتمثل في التعامل مع مشاكل أداء Node.js. لماذا يجب أن تفاصيل الجهاز الظاهري للتبديل العمود المرفقي المروحي الجهاز الظاهري.

https://youtu.be/YqOhBezMx1o

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

https://youtu.be/1ORaKEzlnys

يظهر فيديو آخر استخدام TensorFlow في جافا سكريبت، ويستخدم مكتبة TensorFLow.js. المكتبة وTensorFlow بيثون API مشابه، يمكنك استيراد وحدات قبل التدريب. ويمكن استخدامه لتحليل الفيديو في الوقت الحقيقي لتحديد الكائنات المدربين، ويمكن تشغيلها كليا في المتصفح.

https://youtu.be/YB-kfeNIPCE

في محادثة أخرى، تحدث IBM كريس بيلي حول أداء وقابلية نود.جي إس القضايا ذات الصلة، وخاصة القضايا المتعلقة بنشر وعامل الميناء / Kunbernetes. بدأ من خلال مجموعة من الاختبارات القياسية تظهر نود.جي إس من حيث I / O الإنتاجية، وقت بدء التشغيل وأثر الذاكرة وغيرها أفضل بكثير من الحذاء الربيع. وبالإضافة إلى ذلك، مع أداء الارتقاء V8، قد تحسنت نود.جي إس كل إصدار ملحوظا.

https://youtu.be/Fbhhc4jtGW4

فيديو، بيلي يحسب أنه لا ينبغي أن تشغيل في التعليمات البرمجية نود.جي إس. فهم لماذا هو هكذا فهم مهم جدا. لأن الذي طال أمده الحسابات نموذج ترابط واحد عرقلة تنفيذ الحدث. I "التنمية نود.جي إس الويب"، وهو كتاب حول هذه المشكلة، ويظهر ثلاثة مناهج:

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

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

https://youtu.be/Pfbw4YPrwf4

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

https://youtu.be/hYrg3GNn1As

تطبيقات إنترنت غنية (تطبيقات الإنترنت الغنية، RIA)

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

هذه القصة تعود قبل 20 عاما. وصلت الشمس ونتسكيب (نتسكيب) اتفاقا لاستخدام برنامج Java في Netscape Navigator (نتسكيب). تم تصميم الجافا سكربت في طريقة برنامج Java لغة البرمجة. كان هناك أمل في بريمج جافا على جانب الخادم والعميل مع الصغير، طرفي استخدام نفس لغة البرمجة، وضعت في بيئة متجانسة. ولكن فشل في نهاية المطاف لأسباب مختلفة صب.

قبل عشر سنوات جافا سكريبت أنفسهم هي بداية لتحقيق تطبيقات معقدة وقوية بما فيه الكفاية. حتى تتمكن من التخلص من RIA كمنصة تطبيق عميل جافا والشعبية.

الآن نبدأ في رؤية RIA الفكرة تصبح حقيقة واقعة. مع ظهور نود.جي إس، يمكن الأمامية والنهاية الخلفية استخدام جافا سكريبت، قبل 20 عاما، ويمكن تحقيق مستقبل مشرق.

بعض الأمثلة:

  • محرر مستندات Google (كتابة الأشياء) ينظر نفس مجموعة Office الأصلي، لكنه يدير متصفح القائمة على
  • مثل رد فعل، الزاوي وأطر قوية مثل فيو، والسماح للمتصفح مطوري التطبيقات لاستخدام HTML / CSS بسيطة التكنولوجيا جعلت
  • الإلكترون متكاملة نود.جي إس وChrominum المتصفح التي يمكن أن تدعم تطوير تطبيقات سطح المكتب عبر منصة. العديد من التطبيقات المعروفة، مثل Visual ستوديو المدونة، الذرة، GitKraken، وساعي البريد، مكتوبة على أساس الكترون. أدائها جيد جدا.
  • منذ الكترون / NW.js باستخدام محرك المتصفح، مثل إطار ردة الفعل / الزاوي / فيو استخدامها في تطوير تطبيقات سطح المكتب. مثل هذا المثال: الشبكي: //blog.sourcerer.io/creating-a-markdown-editor-previewer-in-electron-and-vue-js-32a084e7b8fe

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

ومع ذلك، لا يزال بإمكانك وضع أنواع أخرى من تطبيقات سطح المكتب جاوة، وبالتالي فإن اثنين من NetBeans بيئة تطوير متكاملة والكسوف لا تزال قادرة على المنافسة. ولكن العمل جاوة في هذا المجال ليس تقدما كبيرا، بالإضافة إلى أدوات التطوير، وهناك عدد قليل من التطبيقات القائمة على جافا.

سكريبت غير استثناء.

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

والسعادة جميع الناس في هذا المجال عن الأشياء التي تتعلق تتفاعل، Vue.js هذه الأطر.

وفي ظل هذه الظروف، وجافا سكريبت ونود.جي إس هو الفائز في معظم الأحيان.

تم توزيع جافا جافا حلقة واحدة في الجمعية العامة. تحتوي هذه حلقة رقاقة مع التنفيذ الكامل جافا. دورها الرئيسي هو لفتح الكمبيوتر قمنا بتثبيت في بهو مؤتمر جافا ون.

جافا حلقة المقدمة.

ملخص

اليوم، ووضع رمز server-side لديها العديد من الخيارات. ونحن لم تعد تقتصر على "P اللغة" (بيرل، PHP، بيثون) وجافا، بالإضافة إلى وجود نود.جي إس، روبي، هاسكل، العودة، الصدأ وغيرها وهذه لغات البرمجة. لذلك، نحن نريد أن يتمتع الحرج الناجم عن الكثير من الاختيار.

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

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

قسم المفتوحة المصدر OSC المجتمع "ترجمة جيدة"، وتهدف إلى ترجمة كل يوم ويوصي مواد ذات جودة عالية للمستخدمين إكسترانت. لم يعد لدينا للخوف لأن العادات الإنجليزية، مع ذلك، أن تبقى خارج العديد من المقالات التقنية. اهتمام وOSC مجتمع المصادر المفتوحة والنص جيد اليومية الموصى بها الحصول على ترجمتها، انقر فوق " تعرف على المزيد "اقرأ المقال الأصلي.

الاستثمار في مجال الإحصاء: الاكتتاب في أسعار منتصف ابريل جمع الأموال ثابتة على نطاق وسرعة لمزيد من النمو

ذوبان شبكة نقطة ثم يتعرض أفراد الاضطراب: الفضاء مؤسس قوه تتلاشى، وضرب المديرين التنفيذيين لسرقة الختم

الأرز الأحمر 5 زائد الخبرة للبدء: "000 شاشة مثيرة للاهتمام الكامل، إلغاء" النموذج القديم "نأسف قليلا

المدرجة 360 US الاكتتاب المالية تقديم أكبر قدر جمع الأموال من 200 مليون $ أو

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

جبل الروح M2S تقييم MP3 عمق: قيم الألوان وتتعايش الصوت، وأقل قليلا عمر البطارية

تقلصت 2018 مجموع ثروة المليونير العالمي إلى 500 مليار $، وهي أكبر خسارة للشعب الصيني هي أنه

ضرب تقييم سريع: "مزدوجة ضرب الدين" الصدمة ضرب، VC / PE الفرح الذي ما يقلق؟

الكشف العلني عن أحدث استراتيجية الكهربائية "الخطوات الثلاث"، وثلاثة في المكونات الجديد نماذج مختلطة لاول مرة

فشل في عبور الليلة الماضية من عام 2018، ملياري الربان الشركة فقدت فجأة، وترك الأعمال غير المنجزة

ما هاتف "التعدين" في نهاية المطاف؟ تفاصيل سلاسل كتلة في تكنولوجيا الإنترنت عبر الهاتف النقال

العلامة التجارية WEY إلى الأمام أكثر من كتابة الأسطوري SUV الفاخرة الصيني