مرحبًا! 👋

غالبًا ما يبدأ الجزء الأصعب من أي عمل تجاري. ويبدو أنك نجحت. تهانينا!

بدءًا من هنا ، لدينا طريق طويل لنقطعه في تعلم البرمجة بشكل عام و No-Code (القدرة على إنشاء برامج دون تعلم لغات البرمجة المعقدة) بشكل خاص. لكن أولاً وقبل كل شيء ، الأمر يستحق القليل من الفهم للمصطلحات الأساسية.

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

مستعد؟ لنذهب!


النظرية العامة

أساسيات البرمجة

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

اتضح أن " البرمجة " بالمعنى الواسع - إنها إنشاء تعليمات (أوامر) واضحة ومفهومة لجهاز الكمبيوتر. والتعليمات نفسها بلغة مفهومة للكمبيوتر هي "برنامج".

وهنا يجدر إبراز عبارة "لغة مفهومة للكمبيوتر" (لغة مفهومة بواسطة الكمبيوتر). في الواقع ، نحن نتحدث لغة والكمبيوتر يتحدث لغة أخرى. لا يفهم الكلام البشري (على الأقل حتى يتلقى برنامجًا يعلمه فهم الكلام). تمامًا مثلنا ، بدون تدريب خاص ، لا نفهم لغة الآلة (أو رمز الآلة) ، والتي يمكن تمثيلها على شكل تسلسل من 1 و 0.

 10110100 00111010

غير مفهوم تمامًا ، أليس كذلك؟

لضمان التواصل ، تم إنشاء لغات برمجة (ويتم إنشاء لغات جديدة باستمرار).

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

المرحلة التالية هي لغات البرمجة " عالية المستوى ". تنتمي معظم لغات البرمجة الحديثة إليها: Java و C ++ و Python و Go وغيرها الكثير. وهي مصممة للسرعة وسهولة الاستخدام من قبل المبرمج. في الوقت نفسه ، يمكن ترجمة أمر واحد في مثل هذه اللغة إلى مجموعة معقدة جدًا وطويلة من الأوامر في كود الآلة.

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

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

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

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

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

أنواع التطبيقات

ما نوع التطبيقات الموجودة؟ دعنا نحاول التبسيط والهيكل قليلاً.

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

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

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

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

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

هناك أيضًا أنواع عديدة من تطبيقات الويب. دعنا نسمي أهمها:

  • الهبوط . صفحات المعلومات الصغيرة حيث يمكنك ملء نموذج أو ترك نوع من الطلب.
  • بوابات المعلومات . وتشمل هذه المواقع الإخبارية (على سبيل المثال ، Yahoo!) أو المواقع الرياضية (Fifa).
  • متاجر الإنترنت . من المتاجر المحلية الصغيرة إلى الأسواق الدولية الكبيرة.
  • شبكة اجتماعية . Twitter و Facebook وغيرها الكثير.
  • العاب . من الألعاب البسيطة القائمة على النصوص إلى الألعاب ثلاثية الأبعاد الأكثر تقدمًا.
  • LMS (نظام إدارة التعلم).
  • CMS (نظام إدارة المحتوى). بفضلهم ، يمكنك بسهولة إدارة محتوى الموقع وإضافة مقالات جديدة.
  • أنظمة CRM (إدارة علاقات العملاء). أنظمة لأتمتة علاقات العملاء.
  • الخدمات عبر الإنترنت . تنوعهم يستحق تصنيفًا منفصلاً. من بينها خدمات التنبؤ بالطقس وخدمات البحث والخدمات المصرفية وغير ذلك الكثير.

حسنًا ، اكتشفنا التطبيقات ، وقمنا بالتصنيف الأساسي ، وقمنا بفرز أنواع تطبيقات الويب. لكن كيف تعمل على أي حال؟

وهنا نصل إلى مصطلحات مهمة جدًا.

الواجهة الأمامية والخلفية

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

