اذهب إلى المحتوى

Mustafa Suleiman

الأعضاء
  • المساهمات

    9626
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    296

أجوبة بواسطة Mustafa Suleiman

  1. الأمر ليس له علاقة بالإنترنت، فلا يوجد مسار مماثل لما قمت بكتابته في سيرفر XAMPP، في البداية عليك وضع مجلد المشروع في مجلد htdocs في xampp، ثم تهيئة المشروع وتثبيت الحزم اللازمة وإنشاء قاعدة البيانات في php myadmin في xampp ثم تصفح المشروع من خلال رابط كالتالي:

    http://127.0.0.1/wordpress/

    مع استبدال wordpress باسم مجلد المشروع لديك في xampp.

  2. توجه إلى Control panel ثم ابحث عن إعدادات الصوت وتأكد تحويل الصوت إلى الخرج الذي تريده.

    Capture4.thumb.png.2b6b1c72069dee01e8048e7f4274f30b.png

    وإن لم تكن لديك الواجهة السابقة تفقد التالي:

    audio-not-working-laptop-control-panel-hardware-sound.webp.11de1231f61ef5f0b47483a0c2bb448d.webp

    ثم اضغط على السماعة التي تريدها بزر الفأرة الأيمن ثم اختر enable ثم set as default 

    enable-set-no-speakers-or-headphones-are-plugged-in.webp.d041377ea0ce988a067720252a48fec6.webp

  3. بتاريخ 9 دقائق مضت قال Zainab Aljofe:

    نعم اني طالبة امن سيبراني  مشروع تخرجي  Intrusion detection system using deep learing عندي اشكال بالجزء العملي مداعرف شلون طلعtesting هو الكود عندي بس مو اني كتبته لذالك مدااعرف  اطلعه

    استخدمي وظيفة load_dataset() من sklearn لتحميل مجموعة بيانات كشف التسلل، وهناك مجموعات بيانات كشف التسلل العامة المتاحة، مثل CICIDS2017 أو CSE-CICIDS.

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

    ثم معالجة البيانات وإنشاء الإختبارات وتقييم النموذج، وستحتاجين إلى التالي:

    • StandardScaler(): تطبيع البيانات.
    • OneHotEncoder(): ترميز البيانات الفئوية.
    • CountVectorizer(): تحليل ترددات الكلمات.
    • TfidfVectorizer(): تحويل وثائق النص إلى ميزات TF-IDF.
    • accuracy_score(): حساب دقة النموذج.
    • recall_score(): حساب معدل الكشف (TPR).
    • precision_score(): حساب الدقة.

    ستجدي هنا مرجع جيد لك، وبيانات تدريب وإختبار ونموذج للكود في الصفحة 132:

    https://drive.google.com/file/d/1jU0pIHpAOjk_1e4COwZwn5ilcNISxo1Y/view

    • شكرًا 1
  4. بتاريخ 2 ساعة قال Zainab Aljofe:

    السلام عليكم ممكن سؤال اني مشروع تخرجي كشف التسلل بالديب ليرنك واريد مساعده 

    وعليكم السلام، ما التسلل المراد اكتشافه؟ هل المقصود مجال الأمن السيبراني، من أجل تحسين دقة وكفاءة أنظمة كشف التسلل التقليدية؟

    وأرجو توضيح السؤال والمطلوب لمساعدتك.

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

    ما يقصده هو إضافة أكواد Meta Pixel الخاصة بفيسبوك وأكواد التتبع الخاصة بتيك توك مثلاً وغيرهم مثل Google analytics.

    وذلك لا علاقة له بالاستضافة، أيضًا بالنسبة للـ SEO، فذلك يتوقف على جودة كود الموقع وتوافقه مع معايير الـ technical SEO.

     

    • شكرًا 1
  6. عليك تحديد من هو المقصود بالمخطط؟ هل هو مخصص للمطورين أم للمستخدمين غير المتخصصين؟

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

    استخدام رموز محددة لتمثيل عمليات قاعدة البيانات الشائعة، مثل:

    • ⊕ للإضافة
    • ⊘ للحذف
    • ≢ للتحديث
    • ⊅ للاستعلام

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

    مع ملاحظات لشرح تفاصيل عمليات قاعدة البيانات، مثل الجداول والأعمدة التي يتم التأثير عليها.

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

  7. في الواجهة الأمامية يتم استخدام ESM والتي هي اختصار لـ ECMAScript modules، بينما في Node.js يتم استخدام نظام الوحدات modules باسم CommonJS.

    وستجد تفصيل عن ذلك هنا:

    لكن مؤخرًا كان هناك إتجاه إلى استخدام ESM أيضًا في Node.js، وستجد أن المكتبات الحديثة تدعم ذلك بشكل إفتراضي وتم التخلي عن CommonJS بها، وكان يجب القيام بخطوات بسيطة لكي تتمكن من استخدام ESM في Node.js مثل وضع خاصية type بقيمة module في ملف package.json.

    أو بشكل أبسط استخدام صيغة mjs. بدلاً من js. للملف الذي تريد به استخدام ESM.

    لكن لا حاجة إلى ذلك الآن، فقد دعم ذلك في إصدار 22 من Node.js وأصبح بإمكانك استخدام ESM بدون ما سبق، وذلك باستخدام require لكن ذلك لن يعمل في حال كانت الحزمة تستخدم top level await 

  8. يوجد بدائل بالفعل، حيث أنّ prompt هي حزمة شائعة في Node.js لطلب مدخلات المستخدم من واجهة سطر الأوامر (CLI).

    والحزم البديلة هي:

    • Inquirer
    • commander

    وكمثال سنقوم بتثبيت inquirer:

    npm i inquirer@^8.0.0

    وطريقة الاستخدام

    import inquirer from 'inquirer';
    
    inquirer
      .prompt([
        {
          type: 'input',
          name: 'userName',
          message: "what's your name?",
        },
      ])
      .then(answers => {
        console.log(`Hey ${answers.userName}`);
      })
      .catch(error => {
        if (error.isTtyError) {
          // Prompt couldn't be rendered in the current environment
        } else {
          // Something else went wrong
        }
      });

    وتستطيع حتى طرح أسئلة والحصول على الإجابات من خلال خيارات من متعدد كالتالي، لكن عليك تغيير نوع السؤال type إلى checkbox:

    68747470733a2f2f63646e2e72617767.jpg.55906bfed460ce117f16f7e3570e720d.jpg

     

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

    • customers (مع أعمدة customer_id و name)
    • orders (مع أعمدة order_id و customer_id و order_date)
    • order_items (مع أعمدة order_item_id و order_id و product_id و quantity)

    فنربط كالتالي:

    SELECT c.name, o.order_date, oi.product_id, oi.quantity
    FROM customers c
    JOIN orders o ON c.customer_id = o.customer_id
    JOIN order_items oi ON o.order_id = oi.order_id;

    أما في حال ربط الجداول بعلاقة "واحد إلى عدة"، فنستخدم مفتاح رئيسي من جدول واحد كمفتاح أجنبي في جدول آخر، على إفتراض الجداول كالتالي:

    • employees (مع أعمدة employee_id و name)
    • departments (مع أعمدة department_id و name)
    • employees_departments (مع أعمدة employee_id و department_id)

    نربط بينها:

    SELECT e.name, d.name
    FROM employees e
    JOIN employees_departments ed ON e.employee_id = ed.employee_id
    JOIN departments d ON ed.department_id = d.department_id;

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

    • students (مع أعمدة student_id و name)
    • courses (مع أعمدة course_id و name)
    • student_courses (مع أعمدة student_id و course_id)

    فنربط بالشكل:

    SELECT s.name, c.name
    FROM students s
    JOIN student_courses sc ON s.student_id = sc.student_id
    JOIN courses c ON sc.course_id = c.course_id;

    الربط بين الجداول

  10. استخدم حزمة window_manager،  قم بالتثبيت كالتالي

    flutter pub add window_manager

    ثم استيراد الحزمة:

    import 'package:window_manager/window_manager.dart';

    ثم في الكود الرئيسي main للتطببيق  ضع التالي بعد RunApp لفتح التطبيق في وضع full screen:

    WidgetsFlutterBinding.ensureInitialized();
    // Must add this line.
    await windowManager.ensureInitialized();
    
    // Use it only after calling `hiddenWindowAtLaunch`
    windowManager.waitUntilReadyToShow().then((_) async {
    // Hide window title bar
    await windowManager.setTitleBarStyle('hidden');
    await windowManager.setFullScreen(true);
    await windowManager.center();
    await windowManager.show();
    await windowManager.setSkipTaskbar(false);
    });

    وللخروج من وضع full screen نقوم بوضع false:

    await WindowManager.instance.setFullScreen(false);

     

    • أعجبني 1
  11. ستجد تبويب باسم دوراتي عند الضغط عليه ستجد الدورات التي اشتركت بها:

    50960333-df44-488f-88ab-90d93c60f37a.thumb.png.b5829f2885fac59090e3893f14f54721.png

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

    0291d275-9894-42a7-a080-1a03913d1b96.thumb.png.6b39aa0bf0b9af5a736903e3655b082d.png

    • أعجبني 1
  12. ستحتاج أولاً إلى أساسيات HTML, CSS, JS

    ثم إلى التركيز على الأساسيات في PHP:

    • المتغيرات
    • أنواع البيانات
    • المعاملات المنطقية والرياضية
    • الجمل الشرطية وحلقات التكرار
    • الدوال
    • التعامل مع النماذج html forms
    • كيفية تنفيذ عمليات CRUD 

     ثم تعلم OOP ثم تعلم الطرق السحرية magic methods في PHP حيث يتم استخدامها بكثرة في لارافل ومن خلال ستتمكن من فهم ما يدور في الخلفية.

    • ثم فهم نمط MVC وطبيعة عمله والفائدة منه.
    • ثم تعلم أساسيات SQL والـ ORM مثل MySQL، وكيفية التعامل مع قواعد البيانات من خلال PHP وكيفية تصميم النماذج models لقواعد البيانات.
    • ثم تعلم كيف تقوم بتنفيذ Routing باستخدام PHP.

    بعد ذلك تستطيع البدء بتعلم لارافل من خلال كورس مُكتمل وليس دروس قصيرة.

    • أعجبني 1
  13. بتاريخ 1 ساعة قال Ahmed Farid5:

     

    كانت تواجهني نفس المشكلة ايضا ... واكن ولصت لحل وهو عن طريق خاصية object-fit بعد البحث وكانت هي الحل

    section#Home video {
        height: 100%;
        width: 100%;
        object-fit: cover;
        position: absolute;
        z-index: -1;
    }

     وحلت المشكلة

    ذلك مذكور في التعليق من البداية يبدوا أنك لم تنتبه إليه:

     

  14. حاول تغيير اسم ملف php.ini-development إلى php.ini والذي ستجده في المسار التالي:

    zeffa\.config\herd\bin\<version>\php.ini

    حيث أنّ zeffa هو مجلد المستخدم لديك في قرص الـ C في مجلد users.

    وقبل التعديل تأكد من إيقاف جميع الخدمات في herd كالتالي:

    menubar-restart.thumb.png.8cf27cc2535b8972f96ba07631bd56e0.png

    ثم قم بإعادة التشغيل من منفذ الأوامر:

    herd restart

    أو من خلال الواجهة بالضغط على restart أو start all.

    • أعجبني 1
  15. تعتمد مكتبة NumPy على مصفوفات متجانسة لتخزين البيانات، مما يعني أن جميع العناصر في المصفوفة يجب أن تكون من نفس النوع، ونوع البيانات المُستخدم لتخزين قوى 2 هو العدد العشري ذو الدقة المزدوجة (float64).

    على الرغم من أن ذلك النوع من البيانات يمكنه تمثيل أرقام كبيرة، إلا أن له دقة محدودة، مع ازدياد قيمة n، تصبح قوى 2 كبيرة جدًا لدرجة تتجاوز دقة تمثيلها كأعداد عشرية ذوات دقة مزدوجة.

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

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

    أنصحك بالإعتماد على مكتبة gmpy2 التي توفر دقة حسابية أعلى من مكتبة NumP وتسمح بحساب قوى 2 بدقة أكبر.

    أو استخدام بايثون فقط فاللغة قادرة على تنفيذ ما تريد.

    • أعجبني 1
  16. بالطبع سواء عملت كمستقل أو في شركة Full-time، لكن عليك عرض ذلك ضمن مهاراتك بشكل إحترافي، بذكر ما الفائدة التي ستعود على العميل من تلك المهارات ولماذا هي مهمة من خلال شرح بسيط وسهل ومختصر.

    بالنسبة للشركة يكفي ذكر ذلك في الـ CV، من خلال سرد المهارات وما قمت به ضمن ذلك المجال، وأثناء مقابلة العمل عليك توضيح ذلك بشكل عملي من خلال طريقة CAR والتي تعني Context, Action, Result أو سياق ( سرد حدث أو تحدي أو مشكلة)، ثم  فعل قمت به ثم أدى ذلك إلى نتيجة معينة.

    لكن عليك أن تكون واقعي وأن تطرح راتب متوقع بفارق ليس بالكبير عن متوسط الرواتب في سوق العمل الذي تستهدفه، بحيث تتوقع زيادة راتبك بنسبة 20% إلى 50% وكزيادة 40% أراها جيدة بناءًا على كلامك.

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

    وعامًة لتحويل لتحويل مشروع لارافل إلى تطبيق سطح مكتب ممكن من خلال مكتبة PHP Desktop والفكرة الخاصة بها هي تشغيل المشروع من خلال محرك chromium أي تشغيل التطبيق في واجهة تشبه تطبيقات سطح المكتب لكنها تعتمد على المحرك الخاص بالمتصفح، فكر بالأمر على أنه مثل إطار Electrone.js الخاص بجافاسكريبت.

    ستجد تفصيل هنا:

     

    • أعجبني 1
×
×
  • أضف...