اتجاهات تكنولوجيا تطوير الويب 2019

مقدمة

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

اتجاهات تكنولوجيا تطوير الويب 2019

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

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

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

تطبيق صفحة واحدة

دعونا نحدد المصطلحات قليلا. تطبيق الصفحة الواحدة (SPA) هو تطبيق ويب يتم تحميل مكوناته مرة واحدة على صفحة واحدة، ويتم تحميل المحتوى حسب الحاجة. وعند التنقل بين أقسام التطبيق، لا يتم إعادة تحميل الصفحة بالكامل، بل تقوم فقط بتحميل وعرض البيانات الضرورية.

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

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

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

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

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

FOR

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

على سبيل المثال: الشبكات الاجتماعية، والمجمعات، ومنصات SaaS (البرامج كخدمة سحابية)، والأسواق

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

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

AGAINST

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

على سبيل المثال: مجالات مؤسسية محددة، مثل تطوير الأنظمة الداخلية للبنوك والمؤسسات الطبية والتعليم.

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

إذا كان لديك متجر عبر الإنترنت أو خدمة ويب تُباع بشكل جيد بالفعل، فلن ترى تدفق العملاء أو الشكاوى

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

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

تطبيقات الويب التقدمية

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

كتقنية أو نهج للتنمية، تم تطوير PWA منذ عام 2015، واكتسبت مؤخرًا شعبية هائلة في مجال التجارة الإلكترونية.

بعض الأمثلة الواقعية:

  • في العام الماضي، تمكن فندق Best Western River North من زيادة الإيرادات بنسبة 300% بعد إطلاق موقع ويب جديد يدعم PWA؛
  • تمكن موقع Avito OpenSooq.com العربي، بعد إنشاء دعم PWA على موقعه الإلكتروني، من زيادة وقت زيارة الموقع بنسبة 25% وعدد العملاء المتوقعين بنسبة 260%؛
  • تمكنت خدمة المواعدة الشهيرة Tinder من تقليل سرعة التحميل من 11.91 ثانية إلى 4.69 ثانية من خلال تطوير PWA، علاوة على ذلك، يزن التطبيق أقل بنسبة 90% من نظيره الأصلي لنظام Android.

يشار أيضًا إلى حقيقة أن هذه التكنولوجيا تستحق الاهتمام من خلال حقيقة أن أحد أكبر محركات إنشاء مشاريع التجارة الإلكترونية، Magento، أطلق نسخة تطوير مبكرة من PWA Studio في عام 2018. يتيح لك النظام الأساسي إنشاء واجهة أمامية قائمة على React لحلول التجارة الإلكترونية الخاصة بك بدعم PWA.

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

قليلا من الممارسة. لإنشاء تطبيق أخبار جوال أصلي بسيط، بشرط أن يكون لديك خادم REST جاهز بالفعل، فإنك تحتاج إلى ما يقرب من 200 إلى 300 ساعة عمل لكل منصة. مع متوسط ​​سعر السوق لمدة ساعة من التطوير يتراوح بين 1500-2000 روبل/ساعة، يمكن أن يكلف التطبيق حوالي مليون روبل. إذا قمت بتطوير تطبيق ويب مع دعم كامل لـ PWA: دفع الإشعارات، ووضع عدم الاتصال بالإنترنت وغيرها من الأشياء الجيدة، فسيستغرق التطوير ما بين 1 إلى 200 ساعة عمل، ولكن المنتج سيكون متاحًا على الفور على جميع الأنظمة الأساسية. وهذا هو، وفورات حوالي 300 مرات، ناهيك عن حقيقة أنك لن تضطر إلى دفع رسوم التنسيب في متاجر التطبيقات.

Serverless

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

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

على سبيل المثال، تمكنت شركة الوسائط الأمريكية الكبيرة Bustle من تقليل تكاليف الاستضافة بنسبة تزيد عن 60% عند التحول إلى Serverless. وتمكنت شركة كوكا كولا، عند تطوير نظام آلي لبيع المشروبات من خلال آلات البيع، من خفض تكاليف الاستضافة من 13000 دولار إلى 4500 دولار سنويًا عن طريق التحول إلى Serverless.

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

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

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

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

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

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

المصدر: www.habr.com

إضافة تعليق