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

لوحة المتصدرين

  1. Mustafa Suleiman

    Mustafa Suleiman

    الأعضاء


    • نقاط

      2

    • المساهمات

      19673


  2. Alaa Aljandali Alrifaei

    Alaa Aljandali Alrifaei

    الأعضاء


    • نقاط

      1

    • المساهمات

      15


  3. Ali Ahmed55

    Ali Ahmed55

    الأعضاء


    • نقاط

      1

    • المساهمات

      2075


  4. عبد الوهاب بومعراف

    • نقاط

      1

    • المساهمات

      2196


المحتوى الأكثر حصولًا على سمعة جيدة

المحتوى الأعلى تقييمًا في 09/30/24 in أجوبة

  1. هل يمكنني تخطي هذا المسار تطبيقات عملية على النماذج النصية الكبيرة LLMs ثم العودة اليه لاحقا بسبب عدم تمكني من التطبيق لسبب ما أم هذا المسار يؤثر بشكل كبير على ما بعده
    1 نقطة
  2. السلام عليكم انا اتبعت كل الخطوات التي فعلها المدرس ولاكن بالنهاية ظهر لي هذا الخطء كررت التعليمات اكثر من مرة من غير اي جدوى
    1 نقطة
  3. لو سمحت انا مش فاهم في السطر دا في جزء ال id او المعرف id بشكل عام و ليه لما عملنا ابديت علي description ظهر update task في النتيجه مكان new task 3 بالتحديد $query = "UPDATE tasks SET description ='Update Task', completed = 1 WHERE id = 10";
    1 نقطة
  4. مرحبا رياض، ان كان السؤال يخص دورة معينة، يفضل طرحه أسفل الدرس فهنالك مساحة مخصصة لتعليقات الطلبة. عموما، في الشيفرة التي ذكرتها، الـ id هو عمود في الجدول يمثل معرفًا فريدًا لكل سجل في هذا الجدول. يكون لكل سجل id مختلف، ويستخدم هذا العمود للتمييز بين السجلات المختلفة. وفي حالتك، يتم استخدام عمود id للتأكد من أنك تقوم بتحديث السجل الصحيح. والجملة WHERE id = 10 تحدد أن عملية التحديث يجب أن تطبق فقط على السجل الذي يكون فيه id يساوي 10. بدون هذه الجملة، قد تؤدي العملية إلى تحديث جميع السجلات في الجدول، وليس السجل المقصود فقط. إجمالا: الكود يقوم بتحديث سجل محدد (السجل الذي يحتوي على id = 10) في جدول tasks. أي أنه يقوم بتعديل قيمة العمود description إلى 'Update Task'، ويقوم بتعديل العمود completed ليصبح 1 (أي اكتمل). عندما يتم تنفيذ جملة التحديث هذه، يتم تغيير قيمة العمود description للسجل ذي id = 10 إلى 'Update Task'. إذا كانت القيمة السابقة لهذا السجل هي 'New Task'، فإن العملية تستبدلها بالقيمة الجديدة 'Update Task'. وبالتالي، عند الاستعلام عن هذا السجل بعد تنفيذ التحديث، ستظهر لك القيمة الجديدة (Update Task)، وليس القيمة القديمة (New Task). هذا ما في الأمر.
    1 نقطة
  5. السلام عليم هي الSQL لغة برمجه ؟
    1 نقطة
  6. ليست لغة برمجة تقليدية مثل بايثون أو جافا، بل هي لغة استعلام مخصصة للتعامل مع قواعد البيانات، و تستخدم لإدارة البيانات، بما في ذلك عمليات الإدخال، التعديل، الحذف، والاستعلام عن البيانات من قاعدة البيانات، يعني SQL مصممة خصيصا لإجراء عمليات على البيانات المخزنة في قواعد البيانات العلائقية، و تحتوي على بعض الخصائص الشبيهة بلغة البرمجة، مثل الحلقات والشروط، ولكنها لا تستخدم لتطوير تطبيقات برمجية كاملة بحد ذاتها.
    1 نقطة
  7. فهم تعدد المهام Concurrency يتطلب استيعاب لبعض المفاهيم الأساسية، وصعوبة كتابة الكود تأتي من عدم وضوح الهدف المراد تحقيقه، فتعدد المهام ليس أداة واحدة، بل مجموعة من التقنيات، واختيار التقنية المناسبة يعتمد على ما تريد تحقيقه. أولاً الـ Processes أو العمليات هي عملية مستقلة تمامًا عن باقي العمليات، لها مساحة ذاكرة خاصة بها، وإنشاء عملية جديدة يعني إنشاء برنامج جديد تمامًا. وذلك مناسب للمهام التي تتطلب عزلًا تامًا أو استخدام موارد كبيرة، والمكتبة المستخدمة هي multiprocessing. للتوضيح بمثال بسيط لحساب مربع الأعداد من 1 إلى 5 في عمليات منفصلة: import multiprocessing def square(n): return n * n if __name__ == '__main__': with multiprocessing.Pool(processes=5) as pool: results = pool.map(square, range(1, 6)) print(results) # Output: [1, 4, 9, 16, 25] المفهوم الثاني هو الخيوط Threads وهي خيوط متعددة تعمل ضمن نفس العملية، وتشارك نفس مساحة الذاكرة، وإنشاء خيط أسرع من إنشاء عملية، لكنها تشارك الموارد. وهي مناسبة للمهام التي تتطلب سرعة عالية وتشارك البيانات، لكن يجب الانتباه إلى مشاكل التزامن (Race Conditions). والمكتبة المستخدمة هي threading. وإليك مثال بسيط لطباعة رسائل من خيوط مختلفة: import threading import time def print_message(message): for i in range(5): print(f"Thread {threading.current_thread().name}: {message}") time.sleep(1) if __name__ == '__main__': thread1 = threading.Thread(target=print_message, args=("Hello",)) thread2 = threading.Thread(target=print_message, args=("World",)) thread1.start() thread2.start() thread1.join() thread2.join() المفهوم الثالث هو المهام المتزامنة Coroutine/Asyncio ولا تنشئ عمليات أو خيوط جديدة، بل تنتقل بين المهام بشكل غير متزامن باستخدام الكلمات المفتاحية async و await، ومناسب للمهام التي تتضمن انتظارًا (مثل طلبات الشبكة) أي عمليات I/O كثيفة (مثل الشبكات، قواعد البيانات)، حيث لا يتم حجب الخيط أثناء الانتظار. والمكتبة المستخدمة هي asyncio، وكمثال بسيط لطباعة رسائل مع تأخير باستخدام Asyncio: import asyncio async def print_message(message, delay): await asyncio.sleep(delay) print(f"Message: {message}") async def main(): await asyncio.gather( print_message("Hello", 2), print_message("World", 1) ) asyncio.run(main()) بالتالي عليك تحديد ما الذي تريد تحقيقه بتعدد المهام؟ هل تريد تسريع عملية حسابية؟ هل تريد التعامل مع طلبات متعددة من الشبكة؟ فالعمليات مناسبة للمهام المستقلة، الخيوط للمهام التي تشارك البيانات، والمهام المتزامنة للمهام التي تتضمن انتظارًا. ولا تحاول كتابة برنامج معقد من البداية، ابدأ بمثال بسيط وفهم كيفية عمله قبل إضافة تعقيدات.
    1 نقطة
  8. أثناء تثبيت Postgres هل قمت بكتابة باسورد؟ عليك كتابته وليس الباسورد الخاص بـ pgAdmin فذلك هو ال Master password للوصول لسيرفرات قاعدة البيانات وليس باسورد قاعدة البيانات نفسها، في حال قمت بكتابة نفس الباسورد فلا مشكلة. المستخدم الإفتراضي لقاعدة البيانات هو postgres عليك كتابة كلمة المرور التي قمت بتحديدها. إن لم تتذكرها، قم بكتابة التالي في psql لتعيين كلمة مرور: ALTER USER postgres WITH PASSWORD 'admin' تستطيع تعديل admin إلى كلمة تريدها. بعد ذلك قم بإعادة تشغيل Postgres من خلال تنفيذ التالي في CMD أو أي منفذ أوامر وليس من خلال PSQL: net stop postgresql net start postgresql
    1 نقطة
×
×
  • أضف...