لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 01/01/23 في كل الموقع
-
السلام عليكم.. ما هي المواقع التي تحتوي على مصداقية ودقة وسرعة لمتابعة اخر واهم الاخبار المتعلقة ببرمجة مواقع الويب ؟ وهل هنالك مخاوف على برمجة مواقع الويب من الذكاء الاصطناعي الجديد ؟2 نقاط
-
يعد مركز المساعدة أحد الأدوات الضرورية لصاحب أي نشاط تجاري أو شركة ناشئة، فمركز المساعدة يساهم بشكل كبير في دعم العملاء والتواصل معهم عبر الآلية المعتادة أو الدردشة المباشرة ويجيبهم عن أي استفسار يخص المنتجات أو الخدمات التي يوفرها هذا النشاط التجاري، ويساعدهم على إيجاد حلول لمشكلاتهم بشكل ذاتي دون أن يضطروا للتواصل مع الدعم الفني بشأن كل كبيرة وصغيرة. سنتعلم سويًّا في هذه المقالة طريقة إنشاء مركز مساعدة باستخدام برنامج زيتون لإدارة خدمة العملاء في موقعك أو متجرك الإلكتروني، ونوضح كذلك طريقة إضافة خدمة الدردشة الحية Live Chat بطريقة سهلة وبسيطة. أهمية مركز المساعدة للمواقع الإلكترونية مركز المساعدة Help center هي خدمة تخصصها المواقع والمتاجر الإلكترونية عبر صفحات موقعها كوسيط بين العملاء وزوار الموقع وبين فريق الموقع أو فريق خدمة العملاء المرتبط بالموقع والخدمة التي يقدمها وهو مهم لثلاثة ميزات رئيسية فيه وهي: تسهيل التواصل توفير قاعدة معرفة توفير الدردشة المباشرة أو الدردشة الفورية تسهيل عملية التواصل يسهل مركز المساعدة كثيرًا عملية التواصل بين الطرفين فمن طرف العميل يسهل الوصول إلى واجهة التواصل وإرسال الاستفسار وتتبع المحادثة الجارية أو المحادثات القديمة ومن طرف فريق الموقع يسهل عليهم تصنيف الرسائل الكثيرة وتخصيصها ومعالجتها والرد عليها بالإضافة إلى تخصيص إجراءات آلية يمكن للمنصة تنفيذها وغيرها من الميزات التي تسهل عملي فريق الموقع أو فريق الدعم الفني عادةً المسؤول عن مركز المساعدة. توفير قاعدة معرفة أضف إلى ذلك أن مركز المساعدة يأتي بخدمة مهمة جدًا تقلل من عملية التواصل وتساعد العميل على العثور على إجابة لما يبحث عنه بسهولة ويسر وذلك عبر ميزة قاعدة المعرفة التي تحوي إجابات وافية عن كافة الأسئلة الشائعة التي تخص الموقع واستخدامه والخدمات التي يقدمها، وتعرضها للعملاء في مكان واحد مع خاصية بحث متقدمة ليعثروا على ما يريدونه من معلومات قبل التواصل مع فريق الموقع، فإن كانت لديك مشكلة أو استفسار مع موقع ما ودخلت للتواصل معهم ورأيت اقتراحًا للمشكلة التي تبحث عنها بالضبط ما أغناك عن عملية التواصل فهذا بالضبط وظيفة مركز المساعدة، إذ يقلل من عمليات التواصل وإشغال فريق الموقع والدعم الفني بأسئلة بسيطة شائعة وبالتالي لا حاجة لفريق دعم فني كبير أو أن ينشغل فريق الموقع والنشاط التجاري بالرد على أسئلة العملاء الشائعة بدلًا من التركيز على نشاطهم التجاري نفسه. توفير الدردشة المباشرة (لايف شات) الميزة الثالثة والمهمة جدًا التي توفرها مراكز المساعدة هي الدردشة الحية أو الدردشة المباشرة أو لايف شات live chat فلا بد من أنك رأيت إحدى أيقونات الدردشة وأنت داخل على موقع ما أو متجر إلكتروني، إذ تساعد تلك الميزة بوصل العميل بفريق الموقع والدردشة مهم لمشكلة حصلت معه مما يسهل عملية التواصل ويغني عن إرسال رسالة أو فتح تذكرة في طابور التذاكر لحل مشكلة ما، كما تنشئ أغلب مراكز المساعدة علاقة بين الدردشة المباشرة وقاعدة المعرفة وتؤتمت عملها فمتى ما كتب العميل كلمة معينة موجودة ضمن مقالات قاعدة المعرفة، ترسل الدردشة المباشرة رابط المقال وتتأكد من العميل أنه وصل لما يبحث عنه. كل ميزات مركز المساعدة التي ذكرناها مهمة وتصب في صالح الموقع والخدمة التي يقدمها ويعزز من ولاء العملاء ويقلل من معدل الارتداد فمن وقع في مشكلة ولم يجد حلها أو صَعُب عليه التواصل مع فريق الدعم سيترك الخدمة ويبحث عن منافس لها. اختيار برنامج خدمة العملاء الأنسب لك توجد الكثير من منصات وخدمات الدعم الفني الأجنبية وقد يكون الاختيار بينها لمستخدم أجنبي سهلًا ومتفاوتًا بينما لمستخدم عربي فكلها سواءً إلا ما دعمت منها اللغة العربية، أما عربيًا فلا يوجد لذا أدركت شركة حسوب ذلك وعملت على برنامج لإدارة خدمة العملاء والدعم الفني لهم باللغة العربية أطلقتها باسم "زيتون". ذكر عبد المهيمن الآغا المدير التنفيذي لشركة حسوب في مدونته لماذا طورنا زيتون السبب الذي دفعهم لتطوير هذه المنصة وإطلاقها وهو أن معظم منصات الدعم الفني لا تدعم اللغة العربية ولا تراعي اتجاه لغتنا من اليمين إلى اليسار مما يشكل صعوبة بالغة في عملية التواصل من طرف العميل ومن طرف فريق الموقع بالإضافة إلى تعقيد بعد المنصات المبالغ فيه خصوصًا لمواقع وخدمات إلكترونية صغيرة وحتى متوسطة عدا عن الكلفة المرتفعة لتلك المنصات بمقارنة الدخل المنخفض في معظم الدول العربية مع الدخل المرتفع في الدول الغربية المنتجة لها. أضف إلى ما سبق الأسباب التالية التي دعمت خيارنا لاعتماد منصة زيتون للدعم الفني وهي: تملك واجهة بلغة عربية وإنجليزية سهلة الاستخدام والتخصيص. تمكنك من إنشاء قاعدة معرفة لنشاطك التجاري بسهولة. متجاوبة مع كافة أحجام الشاشات. توفر صناديق بريد مشتركة تمكنك من استقبال كافة محادثات عملائك في مكان واحد. توفر ميزة الدردشة المباشرة مع العملاء. تقدم خطة مجانية تناسب المدونات والمواقع الصغيرة. سنشرح في الفقرات التالية كيفية إضافة مركز مساعدة زيتون لموقع ووردبريس بالخطوات العملية. خطوات إضافة مركز مساعدة لموقع ووردبريس لاستخدام مركز المساعدة الخاص بمنصة زيتون والتواصل مع عملائك بشكل فعال من خلاله كل ما عليك هو إنشاء حساب جديد في حسوب أو تسجيل الدخول لحسابك الحالي، ثم التوجه للصفحة الرئيسية للموقع والنقر فوق زر "ابدأ الآن مجانًا": كما يمكنك الاشتراك في أحد الخطط المدفوعة التي توفر ميزات أكثر بحسب حاجتك بالضغط على تبويب الأسعار واختيار الدفع بشكل شهري أو سنوي حيث ستوفر قيمة شهرين عند اختيار الدفع سنويًا، بعدها حدد خطة الاشتراك التي تناسبك (المجانية، الأساسية، الاحترافية) والضغط على زر ابدأ الآن. ستجد في النافذة التالية ثلاث تبويبات تطلب منك كافة البيانات الأساسية عنك، وعن شركتك أو نشاطك التجاري، وعن الخطة التي تريد الاشتراك بها. أدخل في التبويب الأول البيانات الأساسية كاسم مركز المساعدة والبريد الإلكتروني الأساسي لإرسال الرسائل منه، والنطاق الفرعي أو النطاق المخصص (بحسب خطة الاشتراك) لمركز المساعدة، وأخيرًا أدخل بياناتك الشخصية كالاسم الأول واسم العائلة والبريد الإلكتروني وكلمة المرور ثم اضغط على زر التالي. أدخل في التبويب الثاني بيانات نشاطك التجاري التي تطلبها المنصة لتحسن من تجربة استخدامك لها ثم اضغط على زر التالي للمتابعة. في التبويب الثالث والأخير، حدد آلية الدفع وخطة الاشتراك وأدخل بيانات الدفع الخاصة بك واضغط على زر إنشاء المركز. توفر لك زيتون خطة مجانية أساسية مدى الحياة للخدمة، وتتيح لك أيضًا فترة تجريبية لإحدى الخطط المدفوعة مع إمكانية إلغاء الاشتراك وقتما تشاء. وللمزيد من التفاصيل حول إنشاء مركز مساعدة في زيتون يمكنك مطالعة المقال التالي: إنشاء مركز مساعدة. بعد أن امتلكت مركز مساعدة، يمكنك إعداد هذا المركز وفق هويتك البصرية، وإحالة زوار موقعك إليه على النطاق الذي حصلت عليه من زيتون، كما يمكنك ان تضيف نطاقك المخصص من الضبط، ويمكنك أن تضيف فيه مقالات قاعدة معرفة، وتمكن زوار موقعك مع التواصل معك عبر الرسائل في مركز المساعدة وغير ذلك من الميزات كما سنوضح في الفقرات التالية. إعداد مركز المساعدة الآن بعد أن أنشأت مركزك سجل دخولك للوحة التحكم الخاصة بهذا المركز، واختر الإعدادات ثم انقر فوق مركز المساعدة لتظهر لك النافذة التالية التي تملك ثلاث تبويبات هي اللغة والهوية البصرية والمعلومات العامة. في تبويب اللغة يمكنك تحديد لغة مركز المساعدة عربية أو انجليزية. وفي تبويب الهوية البصرية يمكنك رفع شعار موقعك أو نشاطك التجاري وانتقاء لون مميز مخصص يتناسب وهويتك البصرية. أخيرًا في تبويب المعلومات العامة يمكنك تحديد عنوان المركز ووصفه وإضافة كلمات مفتاحية لمركز المساعدة وكتابة اسم المرسل وعنوان البريد الإلكتروني ورقم الهاتف الخاص بنشاطك التجاري كما يلي. خصص مركز المساعدة بما يناسب معلومات وتصاميم نشاطك التجاري، وتجدر الإشارة لأن بعض الميزات وخيارات التخصيص المتاحة هنا تختلف باختلاف نوع خطة الاشتراك. وللمزيد حول تخصيص مركز المساعدة يمكنك مطالعة إعداد مركز المساعدة. إعداد قاعدة المعرفة الخاصة بمركز المساعدة بعد أن خصصت مركز المساعدة يمكنك الاستفادة من ميزاته المختلفة مثل إنشاء قاعدة المعرفة الخاصة بمركزك التي تتضمن كافة المعلومات المهمة التي تريد أن تخبرها عملائك بها حولك وحول نشاطك التجاري بالإضافة إلى إجابات على الأسئلة الشائعة التي تواجه العملاء. توفر لك زيتون إمكانية إنشاء قاعدة معرفة سهلة التصفح وإضافة صفحات ومقالات وتصنيفات لها، كل ما عليك هو تحديد أهم الموضوعات والعناوين التي تريد عرضها وانتقاء المواضيع الشائعة التي يسأل عنها عملاؤك بكثرة وتنظمها وفق تصنيفات رئيسية ثم تبدأ بإضافتها إلى قاعدة المعرفة. تجدر الإشارة أن إنشاء قاعدة المعرفة يستلزم الاشتراك بأحد الخطط المدفوعة، بعدها يمكنك اتباع الخطوات التالية. سجل الدخول إلى لوحة تحكم مركز المساعدة الخاص بك وانقر فوق إشارة + أعلى يسار الصفحة واختر إضافة مقالة أو صفحة أو تصنيف لقاعدة المعرفة. وللمزيد حول إعداد قاعدة المعرفة الخاصة بمركز المساعدة يمكنك مطالعة مقال إعداد قاعدة المعرفة في زيتون. حالما تنتهي من إعداد وتخصيص مركز المساعدة الخاص بك، ستتمكن من توجيه عملائك إليه من خلال إنشاء عنصر قائمة في موقع ووردبريس باسم مناسب مثل المساعدة أو مركز الدعم وتوجههم من خلاله إلى قاعدة المعرفة، وإعلامهم أنهم سيعثرون فيها على ما يريدونه من معلومات وإجابات موثوقة عن نشاطك التجاري. إضافة الدردشة المباشرة "لايف شات" إلى موقع ووردبريس يفترض أن توفر مراكز المساعدة ميزة الدردشة المباشرة ضمن الميزات أو قد لا تفعل ولكن في منصة زيتون تتوفر هذه الميزة وهي متاحة ضمن الخطة المجانية وسنتعرف على كيفية إضافتها لموقع ولكن قبل ذلك سنجيب عن سؤالين مهمين، هل إضافة الدردشة مهمة؟ وهل تناسب كل موقع إلكتروني؟ أهمية الدردشة الحية لايف شات فقد لا يعثر العملاء أحيانًا على المعلومات التي يريدونها عند البحث في قاعدة المعرفة التي يوفرها مركز المساعدة الخاص بك، ويحتاجون للتواصل الفوري السريع مع أحد أعضاء فريق الدعم الفني للعثور على إجابة على أمر طارئ، ولكون الهاتف والبريد الإلكتروني قد يستغرقان وقتًا لاستلام الرد ستكون الدردشة الحية هي الحل الأمثل في هذه الحالة. كما أن الدردشة المباشرة قد تكون وسيلة الدعم الفني المفضلة لدى بعض العملاء الذين لا يرغبون في البحث مطولًا، ويفضلون العثور على إجابة فورية على تساؤل ما، أو تقديم الشكوى حول خدمة أو منتج والتحدث مع إنسان حقيقي يفهم شكواهم بشكل أفضل ويرد على كافة تساؤلاتهم. ومن أهم فوائد الدردشة المباشرة كذلك أنها تزيد معدلات التحويل والمبيعات عبر الإنترنت، فالعميل يميل إلى الشراء من المتاجر التي توفر له دردشة حية للرد على استفساراته المستعجلة خلال عملية الشراء أو الدفع. وهذا من شأنه أن يبني علاقات طويلة الأمد مع هذا العميل الذي يجدك متاحًا دومًا لمساندته ويفضلك دون شك عن بقية المنافسين. هل الدردشة المباشرة مناسبة لكل خدمة إلكترونية؟ تعد الدردشة المباشرة Live Chat أحد الميزات المهمة في خدمات الدعم الفني للعملاء، ومن الضروري أن تحرص على توفيرها في خدمتك الإلكترونية للتواصل مع العملاء ودعمهم بشكل لحظي وضمان رضاهم الكامل عن مستوى خدماتك ولكن هذا في الخدمات التي يكثر فيها العملاء وتكثر معها استفساراتهم مثل المتاجر الإلكترونية والخدمات الإلكترونية المتوسطة والكبيرة لأن الميزة تتطلب من أحد فريق الموقع أن يكون متاحًا للرد على الرسائل لحظيًا فليس من المناسب إضافتها لمدونة أو لمتجر دون توفير من يرد على الاستفسارات مباشرةً. فهي تشبه وجود بائع أو مندوب مبيعات مباشر لسؤاله عن توافر قطعة معينة أو خصم معين أو إمكانية حل مشكلة في طلبية ما وقس على ذلك بقية الخدمات الإلكترونية ومدى حاجتها لوجود دردشة مباشرة وتوظيف شخص يعمل على خدمة العملاء عبرها. إعداد خدمة الدردشة المباشرة التابعة لمركز المساعدة بعد إنشاء مركز المساعدة في الخطوات السابقة، انتقل إلى لوحة التحكم وانقر فوق الإعدادات ثم اختر الدردشات المباشرة. يجب عليك في البداية ضبط إعدادات الدردشة المباشرة الخاصة بمركز المساعدة بما يتناسب مع بيانات موقعك وذلك من خلال الضغط على النقاط الثلاث بجانب اسمها ثم اختيار الأمر تعديل كما يلي: ستظهر لك نافذة إعدادات الدردشة المباشرة التي تتضمن ثلاث تبويبات: الإعدادات الأساسية، وإعدادات المصادقة، والمعلومات العامة. في تبويب الإعدادات الأساسية، يمكنك ضبط الإعدادات الأساسية للدردشة المباشرة كما يلي: الاسم: وهو اسم الدردشة الحية الداخلي الخاص بمركز المساعدة وهذا الاسم خاص بك ولن يظهر لعملاء موقعك. الوصف: حقل اختياري يمكنك أن تكتب فيه وصفًا لخدمة الدردشة الحية. النطاقات: في هذا الحقل اكتب نطاق الدردشة الخاص بزيتون، وأضف له كذلك نطاق موقعك الإلكتروني الذي تريد أن تعرض هذه الدردشة المباشرة فيه. صندوق البريد: حدد من خلال هذا الحقل صناديق البريد التي ترغب أن ترسل إليها كافة مراسلات العملاء. فعل زر الاختيار إظهار معدل سرعة رد فريق العمل في حال رغبت بعرض الفترة الزمنية التي تم خلالها الرد على استفسار العميل عند الدردشة المباشرة معه من قبل كل عضو من أعضاء فريق الدعم الفني. فعل زر الاختيار إظهار فرق العمل المتصلين في حال رغبت بإظهار الأعضاء المتصلين خلال التواصل مع العملاء في نافذة الدردشة المباشرة. اضغط فوق زر الاختيار تفعيل من أجل تفعيل أو إبطال الدردشة المباشرة. بعد تحديد كافة البيانات المطلوبة اضغط فوق الزر حفظ. أما في التبويب إعدادات المصادقة، بإمكانك إجراء ما يلي: إنَّ تفعيل زر الاختيار يحتاج تسجيل الدخول يجبر عملاءك على تسجيل الدخول باستخدام بريدهم الإلكتروني قبل السماح لهم ببدء الدردشة المباشرة، وفي هذه الحالة سيرسل كود تفعيل الدردشة إلى بريد العميل كي يتمكن بعدها من تسجيل الدخول وإجراء الدردشة المباشرة معك أو مع أحد أعضاء فريق الدعم. كما يمكنك من هذه النافذة تحديد مجموعة من الحقول التي يتوجب على العميل إدخالها قبل أن تسمح به ببدء المحادثة المباشرة مثل: البريد الإلكتروني، والاسم الأول، واسم العائلة، ورقم الجوال. بعد ضبط كافة خياراتك المناسبة لك، اضغط فوق الزر حفظ. أخيرًا في تبويب المعلومات العامة يمكنك إدخال عنوان نافذة الدردشة المباشرة التي ستظهر لعملاء موقعك، كما يمكنك كتابة رسالة ترحيبية تعرض للعملاء عند إجراء الدردشة المباشرة لأول مرة. بعد الانتهاء من كافة الإعدادات اضغط زر حفظ وبهذا تكون قد انتهيت من عملية تخصيص ميزة الدردشة المباشرة على موقع زيتون. إضافة الدردشة المباشرة Live Chat لموقع ووردبريس بعد أن تنتهي من إعداد الدردشة المباشرة الخاصة بمركز المساعدة عليك نسخ كود جافاسكريبت الخاص بهذه الدردشة إلى موقعك ليتمكن العملاء من التواصل معك من داخل موقعك. للقيام بهذه الخطوة انتقل من جديد للوحة تحكم مركز المساعدة وانتقل إلى صفحة الدردشة المباشرة التابعة لمركزك وانقر فوق اسمها ثم انقر فوق زر أنشئ الكود كما هو مبين في الصورة التالية. ستظهر لك صفحة تتضمن مجموعة من الخيارات يمكنك أن تحدد من خلالها خصائص ظهور الدردشة المباشرة في موقعك مثل لغة نافذة الدردشة، ومكان ظهور أيقونة الدردشة في الموقع إما أسفل اليسار أو أسفل اليمين. الآن انقر فوق زر نسخ الكود ثم غادر موقع زيتون وانتقل إلى لوحة التحكم الخاصة بأدمن موقعك الووردبريس. يمكنك لصق الكود الذي حصلت عليه من حسوب بعدة طرق حيث يمكنك تعديل كود القالب وإضافة الكود في ملف تذييل القالب footer.php قبل الوسم <body/>، أو كتابة إضافة ووردبريس مخصصة تضيف الكود للموقع، أو استخدام إضافة ووردبريس WPCode الشهيرة -تملك أكثر من مليون تثبيت نشط- التي تمكنك من إضافة أكواد برمجية لموقع ووردبريس دون الحاجة إلى تعديل ملفات القالب الخاص بك بشكل مباشر، ولكونها الخيار الأسهل والأنسب وسنعتمدها في إضافة كود الدردشة المباشرة لموقع ووردبريس. سجل الدخول للوحة تحكم موقعك واختر من القائمة الجانبية التبويب إضافات ثم أضف جديد، وابحث في شريط البحث عن اسم الإضافة ثم انقر فوق زر التنصيب الآن ثم تفعيل كما يلي: بعد تفعيل الإضافة سيظهر لك تبويب جديد في لوحة التحكم بعنوان Code Snippets، انقر فوقه واختر الأمر Add Snippet ثم انقر فوق الرابط blank snippet في صفحة إدارة الإضافة التي ستظهر لك. ستظهر لك صفحة مخصصة لإضافة الكود، حدد من القائمة المنسدلة Code type نوع الكود ليكون جافاسكربت واكتب اسم خاص بهذا الكود ثم ألصق الكود الذي نسخته في الموضع Code Preview واختر من القائمة المنسدلة Location موضع إضافة الكود Site Wide Footer. اترك كافة الخيارات الأخرى في الصفحة بالقيم الافتراضية، ثم انقر على زر Save snippet لحفظ الكود، ثم فعل مفتاح الاختيار Inactive لتفعيله في موقعك. هذا كل شيء! كل ما عليك الآن هو استعراض موقع ووردبريس الخاص بك في المتصفح ويجب أن تظهر لك أيقونة الدردشة المباشرة في المكان الذي حددته عند إعدادها، في حالتنا ستظهر أسفل يسار الموقع كما يلي: بالنقر فوق هذه الأيقونة ستظهر نافذة الدردشة المباشرة، وسيتمكن عملاؤك من التواصل معك وإجراء لايف شات في الوقت الفعلي في أي شأن يريدونه بكل سهولة. ملاحظة: لن يعمل كود الدردشة المباشرة إذا كنت تعمل على موقع ووردبريس محلي، لأن النطاق الذي تضيفه في زيتون يجب أن يتطابق مع النطاق الذي تستخدمه في موقعك ليسمح لك زيتون بعرض الخدمة. إذا عدت من جديد لموقع زيتون، وسجلت الدخول إلى لوحة التحكم الخاصة بمركز المساعدة، فسوف تجد في صندوق الوارد كافة الرسائل الخاصة بالدردشة المباشرة. الخلاصة تعرفنا في مقال اليوم على أهمية مركز المساعدة وميزة خدمة الدردشة المباشرة للشركات الصغيرة والمتوسطة وأصحاب المواقع الإلكترونية في توفير قناة فعالة للتفاعل مع العملاء وبناء علاقات قوية وطويلة الأمد معهم. وشرحنا طريقة الاشتراك في خدمة مركز المساعدة والدردشة الحية التي توفرها منصة زيتون وتعرفنا على خطوات تخصيصها وإضافتها إلى موقع ووردبريس بشكل سهل ومجاني بالكامل. إن احتجت إلى أي مساعدة، فلا تتردد بذكرها في التعليقات، أو شاركنا تجربتك! اقرأ أيضًا كيف تكتب مقالات قاعدة المعرفة لتفيد المستخدم بشكل أفضل كيف تساعد خدمة دعم العملاء في دفع عجلة الإيرادات في مشروعك التجاري دليلك الشامل لخدمة العملاء في الشركات الصغيرة الدليل الشامل لتعريب قوالب وإضافات ووردبريس1 نقطة
-
مرحبا كنت أبحث عن عمل فرونت اند في أحد المواقع التي طلبت فرونت اند ، و من ضمن شروطهم : تجربة التكامل مع التعليمات البرمجية من جانب الخادم لإنتاج صفحات ديناميكية. لم أفهم الشرط بدقة ولكن هل يعني تعلم إطار عمل للباك اند ؟! مع عنوان العمل هو فرونت اند ؟1 نقطة
-
لا يقصد تعلم إطار عمل أو لغة برمجة خاصة بال backend إنما القصد هنا أنه يجب عليك القدرة على التعامل مع ال API بحيث إذا كان الموقع المطلوب أو المشروع عبارة عن كود backend يختص بال API فقط أي ليس له علاقة بواجهة الموقع ويتم تكملة الموقع من خلال إطار عمل frontend يعالج البيانات القادمة من ال API التي يرسلها ال backend وهذا الجزء الذي يقصده بال يمكنك القراءة أكثر عن إطار العمل باستخدام JavaScript مثل react أو vue وهناك أكثر وقم بقراءة المزيد عن ال (single page application).1 نقطة
-
ربما هنا المقصود بها هي لغة جافا سكربت ، بالطبع الجافا سكربت يجب أن تتعامل مع الخادم ، وأيضاً تستخدم من أجل بناء صفحات ديناميكية . كما ربما يكون المقصود بها لغات برمجة متعلقة في Back End مثل PHP أو غيرها . كما يوجد إطارات عمل كثيرة الأن مستخدمة مع Front End لذلك إطلع على المهارات المطلوبة أيضاً من أجل معرفة ماذا يقصد العميل بالتحديد . كما أيضاً العميل أحياناً يكون ليس لديه خبرة برمجية كثيرة وليس لديه دراية بالمصطلحات لذلك خلال تقديمنا للعمل أو للمشاريع نكون صادقين مع العميل وإخباره بمهاراتنا وكل الخبرات التي لدنيا ونحاول الفهم منه ماذا يريد بالتحديد .1 نقطة
-
انا بحاول ادفع فلوس للكورس تطبيقات الجاافا بس كل شويه يقولي البطاقه لا تحتوي على اموال كافيه مع العلم ان البطاقه عليها فلوس مصري اكتر من ثمن الكورس1 نقطة
-
قم بمراجعة الدعم الفني من أجل حل مشكلة الإشتراك في الدورة ولمراسلة الدعم الفني من خلال مركز المساعدة . وبتأكيد سوف يساعدوك على حل المشكلة لديك .1 نقطة
-
1 نقطة
-
Flutter لديه العديد من المراجع الرائعة التي يمكن للمبتدئين أن يستعينوا بها في التعلم. بعض الكتب المميزة التي يمكنك الاستعانة فيها هي: "Flutter in Action" من كارل ويليامز. "Flutter for Beginners" من كمبر إل هاي. "Flutter in Practice" من هاردي هول. جميع هذه الكتب باللغة الانجليزية, اذا كنت تريد باللغة العربية فعليك البحث في جوجل او المتاجر الرقمية مثل Google Books او Amazon1 نقطة
-
1 نقطة
-
أحتاج إلى لقطات شاشة لعمليتي الاضافة حتى يمكنني تحديد المشكلة.1 نقطة
-
هل مازالت المشكلة مستمرة ؟ لانه نزلت الملف وهو سليم والصورة تظهر مثل ما اخبرتك .1 نقطة
-
c4a.dev.rar إذا عرفت حل المشكلة أخبرني وسأرد عليك بعد الصلاة أخي أنا ذاهب للصلاة الان1 نقطة
-
في جميع جداول المشروع نفس المشكلة لايسمح لي بتكرار الاختيار هل يجب ان اقوم بأي تعديل على اعداداتpostgresql؟؟؟؟1 نقطة
-
أعتذر فقد أرسلت الملف القديم عن طريق الخطأ PRO.L.zip1 نقطة
-
1 نقطة
-
بشكل عام مواقع التواصل كلها مثل Linkedin ، Facebook ، Twitter وغيرها من المواقع ممكن أن توصلك إلى المجتمع البرمجي ، وكيف هذا من خلال الإعجاب بصفحات المبرمجين والإنضمام إلى المجموعات البرمجية ويتم فيها بشكل دوري نشر الأخبار البرمجية وكل الأحداث التي ممكن أن تحدث بخصوص البرمجة . أيضاً كما يوجد موقع div الخاص في المبرمجين وكل ما يتعلق في البرمجة . أيضاً قم بالمتابعة المجتمعات البرمجية على حسوب I/O من هنا وهنا سوف تجد أشخاص يكتبون المقالات و يسئلون أسئلة برمجية . بخصوص الذكاء الاصطناعي الجديد ، نحن نستخدم الذكاء الإصطناعي في كثير من المجالات ولا يوجد خوف في الوقت الحالي من الذكاء الإصطناعي الجديد وفي المستقبل ربما تستحدث أمور جديدة .1 نقطة
-
أعتقد أنه من الأفضل متابعة الموقع الرسمي الخاص بالتقنية التي تستعملها، فهو الأكثر وثوقاً و طبعاً الأسرع. إن المخاوف التي تنتشر بسبب الذكاء الصنعي هي مجرد تهويل لا أكثر، بالطبع هناك تقنيات جديدة في الذكاء الصنعي ستساعدنا على بناء مواقع الويب بشكل أسرع، و لكن لا يوجد تقنية حتى الآن (و ليس في المستقبل القريب) قادرة على استبدال العنصر البشري في هذه العملية. من الجيد رغم ذلك التعرف على تقنيات الذكاء الصنعي لاستعمالها لمساعدتك، أو حتى لأتمتة العمليات الرتيبة.1 نقطة
-
في الدقيقة 6:4 ثواني لم افهم الاجراء الحفظ وفتح لانه سريع ونتمنى يكون بلخطوات البطيئة1 نقطة
-
كتاب البرمجة بلغة جافاسكربت المنشور يشرح مبادئ لغة جافاسكربت بكافة جوانبها ويتعمق في شرح بعضها، في حال كما ذكرت لديك بعض الممارسة والمعرفة بلغة جافاسكربت سيضيف الكتاب لك كثيرًا، حيث ستفهم كل جانب من جوانب اللغة وتوظفها فيما تحتاج، يمكنك إما الاطلاع وقراءة الكتاب بالكامل أو التوجه فقط إلى الفقرات التي تود التعلم عنها وتقوية مهارتك، فالكتاب مناسب للمبتدئين1 نقطة
-
اللغات المصرفة (Compiled) واللغات المفسرة (Interpreted) تندرج لغات البرمجة تحت صنفين اثنين: إما مُصرَّفة (compiled) أو مُفسَّرة (interpreted)، فيعني المصطلح لغة مُصرَّفة (compiled) ترجمة البرامج إلى لغة الآلة (machine language) لينفذها العتاد (hardware)، أما مصطلح لغة مُفسَّرة (interpreted) فيعني وجود برنامج يدعى «المفسِّر» (interpreter) يقرأ البرامج وينفذها مباشرةً وآنيًا . تُعَد لغة البرمجة C على سبيل المثال لغة مُصرَّفة (compiled) عادًة، بينما تُعَد لغة Python لغة مُفسَّرة (interpreted)، لكنّ التمييز بين المصطلحين غير واضح دائمًا حيث: أولًا يمكن للغات البرمجة المُفسَّرة أن تكون مُصرَّفة والعكس صحيح، فلغة C مثلًا هي لغة مصرَّفة ولكن يوجد مفسِرات لها تجعلها لغة مفسَّرةً أيضًا والأمر مماثل للغة Python المفسَّرة التي يمكن أن تكون مصرَّفة أيضًا. ثانيًا توجد لغات برمجة، جافا (Java) مثلًا، تستخدم نهجًا هجينًا (hybrid approach) يجمع بين التصريف والتفسير، حيث يبدأ هذا النهج بترجمة البرنامج إلى لغة وسيطة (intermediate language) عبر مصرِّف ثم تنفيذ البرنامج عبر مُفسِّر. تَستخدم لغة Java لغةً وسيطةً (intermediate language) تُدعى جافا بايتكود Java bytecode شبيهة بلغة الآلة، لكنها تُنفَّذ باستخدام مُفسِّر برمجيات يدعى بآلة جافا الافتراضية (Java virtual machine وتختصر إلى JVM). وسم لغة البرمجة بكونها لغة مفسَّرة أو مصرَّفة لا يكسبها خاصية جوهرية، على كل حال توجد اختلافات عامة بين اللغتين المُصرَّفة والمُفسَّرة. الأنواع الساكنة (Static Types) تدعم العديد من اللغات المُفسَّرة الأنواع الديناميكية (Dynamic Types)، وتقتصر اللغات المُصرَّفة على الأنواع الساكنة (Static Types). فيمكن في اللغات ساكنة النوع معرفة أنواع المتغيرات بمجرّد قراءة شيفرة البرنامج أي تكون أنواع المتغيرات محدَّدة قبل تنفيذ البرنامج، بينما تكون أنواع المتغيرات في اللغات التي توصف بأنها ديناميكية النوع غير معروفة قبل التنفيذ وتحدد وقت تنفيذ البرنامج. ويشير مصطلح ساكن (Static) إلى الأشياء التي تحدث في وقت التصريف (Compile time) (أي عند تصريف شيفرة البرنامج إلى شيفرة التنفيذ)، بينما يشير مصطلح Dynamic إلى الأشياء التي تحدث في وقت التشغيل (run time) (أي عندما يُشغَّل البرنامج). يمكن كتابة الدالة التالية في لغة Python على سبيل المثال: def add(x, y): return x + y لا يمكن معرفة نوع المتغيرين y وx بمجرد قراءة الشيفرة السابقة حيث لا يحدَّد نوعهما حتى وقت تنفيذ البرنامج، لذلك يمكن استدعاء هذه الدالة عدة مرات بتمرير قيمة بنوع مختلف إليها في كل مرة، وستعمل عملًا صحيحًا ما دام نوع القيمة المُمرَّرة إليها مناسبًا لتطبيق عملية الجمع عليها، وإلا سترمي الدالة اعتراضًا (exception) أو خطأً وقت التشغيل. يمكن كتابة نفس الدالة السابقة في لغة البرمجة C كما يلي: int add(int x, int y) { return x + y; } يتضمّن السطر الأول من الدالة تصريحًا واضحًا وصريحًا بنوعي القيمتين التي يجب تمريرهما إلى الدالة ونوع القيمة التي تعيدها الدالة أيضًا، حيث يُصرَّح عن y وx كأعداد صحيحة (integers)، وهذا يعني أنه يمكن التحقق في وقت التصريف (compiled time) فيما إذا كان مسموحًا استخدام عامل الجمع مع النوع integer أم لا (إنه مسموح حقًا)، ويُصرَّح عن القيمة المُعادة كعدد صحيح (integer) أيضًا. وعندما تُستدعى الدالة السابقة في مكان آخر من البرنامج يستطيع المصرِّف (compiler) باستخدام التصريحات أن يتحقق من صحة نوع الوسطاء (arguments) الممررة للدالة، ومن صحة نوع القيمة التي تعيدها الدالة أيضًا. يحدث التحقق في اللغات المصرَّفة قبل بدء تنفيذ البرنامج لذلك يمكن إيجاد الأخطاء باكرًا، ويمكن إيجاد الأخطاء أيضًا في أجزاء البرنامج التي لم تُشغَّل على الإطلاق وهو الشيء الأهم. علاوًة على ذلك لا يتوجب على هذا التحقق أن يحدث في وقت التشغيل (runtime)، وهذا هو أحد الأسباب التي تجعل تنفيذ اللغات المُصرَّفة أسرع من اللغات المُفسَّرة عمومًا. يحافظ التصريح عن الأنواع في وقت التصريف (compile time) على مساحة الذاكرة في اللغات ساكنة النوع أيضًا، بينما تُخزَّن أسماء المتغيرات في الذاكرة عند تنفيذ البرنامج في اللغات ديناميكية النوع التي لا تحوي تصريحات واضحة لأنواعها وتكون أسماء هذه المتغيرات قابلة للوصول من قبل البرنامج. توجد دالة مبنيّة مسبقًا في لغة Python هي locals، تعيد هذه الدالة قاموسًا (dictionary) يتضمن أسماء المتغيرات وقيمها. ستجد تاليًا مثالًا عن مفسِّر Python: >>> x = 5 >>> print locals() {'x': 5, '__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', '__doc__': None, '__package__': None} يبيّن المثال السابق أنه يُخزَّن اسم المتغير في الذاكرة عند تنفيذ البرنامج (مع بعض القيم الأخرى التي تُعَد جزءًا من بيئة وقت التشغيل الافتراضية). بينما تتواجد أسماء المتغيرات في اللغات المُصرَّفة في الذاكرة في وقت التصريف (compile time) ولا تتواجد في وقت التشغيل (runtime). حيث يختار المصرّف موقعًا في الذاكرة لكل متغير ويسجل هذه المواقع كجزء من البرنامج المُصرَّف (سنتطرّق إلى مزيد من التفاصيل عن ذلك لاحقًا). يدعى موقع المتغير في الذاكرة عنوانًا (address) حيث تُخزَّن قيمة كل متغير في عنوانه، ولا تُخزَّن أسماء المتغيرات في الذاكرة على الإطلاق في وقت التشغيل (ولكن هذا شيء اختياري للمصرف فيمكن أن يضيف المصرِّف (compiler) أسماء المتغيرات إلى الذاكرة في وقت التشغيل بهدف تنقيح الأخطاء (debugging)، أي لمعرفة أماكن تواجد الأخطاء في البرنامج). عملية التصريف (The compilation process) يجب أن يفهم المبرمج فهمًا تامًا ما يحدث خلال عملية التصريف (compilation)، فإذا فُهِمت هذه العملية جيدًا سيساعد ذلك في تفسير رسائل الخطأ وتنقيح الأخطاء في الشيفرة وأيضًا في تجنُّب الزلات الشائعة. للتصريف خطوات هي: المعالجة المسبقة (Preprocessing): تتضمن لغة البرمجة C موجِّهات معالجة مسبقة (preprocessing directives) والتي تدخل حيز التنفيذ قبل تصريف البرنامج، فمثلًا يسبّب الموجِّه #include إدراج شيفرة مصدرية (source code) خارجية موضع استعماله. التحليل (Parsing): يقرأ المُصرِّف (compiler) أثناء هذه الخطوة الشيفرة المصدرية (source code) ويبني تمثيلًا داخليًّا internal) (representation للبرنامج يُدعى بشجرة الصيغة المجردة (abstract syntax tree). تُسمى عادًة الأخطاء المكتشفة خلال هذه الخطوة بأخطاء صياغية (syntax errors). التحقق الساكن (Static checking): يتحقق المصرِّف من صحة نوع المتغيرات والقيم وفيما إذا اُستدعيت الدوال بعدد ونوع وسطاء صحيحين وغير ذلك من التحققات. يُدعى اكتشاف الأخطاء في هذه الخطوة أحيانًا بالأخطاء الدلالية الساكنة (static semantic errors). توليد الشيفرة (Code generation): يقرأ المصرِّف التمثيل الداخلي (internal representation) للبرنامج ويولّد شيفرة الآلة (machine code) أو الشيفرة التنفيذية (byte code) للبرنامج. الربط (Linking): إذا استخدم البرنامج قيمًا ودوالًا مُعرَّفة في مكتبة، فيجب أن يجد المُصرِّف المكتبة المناسبة وأن يُضمِّن (include) الشيفرة المطلوبة المتعلقة بتلك المكتبة. التحسين (Optimization): يحسّن المصرف دومًا خلال عملية التصريف من الشيفرة ليصبح تنفيذها أسرع أو لجعلها تستهلك مساحةً أقل من الذاكرة. معظم هذه التحسينات هي تغييرات بسيطة توفر من الوقت والمساحة، ولكن تطبِّق بعض المُصرِّفات (compilers) تحسيناتٍ أعقد. ينفذ المصرف كل خطوات التصريف ويولّد ملفًا تنفيذيًا (executable file) عند تشغيل الأداة gcc. المثال التالي هو شيفرة بلغة C: #include <stdio.h> int main() { printf("Hello World\n"); } إذا حُفِظت الشيفرة السابقة في ملف اسمه hello.c فيمكن تصريفها ثم تشغيلها كما يلي: $ gcc hello.c $ ./a.out تخزّن الأداة gcc الشيفرة القابلة للتنفيذ (executable code) في ملف يدعى افتراضيًا a.out (والذي يعني في الأصل خرج مُجمَّع (assembler output)). ينفذ السطر الثاني الملف التنفيذي، حيث تخبر البادئة ./ الصدفة (shell) لتبحث عن الملف التنفيذي في المجلّد (directory) الحالي. من الأفضل استخدام الراية -o لتوفير اسم أفضل للملف التنفيذي، حيث يُعطى الملف التنفيذي الناتج بعد عملية التصريف اسمًا افتراضيًا (a.out) بدون استخدام الراية -o، ولكن يُعطى اسمًا محددًا باستخدام الراية -o كما يلي: $ gcc hello.c -o hello $ ./hello التعليمات المُصرَّفة (Object code) تخبر الراية -c الأداة gcc بأن تصرِّف البرنامج وتولّد شيفرة الآلة (machine code) فقط، بدون أن تربط (link) البرنامج أو تولّد الملف التنفيذي. $ gcc hello.c -c النتيجة هي توليد ملف يُدعى hello.o، حيث يرمز حرف o إلى object code وهو البرنامج المُصرّف. والتعليمات المُصرَّفة (object code) غير قابلة للتنفيذ لكن يمكن ربطها بملف تنفيذي. يقرأ الأمر nm في UNIX ملف التعليمات المُصرَّفة (object file) ويولّد معلومات عن الأسماء التي يُعرِّفها ويستخدمها الملف، فمثلًا: $ nm hello.o 0000000000000000 T main U puts يشير الخرج السابق إلى أن hello.o يحدد اسم التابع الرئيسي main ويستخدم دالة تدعى puts، والتي تشير إلى (put string). وتطّبق gcc تحسينًا (optimization) عن طريق استبدال printf (وهي دالة كبيرة ومعقدة) بالدالة puts البسيطة نسبيًا. يمكن التحكم بمقدار التحسين الذي تقوم به gcc مع الراية -O، حيث تقوم gcc بإجراء تحسينات قليلة جدًا افتراضيًا مما يجعل تنقيح الأخطاء (debugging) أسهل. بينما يفعّل الخيار -O1 التحسينات الأكثر شيوعًا وأمانًا، وإذا استخدمنا مستويات أعلى (أي O2 وما بعده) فستفعِّل تحسينات إضافية، ولكنها تستغرق وقت تصريف أكبر. لا ينبغي أن يغير التحسين من سلوك البرنامج من الناحية النظرية بخلاف تسريعه، ولكن إذا كان البرنامج يحتوي خللًا دقيقًا (subtle bug) فيمكن أن تحمي عملية التحسين أثره أو تزيل عملية التحسين هذا الخلل. إيقاف التحسين فكرة جيدة أثناء مرحلة التطوير عادةً، وبمجرد أن يعمل البرنامج ويجتاز الاختبارات المناسبة يمكن تفعيل التحسين والتأكد من أن الاختبارات ما زالت ناجحة. الشيفرة التجميعية (Assembly code) تتشابه الرايتان -S و-c، حيث أن الراية -S تخبر الأداة gcc بأن تصرف البرنامج وتولد الشيفرة التجميعية (assembly code), والتي هي بالأساس نموذج قابل للقراءة تستطيع شيفرة الآلة (machine code) قراءته. $ gcc hello.c -S ينتج ملف يدعى hello.s والذي يبدو كالتالي .file "hello.c" .section .rodata .LC0: .string "Hello World" .text .globl main .type main, @function main: .LFB0: .cfi_startproc pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_cfa_register 6 movl $.LC0, %edi call puts movl $0, %eax popq %rbp .cfi_def_cfa 7, 8 ret .cfi_endproc .LFE0: .size main, .-main .ident "GCC: (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3" .section .note.GNU-stack,"",@progbits تُضبَط gcc عادةً لتولد الشيفرة للآلة التي تعمل عليها، ففي حالتي، يقول المؤلف، وُلِّدت شيفرة لغة آلة لمعمارية x86 للمعالجات والتي يمكن تنفيذها على شريحة واسعة من معالجات Intel ومعالجات AMD وغيرهما وفي حال استهداف معمارية مختلفة، فستولد شيفرة أخرى مختلفة عن تلك التي تراها الآن. المعالجة المسبقة (Preprocessing) يمكن استخدام الراية -E لتشغيل المعالج المُسبق (preprocessor) فقط بدون الخطوات الأخرى من عملية التصريف: $ gcc hello.c -E سينتج خرج من المعالج المسبق فقط. يحتوي المثال السابق تلقائيًا على الشيفرة المُضمَّنة (included code) المبنية مسبقًا والمتعلقة بالمكتبة stdio.h المذكورة في بداية البرنامج، وبالتالي يتضمن كل الملفات المُضمَّنة المتعلقة بتلك المكتبة، وكل الملفات الفرعية التابعة للملفات السابقة والملفات الموجودة في الملفات الفرعية أيضًا وهكذا. فعلى حاسوبي، يقول المؤلف، وصل العدد الإجمالي للشيفرة الإجمالية المضمنة إلى 800 سطر، ونظرًا أن كل برنامج C يتضمّن ملف الترويسات stdio.h تقريبًا، لذلك تُضمَّن تلك الأسطر في كل برنامج مكتوب بلغة C. وتتضمّن العديد من برامج C المكتبة stdlib.h أيضًا، وبالتالي ينتج أكثر من 1800 سطر إضافي من الشيفرة يجب تصريفها جميعًا. فهم الأخطاء (Understanding errors) أصبح فهم رسائل الخطأ أسهل بعد معرفة خطوات عملية التصريف، فمثلًا عند وجود خطأ في الموجّه #include ستصل رسالة من المعالج المسبق هي: hello.c:1:20: fatal error: stdioo.h: No such file or directory compilation terminated. أما عند وجود خطأ صياغي (syntax error) متعلق بلغة البرمجة، ستصل رسالة من المُصرِّف (compiler) هي: hello.c: In function 'main': hello.c:6:1: error: expected ';' before '}' token عند استخدام دالة غير معرَّفة في المكتبات القياسية ستصل رسالة من الرابط (linker) هي: /tmp/cc7iAUbN.o: In function `main': hello.c:(.text+0xf): undefined reference to `printff' collect2: error: ld returned 1 exit status ld هو اسم رابط UNIX ويشير إلى تحميل (loading)، حيث أن التحميل هو خطوة أخرى من عملية التصريف ترتبط ارتباطًا وثيقًا بخطوة الربط (linking). تجري لغة C تحققًا سريعًا جدًا ضمن وقت التشغيل بمجرد بدء البرنامج، لذلك من المحتمل أن ترى بعضًا من أخطاء وقت التشغيل (runtime errors) فقط وليس جميعها، مثل خطأ القسمة على صفر (divide by zero)، أو تطبيق عملية عدد عشري غير مسموحة وبالتالي الحصول على اعتراض عدد عشري (Floating point exception)، أو الحصول على خطأ تجزئة (Segmentation fault) عند محاولة قراءة أو كتابة موقع غير صحيح في الذاكرة. ترجمة -وبتصرّف- للفصل Compilation من كتاب Think OS A Brief Introduction to Operating Systems1 نقطة
-
لا يفترض أن يعطي أخطاء فهو مجرد حقل محرفي، ما هي قيم بقية الحقول، هل يمكنك أخذ لقطة شاشة لكلا الإضافتين؟0 نقاط