-
المساهمات
2852 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
38
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Hassan Hedr
-
في فلاتر لا يمكنك تخصيص ملفات Javascript أو CSS التي ستنتج من عميلة بناء تطبيق الويب، هذا سيكون على حساب السهولة في تطوير التطبيق على الويب ولن تحتاج لأي تخصيص إضافي في حال كان مشروعك بسيط ولا يحتاج لتقنيات متطورة يمكنك بناءه باستخدام فلاتر، الأفضل أن تقرأ وتبحث جيدًا عن المزايا التي يتطلبها مشروعك ضمن كل التقنيات المقترحة وبعدها تختار ما يناسبك
-
ليس بالضرورة توحيد اللغة في كلا التطبيقين، يمكن تطوير تطبيق العميل بلغة وإطار عمل ما، وتطوير تطبيق الخادم بلغة مختلفة وأي قاعدة بيانات تفضلها، لا يجب أن تقيدك اللغة المستخدمة في اختيارك لأي التقنيات الأخرى يمكنك اختيار ما تفضل نعم سيحتاج (في بعض الأحيان) منك لكتابة بعض المكونات المخصصة للويب، سيساعدك في حال كنت تريد تطوير تطبيق رياكت نيتف وويب معًا استخدام مكتبة Expo
-
يوجد دعم لعدة قواعد بيانات، لكن أشهر قاعدة بيانات مستخدمة هي MYSQL التطبيق الناتج عن كوردوفا هو فعليا تطبيق ويب يتم تشغيله ضمن الجوال كتطبيق، لذا يمكنك تطوير تطبيقات كوردوفا وتطبيقات الويب معا فقط بتعلمك أساسيات تطوير الويب والقليل عن كيفية استخدام كوردوفا، رياكت نيتف تنتج تطبيق أصلي يستخدم نظام تشغيل الجهاز كأندرويد أو IOS ولا يكفي تعلمك لتقنيات الويب فقط بتطوير مثل هذه التطبيقات بل أحيانا تحتاج لفهم جزئية متعلقة بنظام التشغيل المستهدف، لذا كوردوفا أبسط للمبتدئ من غيرها
-
بما أنك تنوي تطوير تطبيق ويب أيضًا يفضل أن تتعلم بداية لغة جافاسكريبت وتتقنها جيدًا، وتتعلم معها تقنيات الويب من HTML و CSS ثم تعلم أطار عمل يستخدم تقنيات الويب ولغة جافاسكريبت مثل ReactNative أو التي تستخدم تقنيات الويب بالكامل كما Cordova هناك عدة دورات في الأكاديمية تساعدك في هذا المجال: دورة تطوير تطبيقات الجوال باستخدام تقنيات الويب لتعلم كوردوفا دورة تطوير التطبيقات باستخدام لغة JavaScript ستتعلم فيها اساسيات جافاسكريبت وإطار عمل رياكت نيتف وأيضًا NodeJS لتطوير التطبيقات بطرف الخادم دورة تطوير واجهات المستخدم ستتعلم فيها أساسيات تطوير الويب من HTML و CSS بشكل احترافي
-
تماما كذلك التطبيقات بطرف العميل مهمتها الأساسية عرض واجهة المستخدم وإرسال الطلبات بشكل صحيح إلى النظام الأساسي على الخادم كل الأطر المذكورة توفر إمكانية إرسال طلبات الويب إلى الخادم لا يوجد ربط بين اللغة المستخدمة ضمن التطبيق والتقنيات المستخدمة على الخادم، حيث يمكنك استخدام أي قاعدة بيانات تفضلها مع أي لغة برمجة على الخادم وأي لغة مختلفة ضمن التطبيق، لأن الطلبات في كل الأحوال هي عبارة عن طلبات HTTP المهم أن الخادم يستطيع استقبال الطلبات والعميل يستطيع إرسال واستقبال الردود ومعالجتها، أيضًا الأمر معتمد على خبرة المسؤول عن التطوير وتفضيلاته
-
أطر العمل مثل Flutter و ReactNative تفيد في تطوير لمنصات عدة معًا تقريبا دون الحاجة لإعادة كتابة التطبيق من جديد لكل منصة على حدى، أطر العمل هذا تدعم تطبيقات الهواتف الأصلية Native لأنظمة التشغيل مثل أندرويد و IOS، وأيضا تدعم منصات الويب مع الحاجة أحيانا لكتابة مكونات خاصة بالويب في حال كان دعمها أو طريقة عملها مقتصرة على الويب لا يوجد الأفضل، اختيارك لأحدهما يعتمد على خبرتك في اللغات المستخدمة مثل جافاسكريبت أو دارت، وخبرتك في إطار العمل نفسه أو خبرة المبرمج المسؤول عن التطوير أطر العمل هذه تستطيع بها بناء تطبيق بطرف العميل، أي تطبيق واجهة للعملاء لديك فقط، باقي العمليات يجب أن تتم معالجتها بطرف الخادم وهو الجزء الأكبر من المشروع يمكنك القراءة عن React Native ضمن المقال التالي أيضًا لديك خيار التطوير باستخدام إطار عمل Cordova مما سيمكنك أيضًا من كتابة التطبيقات باستخدام تقنيات الويب، كما يتوفر ضمن دورات الأكاديمية دورة تطوير تطبيقات الجوال باستخدام تقنيات الويب الدورة مخصصة لتطوير التطبيقات باستخدام كوردوفا مع تطبيق عدة مشاريع خلالها، أيضًا يمكنك القراءة عن إطار العمل ضمن المقال التالي:
-
طالما أن هذه العناصر تم إرسالها ضمن الطلب الأولي للصفحة بأي شكل كان سواء تم عرضها في HTML أو تم تضمينها ضمن جافاسكريبت وحقنها لاحقًا فذلك لن يضمن تفحص المخترق لمصدر الصفحة والحصول على ذلك العنصر. الطريقة الوحيدة الآمنة هي عدم إرسال العنصر المطلوب إخفاءه أبدًا ضمن الصفحة الأولية والتي تحتوي البيانات الأولية المطلوب إدخالها، بعدها يتم إرسال البيانات تلك والتحقق منها بطرف الخادم وفي حال كانت سليمة يتم توليد وإرسال الجزء من الصفحة المراد حقنه، يمكن إتمام هذه العملية أيضًا عن طريق طلب AJAX بغرض جلب هذا القسم وحقنه وسيقوم الخادم باتخاذ قرار إما إرسال العنصر أو إرسال خطأ يخبر المستخدم ما الذي يجب عليه فعله أولًا يتم تقسيم العملية على المراحل التالية: إرسال الصفحة الأولية (دون القسم المراد إخفاءه أبدًا) بعد اتمام الخطوات المطلوبة يتم إرسال طلب AJAX مع إرسال البيانات التي تم إدخالها في المرحلة الأولى الخادم يتحقق من بيانات المرحلة الأولى المرسلة ضمن الطلب، ويعيد إما العنصر الجديد ليتم حقنه أو رسالة خطأ ليتم عرضها معالجة الرد من طلب AJAX السابق وحقن العنصر أو إظهار رسالة الخطأ
-
بناء صفحات الويب (الساكنة) يعتمد بشكل أساسي فقط على HTML لبناء هيكلية الصفحة والمحتوى و CSS لتنسيق الصفحة وتغيير المظهر، بهاتين اللغتين يمكنك بناء صفحات ويب ساكنة بشكل كامل. ستحتاج جافاسكريبت فقط لإضافة التفاعلية ضمن الصفحة، أي المزايا التي تحتاج إلى منطق مخصص لإتمامها، قد لا تحتاج أبدًا لذلك في حال كانت الصفحة بسيطة وتحتوي على الأساسيات، تطورت لغتي HTML و CSS كثيرًا مؤخرًا بحيث أصبحت تدعم الكثير من المزايا التي لم تكن متاحة سابقًا سوى عبر برمجتها يدويًا بإضافة جافاسكريبت ضمن الصفحة، كالتحقق من صحة المدخلات أو دعم صيغ وسائط حديثة أو تنسيق العناصر بطريقة سهلة يمكنك القراءة أكثر ضمن المقالتين:
- 4 اجابة
-
- 1
-
-
ليس بالضرورة يمكنك إعادة تعريف النقاط Break Points بحسب حاجة المشروع، قد يحتاج التنسيق في مشروعك لمعرفة نوع الوسط مثلا لتنسيق الصفحة عند الطباعة، أو معرفة خصائص عن الجهاز معينة مثل وضعية الجهاز (أفقي - عمودي)، أو تفضيلات للمستخدم مثل هل يفضل المستخدم الألوان الداكنة أم الفاتحة المثال المذكور غالبًا تتشارك كافة المشاريع البرمجية الخاصة ببناء المواقع فيه، حيث تحتاج لتعديل تنسيقات الصفحات بحسب المساحة المتوفرة لدى جهاز الزائر، إما شاشة كبيرة أو متوسطة أو صغيرة، وقد يتم تعديل القياس الذي نعتبر عنده الشاشة كبيرة أو متوسطة أو صغيرة فقط. يمكنك قراءة المزيد عن استعلامات الوسائط Media Queries ضمن المقال التالي:
-
حاول تطبيقه بنفسك وعند مواجهتك لمشكلة او استفسار يمكنك طرحه هنا ليقوم الزوار بمساعدتك
-
حاول تطبيق الحل بنفسك وإذا واجهت مشاكل أو لديك استفسار معين قم بإرفاق الشيفرة المتعلقة بسؤالك وتوضيح الاستفسار لكي يتمكن الزوار من مساعدتك لا يمكن السؤال عن حل للواجبات
- 3 اجابة
-
- 1
-
-
عند المرور على كل عنصر من العناصر أنت تقوم بالتحقق من مطابقته وفي حال عدم التطابق (مع هذا العنصر فقط) تقوم بعرض "غير موجود"، المشكلة أنه في حال تم العثور على تطابق أحد العناصر فإن التحقق التالي للعنصر الذي يليه في حال لم يتطابق أيضًا سيتم مسح النتيجة وتعيينها لـ ""غير موجود" // item 3 بحث عن item 1 <-- غير موجود item 2 <-- غير موجود item 3 <-- موجود عرض البيانات item 4 <-- غير موجود الطريقة الأفضل هي تصفية العناصر المطابقة للبحث ووضعها ضمن متغير، وبعد الانتهاء من المرور على العناصر جميعها تقوم بفحص النتيجة النهائية مرة واحدة فقط وإما عرض النتائج المطابقة أو عرض "غير موجود"، سيساعدك في ذلك استخدام التوابع map و filter، يمكن أي يكون شكل الحل كالتالي // تصفية النتائج const result = fields.filter((item) => { return item.field1 == input; }); // عرض النتيجة النهائية if (result.length === 0) { demo.innerHTML = "غير موجود"; } else { demo.innerHTML = result.map((field) => { return ( "<tr><td>" + field.field1 + ... "</td></tr>" ); }); } الميزة في هذا الحل هو عند تطابق نتيجة البحث مع أكثر من عنصر سيتم عرض كل تلك العناصر، يمكنك التطوير على عملية التطابق لاستخدام التعابير النظامية Regex، وبالتالي سيصبح البحث أقوى ويمكنه عرض النتائج اذا كان هناك ولو تطابق جزئي مع نص البحث
-
عوض عن نموذج يتم تعبئته من قبل الزائر هناك حل أبسط ومضمون من ناحية عدم وصوله لقسم Spam، يمكنك وضع زر "تواصل معي" عند الضغط عليه يتم فتح تطبيق البريد الالكتروني الخاص بالمستخدم وتعيين العنوان الخاص بك بشكل تلقائي، يتم ذلك عبر إضافة رابط من النمط التالي ويمكنك تنسيقه بما يناسب موقعك ليكون على شكل زر: <a href="mailto:ibrahim@gmail.com">تواصل معي</a> احرص على تبديل عنوان البريد بالعنوان الخاص بك
- 3 اجابة
-
- 2
-
-
يمكنك اكتساب أي مهارة إضافية بجانب تخصصك وبما أن تخصصك يتقاطع مع مجال البرمجة سيكون ذلك إضافة جيدة لك، هناك طلب في مجال البرمجة وقلة في العرض والخبرات والمهارات لذا يوجد فرص جيدة لمن يتقن هذا المجال على الأقل في المستقبل القريب. دورة علوم الحاسب ستعرفك على كثير من المفاهيم الأساسية ضمن هذا المجال وستوسع آفاقك للفهم الصحيح ضمن مواضيع عدة وهي تعتبر بداية جيدة للدخول ضمن هذا المجال، يمكنك قراءة المقال التالي: يمكنك العمل بشكل حر من المنزل، لن تكون مضطرًا للالتزام بوقت فقط عليك اكتساب بعض مهارات تنظيم الوقت للموازنة بين الدراسة والالتزام بالعمل، منصات العمل الحر مثل مستقل و خمسات تتيح لك استثمار مهاراتك مع من يحتاجها مع ضمان الطرف الثاني لك، يمكنك الاطلاع على المقال التالي: اشتراكك بأحد دورات أكاديمية حسوب يضمن لك الوصول لمحتوياتها مدى الحياة، وخلال الدورة يوجد دعم من قبل مدربين متخصصين يمكنك تقديم أي استفسار او طرح مشكلة تواجهك وسيقومون بمساعدك، كما أن هناك ضمان لاسترداد مبلغ الدورة من خلال عملك الشخصي خلال 6 أشهر، وفي حال لم ترغب بإكمال الدورة يمكنك الانسحاب منها وإعادة المبلغ المدفوع بعد التواصل مع مركز المساعدة يمكنك القراءة أكثر ضمن صفحة الأسئلة الشائعة
- 2 اجابة
-
- 1
-
-
بالإضافة للكتب المذكورة يمكنك مراجعة وقراءة مقالات عديدة ومتنوعة في مواضيع تخصصية وعامة ولكل المستويات عن استخدامات لغة بايثون العديدة هنا في الأكاديمية سلسلة مقالات دليل تعلم بايثون تقدم شروحات في جوانب اللغة الأساسية قسم مقالات بايثون في الأكاديمية يحوي مواضيع متنوعة ولمختلف المواضيع والمستويات، مواضيع مثل تحليل البيانات وتعلم الآلة والخوارزميات كتاب مدخل إلى الذكاء الاصطناعي وتعلم الآلة يشرح أساسيات في مجال الذكاء الاصطناعي وتعلم الآلة، يمكنك قراءته بشكل مباشر أو تحميله بصيغة PDF
-
في حال استخدام مخدم Apache يمكننا إنشاء ملف ضمن المجلد الرئيسي للمشروع بالاسم htaccess. (نقطة بداية اسم الملف) محتواه التالي: RewriteEngine On RewriteBase / RewriteRule ^/(.+) /home/user/.../public/$1 [L,QSA] مع استبدل المسار التالي بمسار مجلد public في نظام الملفات /home/user/.../public/$1 ^^^^^^^^^^^^^^^^^^^^^ public مسار مجلد سنتمكن من الوصول إلى الملفات داخل مجلد public عبر ذكر مساره النسبي فقط دون ذكر مسار مجلد public
-
كما ذكرت لك سابقا ملفات htaccess هي مخصصة فقط لإعداد Apache، سواء كنت في مرحلة التطوير أو الانتاج ستحتاج لوجود مخدم Apache معد بشكل سليم لتخديم ملفات موقعك معظم الاستضافات تكون مجهزة مسبقًا بمخدم Apache ويكون عليك فقط رفع ملفات موقعك إليها متضمنة أي ملفات htaccess يحتاجها مشروعك للعمل بشكل صحيح. لاختبار ملفات htaccess محليًا انت مضطر لاستخدام أحد البرامج التي تتيح مخدم Apache مثل WAMP أو XAMMP
-
هل يمكنك إرفاق الخطأ الذي يظهر كي نتمكن من مساعدتك
-
يمكنك محاولة تضمين الحل في أي لغة برمجة تفضلين وحين مواجهتك لمشكلة معينة أو استفسار يمكنك إرفاق الشيفرة المتعلقة بالسؤال وتوضيح استفسارك وسيتمكن الزوار من مساعدتك. من غير الممكن تقديم حل للواجبات.
- 1 جواب
-
- 1
-
-
live server فقط يقوم بتخديم ملفاتك برابط محلي مباشرة دون الحاجة لذكر مسار الملف بشكل كامل، ملفات htaccess هي ملفات مخصصة للتعامل مع مخدم Apache، يمكنك من خلالها التأثير على عمل Apache فقط أما عندما تستخدم مخدم آخر هذه الملفات لن يتم أخذها بعين الاعتبار، لذا انت ستحتاج لمخدم Apache لهذا الغرض
-
نعم لأجل ذلك عليك تثبيت مخدم WAMP على ويندوز وهو يحوي على مخدم Apache وبعدها قم بنقل ملفات موقعك إلى داخل مجلد www ضمن مسار الذي ثبتت فيه خادم WAMP ليتم تخديمها بشكل صحيح وذلك بعد تشغيل البرنامج
-
كيف تحاول فتح ملفات موقعك عبر المتصفح هل عن طريق فتح الملفات بشكل مباشر ؟ إذا كان كذلك فأنت لا تستخدم مخدم Apache بالأساس وهو ما يتم عادة إعداده عن طريق ملفات htaccess. ولا يمكنك تغيير طريقة وصولك للملفات عن طريق المتصفح