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

Mustafa Suleiman

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

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

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

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

    296

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

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

    أيضًا رخصة Apache 2.0 وGPLv3 أو (Creative Commons Zero (CC0.

    لو كان الأمر بغرض تعليمي فافعل ما تريد لا ضرر بذلك.

  2. ستحتاج إلى قراءة التالي:

    وعامًة بنود العقد تشمل

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

    طيب عندي سؤال مالفرق بين حسوب النقاش وحسوب الاكادمية يعني لو بنزل مقال وين انزله 

    ولو بقراء عن شيء وين افضل مكان اتوجه له 

    منتدى الأسئلة والأجوبة هو بداخل أكاديمية حسوب، وبه أقسام مختلفة للسؤال والنقاش حول التالي:

    • أسئلة البرمجة
    • أسئلة ريادة الأعمال
    • أسئلة العمل الحر
    • أسئلة التسويق والمبيعات
    • أسئلة التصميم
    • أسئلة DevOps
    • أسئلة البرامج والتطبيقات

    والأكاديمية بها دروس ومقالات في مجالات مختلفة مثل البرمجة، وإذا أردت كتابة مقالة تفقد الدليل التالي:

    https://academy.hsoub.com/pages/write-for-us/

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

  4. بتاريخ 3 دقائق مضت قال محمد المصعبي3:

    التطبيقات الي ذكرتها هل هي على الويب راح ننشرها

    لم يتم تضمين ذلك، لكن سيتم مساعدتك بالأمر عند الوصول لمرحلة نشر التطبيق وإرشادك للطريقة السليمة والاستضافة المناسبة، ويمكنك تفقد التالي:

     

  5. بتاريخ 20 دقائق مضت قال محمد المصعبي3:

    طيب هل في دوره php هل راح ندرس كيف نتعامل معها 

    وهل راح نبني تطبيقات وننشرها على الاندرويد او على الموقع 

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

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

    والمشاريع هي:

    • إنشاء RESTful API باستخدام Laravel
    • بناء شبكة تواصل اجتماعي تشبه إنستغرام
    • متجر إلكتروني لبيع الكتب
    • تطوير نظام إدارة محتوى
    • تطبيق لتقييم الأماكن على الخرائط
    • تطبيق مشاركة فيدوهات
    • تطوير موقع إعلانات مبوبة
    • تطوير قوالب ووردبريس
    • تطوير قالب ووردبريس أخباري
    • تطوير متجر إلكتروني في ووردبريس عبر ووكومرس
  6. دائمًا ستجد في المستند الرسمي للمكتبة أو الإطار دليل تحديث للنسخة الجديدة باسم migration guide، وكمثال بالنسبة لمكتبة react ستجد في المستند الرسمي الدليل التالي:

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

    ويمكنك متابعة أشخاص لهم خبرة في المجال الذي تنوي التخصص به على LinkedIn وTwitter لمتابعة التغيرات والتعلم منهم.

    • أعجبني 1
  7. تلك ميزة جديدة في بايثون 3.7 وما بعدها، لغرض إنشاء كلاسات تحتوي على بيانات فقط (بدون أساليب أخرى)، وتُستخدم لتخزين المعلومات التي ستتم نقلها بين أجزاء مختلفة من البرنامج أو النظام.

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

    تستطيع استيراد الديكوريتور @dataclass من وحدة dataclasses ثم استخدامه لتعريف كلاس بيانات:

    @dataclass
    class Person:
      name: str
      age: int
      email: str

    وذلك التعريف يُنشئ فئة Person مع ثلاثة خصائص  name من نوع str، age من نوع int، و email من نوع str.

    ويتم التحقق من نوع البيانات تلقائيًا عند إنشاء مثيل من الفئة، وباستطاعتك تعديل الخصائص بعد إنشاء المثيل، ومقارنة مثيلات الفئة باستخدام عامل المقارنة ==

    @dataclass
    class Person:
      name: str
      age: int
      email: str
    
    person1 = Person("Jasem", 30, "Jasem@example.com")
    person2 = Person("Jasem", 25, "Jasem@example.com")
    
    print(person1.name)  
    print(person2.age)  
    
    if person1 == person2:
      print("The persons are equal")
    else:
      print("The persons are not equal")

     

    • أعجبني 1
  8. لا حاجة لك بذلك، ما الفائدة من معرفة مكان تثبيت الحزمة؟ فليس لك حاجة بالملفات الخاصة بها.

    ويتم تثبيتها في مجلد بايثون في قرص الـ C في الويندوز، وذلك في مسار مشابه للتالي:

    C:\Users\اسم المستخدم لديك\AppData\Local\Programs\Python\Python310\Lib\site-packages

    ولرؤية المكتبات المثبتة global أي عالمي للاستخدام بأي مشروع استخدم الأمر:

    pip list

    ولحذف أي حزمة استخدم الأمر:

    pip uninstall اسم الحزمة

    ومن الأفضل إنشاء بيئة إفتراضية في مجلد المشروع وسيتم تثبيت المكتبات في نفس مجلد المشروع في مجلد البيئة الإفتراضية الذي يوجد به مجلد باسم lib

    • أعجبني 1
  9. يُحدث خلط شائع بين لغة SQL ونظم إدارة قواعد البيانات العلائقية (RDBMS)، فعلى الرغم من ارتباطهما الوثيق، إلا أنهما مفهومان مختلفان.

    حيث أنّ لغة SQL (Structured Query Language)، لغة برمجة معيارية تُستخدم للتفاعل مع قواعد البيانات العلائقية، وتسمح بإنشاء الجداول، وإضافة البيانات، واستردادها، وتعديلها، وحذفها، تُستخدم لكتابة أوامر مثل SELECT و INSERT و UPDATE و DELETE، أي تُعتبر لغة إعلانية، حيث تصف ما تريدين فعله بالبيانات بدلاً من شرح كيفية القيام بذلك.

    بينما نظام إدارة قواعد البيانات العلائقية (RDBMS)، هو برنامج لإدارة وتنظيم البيانات في قاعدة بيانات علائقية يخزن البيانات في جداول مرتبطة ببعضها البعض من خلال علاقات محددة ويُنفذ قواعد معالجة البيانات وضمان اتساقها.

    و أنظمة إدارة قواعد البيانات العلائقية الشائعة هي MySQL و PostgreSQL و Oracle Database و Microsoft SQL Server.

    الأمر بحاجة إلى تفصيل ستجديه هنا:

     

  10.  <div> هو أشهر عنصر في لغة HTML لأنه يُستخدم لإنشاء قسم أو حاوية داخل مستند HTML، ولا يُؤثّر على محتوى أو تخطيط المستند بشكلٍ تلقائي، بل يتطلب استخدام لغة CSS لتصميمه وتحديد خصائصه، أي لتنظيم وتجميع أجزاء مختلفة من صفحة الويب وتجميع مجموعة من العناصر معاً وتطبيق تنسيقات وأنماط مشتركة عليها.

    ويستحوذ على كامل عرض المستند (الصفحة) بشكل إفتراضي لكونه عنصر من نوع Block.

    مثال لإنشاء قسم لعرض فقرة من النص:

    <div id="content">
      <p>هذا هو محتوى الصفحة.</p>
    </div>

    ستجد تفصيل أكثر هنا:

     

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

    ولمشاهدة باقي المحتوى الدورة يجب الإشتراك بها.

    ولتحديد الدورة المناسبة لك، عليك تحديد المجال الذي تريد التخصص به لترشيح الدورة المناسبة.

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

    • أعجبني 1
  13. بتاريخ On 2‏/5‏/2024 at 18:32 قال Ail Ahmed:

    بشمهندس خالد سوال لو سمحت

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

    ايو صح

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

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

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

    بجانب أنها غير مناسبة في حال كانت الموارد (مثل الذاكرة أو وقت المعالجة) محدودة.

    • أعجبني 1
  14. ما تريده هو العمل الحر كمدخل بيانات Data entry، لكن يجب إمتلاك مهارات في ذلك المجال وهي القدرة على التعامل الجيد مع برامج مايكروسوفت وتعديل الملفات وتخصيصها، وبالأخص برامج Excel, Word, PowerPoint.

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

     

  15. بالفعل الأمر غير متوفر بالـ API، سيتعين عليك القيام بذلك بنفسك من خلال تحويل الوقت، ولحسن الحظ يوجد دالة مضمنة في اللغة توفر لك ما تريد وهي toLocaleTimeString.

    وإليك مثال:

    function convertTime(timeString) {
      const time = new Date('1970-01-01T' + timeString + 'Z');
    
      const options = {
        timeZone: 'UTC',
        hour12: true,
        hour: 'numeric',
        minute: 'numeric'
      };
    
      return time.toLocaleTimeString('en-US', options);
    }
    
    let convertedTime = convertTime("16:28:00")
    
    document.getElementById('myTime').innerText = convertedTime

    html:

        <h1 id='myTime'></h1>

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

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

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

  17. المطلوب غير واضح، لكن إحدى الطرق هي بالإعتماد على حلقة foreach مع متغير مساعد لتتبع البيانات التي تم تكرارها مسبقًا، كالتالي:

    $data = array("أحمد", "علي", "محمد", "أحمد", "فاطمة");
    $seen = array();
    
    foreach ($data as $item) {
      if (!in_array($item, $seen)) {
        echo $item . "<br>";
        $seen[] = $item;
      }
    }

    أو استخدام دالة array_unique() لإنشاء مصفوفة جديدة تحتوي فقط على العناصر الفريدة في المصفوفة الأصلية:

    $data = array("أحمد", "علي", "محمد", "أحمد", "فاطمة");
    $uniqueData = array_unique($data);
    
    foreach ($uniqueData as $item) {
      echo $item . "<br>";
    }

     

  18. تلك مجموعة من أدوات JavaScript خفيفة الوزن مصممة لتحسين تجربة المستخدم في تطبيقات Ruby on Rails، ويوفر Hotwire مجموعة من الميزات التي تجعل من السهل إنشاء تطبيقات سريعة الاستجابة وديناميكية باستخدام أداة Turbo، بالتالي تحميل صفحات الويب الجديدة دون إعادة تحميل الصفحة بأكملها، مما يوفر تجربة مستخدم أكثر سلاسة وسريعة.

    وتطوير تطبيقات WebSockets باستخدام أداة Stimulus تستطيع أكواد JavaScript تفاعلية دون الحاجة إلى استخدام مكتبات إضافية.

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

    المصادر هي المستند الذي تم تطويره بواسطة مجتمع المستخدمين Community-driven documentation:

    https://hotwire.io/documentation

    أو ابحث على اليوتيوب عن hotwired guide

×
×
  • أضف...