وبنفس الطريقة ، يتم تنظيم كل شيء في تطبيقات الويب.

هناك طبقة نراها. الصفحة التي يتم عرضها عند فتح بعض المواقع. ربما تحتوي هذه الصفحة على نوع من الرسوم المتحركة وحتى الأزرار التي يمكنك النقر فوقها.

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

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

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

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

يسمى بروتوكول نقل البيانات نفسه HTTP - HyperText Transfer Protocol. يمكنك رؤية هذه الأحرف الأربعة في بداية شريط عنوان المتصفح. هذا يعلم أن التفاعل سيتم تنفيذه باستخدام بروتوكول HTTP. يمكننا القول أن الطرفين اتفقا على اللغة التي سيتواصلان بها.

ولا تدع اسمه يخدعك. في الواقع ، في فجر الإنترنت ، تم تصميم البروتوكول حصريًا للنص التشعبي. أي ، نص به روابط ، مع القدرة على الانتقال إلى صفحة أخرى ، والحصول على نص آخر. يتيح لك الآن نقل أي بيانات: صور مضحكة وأغاني ومقاطع فيديو رقص من Tik-Tok.

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

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

لهذا الغرض ، تعمل " قواعد البيانات " (DB). يقومون بتخزين البيانات في شكل منظم. وهناك أنظمة تدير هذه البيانات - DBMS (نظام إدارة قواعد البيانات). إنها تسمح لك بكتابة بيانات جديدة إلى قاعدة البيانات ، والحصول على البيانات من هناك ، وتغييرها ، وحذفها (يُشار إلى كل هذا معًا بالاختصار CRUD - إنشاء ، قراءة ، تحديث ، حذف). سنقوم أيضًا بدراسة كل هذا بالتفصيل في الوحدات المستقبلية. دعنا نتعرف على قواعد البيانات بشكل عام ، وكيف يتم تنظيم عملها ومدى سهولة إدارتها في AppMaster .

ماذا عن تجربتها في الممارسة؟ حان الوقت للقيام بأول ...


الواجب المنزلي

تحتاج إلى تمكين الجهاز للعمل مع سطر الأوامر. في نظام Windows ، يسمى التطبيق المطلوب CMD ، على MacOS - Terminal.

استخدم تطبيق curl console (إذا لم يكن مثبتًا على جهاز الكمبيوتر الخاص بك - قم بإصلاحه). إنه مصمم خصيصًا لإرسال طلب إلى خدمة معينة وتلقي الرد من هناك.

كمثال ، أرسل طلب HTTP إلى خدمة BoredAPI. هذه خدمة يمكنها التقاط نشاط لجميع المناسبات.

للقيام بذلك ، أدخل الأمر التالي في الجهاز:

 curl "http://www.boredapi.com/api/activity؟type=diy"

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

الجزء الأول هو عنوان الطلب نفسه. في هذا المثال - "http://www.boredapi.com/api/activity"

الجزء الثاني هو معلمات الطلب. في المثال - "type = diy". أي أن معلمة الاستعلام هي "type" مع القيمة "diy". وبالتالي ، أشرنا إلى أننا نريد الحصول على مثل هذا النشاط الذي يمكنك القيام به بنفسك (افعلها بنفسك - افعلها بنفسك).

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

تحقق من وثائق الخدمة (http://www.boredapi.com/documentation) وقم بإجراء طلب أكثر تعقيدًا بمعلمات مختلفة بنفسك. على سبيل المثال ، اكتشف النشاط المناسب لشركة لديها أكثر من 5 أشخاص ولكن أقل من 10 أشخاص.

لدمج المادة ، حاول إتقان خدمة أكثر تعقيدًا. على سبيل المثال - https://www.alphavantage.co/

اقرأ الوثائق ، واحصل على سعر الصرف أو أسعار الأسهم من قاعدة البيانات.

قبل الاستخدام ، يجب عليك التسجيل والحصول على مفتاح وصول شخصي.