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

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

  1. سامح أشرف

    سامح أشرف

    الأعضاء


    • نقاط

      6

    • المساهمات

      2934


  2. Wael Aljamal

    Wael Aljamal

    الأعضاء


    • نقاط

      2

    • المساهمات

      6975


  3. Adnane Kadri

    Adnane Kadri

    الأعضاء


    • نقاط

      2

    • المساهمات

      5256


  4. وليد الجمل

    وليد الجمل

    الأعضاء


    • نقاط

      1

    • المساهمات

      14


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

المحتوى الأعلى تقييمًا في 10/01/21 in أجوبة

  1. لغة CSS ليست لغة برمجة مفتوحة المصدر ولكنهي مجرد قواعد عامة يتم تطبيقها برمجيًا من قِبل كل متصفح بطريقته الخاصة، لذلك قد نجد في بعض الأحيان إختلاف في بعض قواعد CSS في بين بعض المتصفحات، وأيضًا يوجد بعض الخصائص الإضافة التي تعمل أحد المتصفحات دون غيرها مثل الخصائص التي تبدأ بـ -o- أو -moz- أو -webkit- وهذه الخصائص لن تعمل على المتصفحات الأخرى. لغة CSS و كذلك HTML يتم تطويرها من قِبل مؤسسة World Wide Web Consortium (W3C) والتي تضع قواعد هاتان اللغتان ومن ثم يقوم كل متصفح بتطبيق هذه القواعد بطريقته الخاصة من خلال ما يسمح بالمحرك Engine وكل متصفح لديك المحرك الخاص به والذي يعمل على تطويره، فعلى سبيل المثال يستخدم Chrome محرك يسمى Blink بينما firefox يستخدم محرك Gecko ومتصفح internet explorer يستخدم محرك Trident ومتصفح Edge يستخدم EdgeHTML، كما توجد محركات أخرى تستعمل في متصفحات مختلفة، ويمكنك معرفة هذه المحركات من Wikipedia من هنا إن كنتِ تريدين إستخدام خصائص إضافية في CSS فربما سيساعدك إستخدام SCSS أو LESS وهما تقنيتان لإستخدام أمور متقدمة في لغة CSS مثل المتغيرات والدوال والحلقات والشروط في لغة مشابهة لـ CSS ثم تحويلها لقواعد CSS عادية. وهذه المشاريع مفتوحة المصدر ويمكن المساعدة في تطويرها من خلال GitHub تحتوي أكاديمية حسوب على بعض المقالات عن SCSS، يمكنك قرائتها من هنا يمكنك معرفة ما يتم تطويره في CSS من خلال current-work في موقع W3C، ويمكنك الحصول على نسخة من النقاشات التي تتم في هذا الموقع من خلال الإشتراك في القائمة البريدية في أسفل يسار الصفحة، في قسم "JOIN­ING THE DIS­CUS­SION"، كما يمكن المساعدة في هذه النقاشات من خلال GitHub في مستودع csswg-drafts الخاص بهذه المؤسسة.يوجد حاليًا أكثر من 2000 نقاش جارٍ، وأكثر من 200 شخص قد ساهم في هذا المستودع. وعلى سبيل المثال في هذا النقاش يتم تحضير بعض خصائص CSS 4 الأساسية. يجدر بالذكر أن أي خصائص جديدة لن يتم إضافتها إلى CSS الحالية (المستخدمة في المتصفحات)، ولكن يتم إضافتها بشكل رسمي في الإصدار التالي وهو CSS 4 ومن ثم سيقوم كل متصفح بمحاولة تطبيق هذه الخصائص ولذلك تأخذ هذه العملية الكثير من الوقت، لذلك يلجأ الكثير من الأشخاص إلى إستعمال SCSS أو LESS التي تمكنهم من إستخدام ممزايات إضافية لـ CSS ثم تحويل الكود الذي يكتبونه إلى CSS عادية.
    2 نقاط
  2. السلام عليكم. لم استخدم قاعدة البيانات postgresql بتوسع. عندي كود يعمل على mysql واريد ان احوله للعمل على postgresql. مثل ان هذه الاكواد لا تعمل على posgres DB::select( 'SELECT id FROM teachers WHERE (subject_id = ? AND levels = ?) OR EXISTS (SELECT id FROM users WHERE name = ? AND phone = ?)', [$request->subject, json_encode($request->levels), $request->name, $request->mobile] ); ففي المثال السابق يعطي لي هذا الخطأ SQLSTATE[42883]: Undefined function: 7 ERROR: operator does not exist: json = unknown LINE 6: (subject_id = $1 AND levels = $2) ^ HINT: No operator matches the given name and argument types. You might need to add explicit type casts. مثل الصورة المرفقة فكيف أحول هذه الاكواد لتعمل بشكل صحيح على posgresql? علما بأن العامود levels من نوع json
    1 نقطة
  3. هل يمكنني نشر الصور التي اجدها في البنترست على صفحتي في الانستقرام
    1 نقطة
  4. لدي مشكله في مشروع خاص بي اريد جعل قسم footer يكون اخر الصفحه حاولت بي شتى الطرق لكن لم اصل الى نتيجه ملفات المشروع Min.html.zip
    1 نقطة
  5. لدينا جدولين people و companies نريد جلب اسماء الموظفين مع اسماء الشركات التي كانو يعملون بها حيث نريد فقط جلب بيانات الشركة (الشركات) التي لها أكبر عدد موظفين سابق أي أن الاستعلام الفرعي سيجلب الشركات التي لها أكبر عدد موظفين حسب الخاصية PREV_COMPANY_ID ثم نريد دمجه مع جدول الموظفين لجلب الاسم هل يمكن المساعدة الشيفرة التي حاولت بها select res.prvid , res.pname from ( select p.PREV_COMPANY_ID as prvid , p.name as pname from people p group by p.PREV_COMPANY_ID having count(*) = (select max(count(*))) ) as res;
    1 نقطة
  6. لنقم بتفكيك الإستعلام لفهمه أولا : نحتاج تحديد معرف الشركة التي لها أكبر عدد موظفين سابق , و ذلك عن طريق قراءة أكثر قيمة معروفة أو مكررة في جدول الموظفين people . يترجم إلى : SELECT PREV_COMPANY_ID FROM people GROUP BY PREV_COMPANY_ID ORDER BY COUNT(PREV_COMPANY_ID) DESC LIMIT 1; بناء على نتيجة الإستعلام السابق , نحتاج تحديد وجلب معلومات هاته الشركة , و يكون ذلك عن طريق القراءة من جدول الشركات companies : SELECT * FROM companies WHERE id = TARGET_RESULTED_ID حيث أن القيمة TARGET_RESULTED_ID هي القيمة الناتجة عن الإستعلام السابق . ثم بمساعدة الإستعلام الفرعي أو الـ sub Query لنقم بدمجهما معا ليكونا على النحو التالي : SELECT * FROM companies WHERE id = ( SELECT company_id FROM people GROUP BY company_id ORDER BY COUNT(company_id) DESC LIMIT 1 ) و ما سيقوم به هذا الإستعلام هو ببساطة كالتالي : جلب معلومات الشركة التي معرفها يساوي ( أكثر معرف شركة مكرر في جدول الموظفين ) . و بعبارة أخرى :
    1 نقطة
  7. لدي العديد من الأفكار لتطويرها بلغة css لاكني لا أعلم كيف يمكنني ذلك. هل هناك إمكانية للقيام بذلك هل css مفتوحة المصدر إذا كانت مفتوحة المصدر فهلا أرسلت لي رابط github ل src الخاصة باللغة.
    1 نقطة
  8. بارك الله فيك على المعلومات المقدمة
    1 نقطة
  9. لدي مكون بوت (Watson) يحتوي على هذا البرنامج النصي <Script> {` window.watsonAssistantChatOptions = { showLauncher: false, openChatByDefault: true, element: document.querySelector('.chatElement'), onLoad: function(instance) { instance.updateHomeScreenConfig({ is_on: true, greeting: '', starters: { is_on: true, buttons: [ { label: 'Turn home screen off', }, { label: 'Add conversation starters', }, { label: 'Add custom content', }, ], }, }); // Subscribe to the "pre:send" event. instance.on({ type: "pre:send", handler: preSendhandler }); instance.render(); } }; setTimeout(function(){ const t=document.createElement('script'); t.src="https://web-chat.global.assistant.watson.appdomain.cloud/versions/" + (window.watsonAssistantChatOptions.clientVersion || 'latest') + "/WatsonAssistantChatEntry.js" document.head.appendChild(t); `} </Script> البرنامج موضوع في _documeny.js المشكلة هي في كل مرة أقوم فيها بتغيير الصفحة يتم إنشاء شاشة دردشة اخرى
    1 نقطة
  10. إن هدف الصفحة documeny.js_ هو التهيئة لبيانات التوصيف لصفحات الموقع، أما لعمل جزء من الشيفرة مشترك بين الصفحات نضعه في الصفحة app.js ويتم عمل render لصفحة document على المخدم (السيفر). كما يبدو من استخدامك لشات المحادثة فهو مكون مشترك shared components ضعه في app.js حاول مراجعة التوثيق: nextjs/custom-document إن وجدت حلاً مختلفاً يمكنك مشاركته.
    1 نقطة
  11. انا امتلك cpanel in shared web hosting و اريد تحميل node عليه بواسطة terminal
    1 نقطة
  12. هل يوجد circular linked list في c++?
    1 نقطة
  13. لإستضافة مشروع Next.js في خادم خاص VPS يمكنك إتباع الخطوات التالية: إنشاء خادم خاص من أحد شركات الإستاضفة مثل DigitalOcean أو CloudNode قبل أي شيء، نحتاج إلى إنشاء الخادم وضبطه في السحابة من خلال أحد خدمات شركات الإستضافة، يمكنك أن تشتري أي خادم ويب للتجربة، وسيتم محاسبتك بالساعة (حسب وقت إستعمالك للخادم منذ وقت الشراء)، وقد تتبع شركات إستضافة خطط أخرى غير المحاسبة بالساعة. ضبط اسم المجال Domain أيضًا ستحتاج إلى شراء نطاق / مجال Domain لكي تتمكن من تشغيل مشروعك عبر الإنترنت، حيث أن شركات الإستضافة تمنحك الخادم فقط في أغلب الأحيان، لذلك يجب أن تقوم بشراء نطاق لموقعك بنفسك من خلال أحد شركات الإستضافة مثل namechape أو GoDaddy ..إلخ ، لذلك يجب أن يكون لديك مجال يشير إلى خادم الويب الذي تم إنشاؤه حديثًا. تثبيت وضبط Nginx الآن أنت بحاجة إلى برنامج لكي يدير الطلبات التي تصل إلى خادم الويب الذي قمنا بإنشائه في السابق، يمكنك تنفيذ الأمر التالي لتثبيت Nginx: sudo apt-get update && sudo apt-get install nginx بعد ذلك يجب أن تقوم بالسماح لـ Nginx بأن يمر من خلال جدار الحماية من خلال الأمر التالي: sudo ufw allow 'Nginx HTTP' الآن يمكنك تشغيل Nginx من خلال الأمر التالي: systemctl status nginx ومن المفترض أن تظهر لك نتيجة كالتالي: ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2016-04-18 16:14:00 EDT; 4min 2s ago Main PID: 12857 (nginx) CGroup: /system.slice/nginx.service ├─12857 nginx: master process /usr/sbin/nginx -g daemon on; master_process on └─12858 nginx: worker process لاحظ كلمة active في السطر الثالث، وهذا يعني أن Nginx يعمل الآن بدون مشكلة، يمكنك أن تزور عنوان الخادم من خلال المتصفح وستجد صفحة Welcome to Nginx، كما في الصورة: قم بتثبيت Node.js لنشر مشروع مبني بإستخدام Next.js (أو أي مشروع آخر مبني بإستخدام JavaScript) ستحتاج إلى تثبيت Node.js وكذلك NPM ، ويمكنك تثبيتهما من خلال الأوامر التالية: curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt-get install -y nodejs أيضًا توجد الكثير من الحزم التي تعتمد على حزمة build-essential والتالي نحتاج إلى تثبيتها من خلال الأمر التالي: apt-get install -y build-essential الآن يمكنك التأكد من أن كل من Node.js و NPM قد تم تثبيتهما بشكل سليم من خلال الأمر التالي: node --version npm --version وسيظهر لك إصدار كل منهما. انشر تطبيق Next.js الآن نحتاج إلى إرسال الكود إلى الخادم لكي يمكنه العمل، لذلك يمكنك أن تقوم برفع الكود إلى مستودع repo على GitHub إن لم تقم بهذا من قبل (أو يمكنك أن تستعمل بروتوكول FTP ولكن خطوات تثبيته كثيرة كما أنه بطيء للغاية مقارنة بـ GitHub)، ويمكنك تحميل الكود إلى الخادم من خلال الأمر التالي: git clone https://github.com/your_github_username/your_repository_name.git website سيقوم الأمر التالي بتحميل الكود الخاص بك من GitHub إلى الخادم ، وسيضعه في مجلد باسم website، الآن يجب تثبيت الحزم الخاصة بالمشروع عبر الأوامر التالية: cd website npm install npm run dev إن ظهر لك نص كالتالي، فأن كل شيء يعمل على ما يرام: ready - started server on http://localhost:3000 الآن يمكنك الخروج من الأمر الأخير من خلال الضغط على Ctrl + C، ثم تنفيذ الأمر التالي، لإنتاج الكود النهائي للمشروع: npm run build ستلاحظ أنه تم إنشاء مجلد باسم /.next، والآن ستحتاج إلى حزمة pm2 لكي تتأكد من أن التطبيق يعمل طوال الوقت بدون إنقطاع، ويمكنك تثبيت هذه الحزمة عبر الأمر: sudo npm install -g pm2 ثم يجب تشغيل المشروع من خلالها عبر الأمر التالي: pm2 start --name=website npm -- start قم بضبط Nginx كـ reverse proxy كل المتبقي الآن هو إتاحة الموقع للتشغيل عبر إنترنت cd /etc/nginx/sites-available sudo touch example.com sudo nano example.com بعد ذلك يمكنك إضافة الكود التالي لكي يتم تحويل الطلبات من الإنترنت إلى المنفذ 3000، server { listen 80; listen [::]:80; root /var/www/html; index index.html index.htm index.nginx-debian.html; server_name example.com www.example.com; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } تأكد من تغير example.com و www.example.com إلى نطاق الموقع الصحيح بعد ذلك ستحتاج إلى تشغيل الملف example.com السابق هذا إلى Nginx عبر الأوامر التالية: sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx بهذا الشكل يمكنك زيارة الموقع الخاص بك من خلال متصفح الويب عبر زيارة نطاق الموقع بشكل مباشر (سواء بإستخدام www أو بدونها).
    1 نقطة
  14. كل الدورات الموجوة في الأكاديمية تعلمك البرمجة، ولكن قبل تعلم البرمجة يجب تحديد هدف من تعلم البرمجة أولًا، هل تريد عمل تطبيقات للهواتف الذكية، أم تريد إنشاء مواقع ويب تفاعلية وكبيرة، ربما تريد عمل ألعاب ثلاثية الأبعاد، أو قد تريد إنشاء برامج سطح المكتب، لذلك يجب تحديد ما تريد فعله أولًا عند تعلم البرمجة، لكي لا تصاب بالتشتيت والضياع بين العشرات من لغات البرمجة والتقنيات المختلفة، بعد أن تحدد ما تريد فعله يمكنك أن تبحث عن دورة شاملة تقوم بتعليم ما تريده، وعلى العموم ستجد أن أغلب المجالات والتقنيات تحتاج إلى حد أدنى من المعرفة البرمجية، مثلًا كيف يعمل الحاسوب أو ما هي المتغيرات والدوال والكائنات .. إلخ. وقد قامت أكاديمية حسوب بشرح كل الأساسيات في دورة علوم الحاسوب والتي تقوم بشرح أساسيات الحاسوب وعلومه والتفكير المنطقي وما هي الخوارزميات، ثم ستقوم بتطبيق هذه الأساسيات من خلال عمل برامج وألعاب بسيطة باستخدام بيئة سكراتش Scratch التفاعلية. بعد ذلك سوف تنطلق في تعلم أول لغة برمجة لك وهي JavaScript والتي سيتم من خلالها تعلم المزيد من الأمور البرمجة وكيفية إنشاء برامج واقعية وعملية، كذلك سوف تتعلم أساسيات أنظمة التشغيل المختلفة (مثل ويندوز و Linux) وكيفية التعامل معها، بعد ذلك ستنتقل لتعلم قواعد البيانات وأنواعها، و كيفية عمل صفحات ويب بسيطة وكيف تعمل الشبكات والخوادم من الأساس. وبعد كل هذه الأمور ستتعلم لغة برمجة أخرى وهي بايثون وستعرف لماذا يوجد أكثر من لغة برمجة وستتعلم أمور برمجية متقدمة أكثر مثل الخوارزميات المتقدمة وهياكل البيانات. ملاحظة: عند الإشتراك في أحد الدورات يتم فتح المسار الأول من كل دورة وبالتالي يمكنك أن تتعرف أكثر عن كل دورة ومعرفة محتواياتها وما ستتعمله في النهاية أيضًا. بعد تعلم الأساسيات ستحتاج إلى تحديد ما تريد التخصص به كما ذكرت سابقًا وأنصح بهذه المقالة التي تعطي نبذة عن كل مجال وما هي متطلباته وما ستحتاج إليه لكي تبدأ في العمل في هذا المجال: لمعرفة المزيد عن دورات حسوب الأخرى يمكنك أن تنظر هذه الإجابة: أو يمكنك أن تزور صفحة الدورات من هنا.
    1 نقطة
  15. أهلا بك، في حال لم يكن لديك أي خبرة برمجية سابقة، أو ميول لمجال معين، يفضل الدخول من أوسع الأبواب وأخذ معرفة شاملة في كل المجالات، فأقترح منك التسجيل في دورة "علوم الحاسب" فهي تفتح لك المجال للتعرف على البرمجة بالشكل الصحيح، ثم بعدها يمكنك التخصص في مجال معين وعندها ستكون الرؤية أفضل لك ومجال تخصصك..
    1 نقطة
  16. أولاً عليك قراءة البيانات في بايثون ويفضل تحويلها إلى ملف CSV ثم قراءتها ك Dataframe ليسهل التعامل معها (لامشكلة المهم أن تقوم بقراءتها بالشكل المناسب)، ثم بعد ذلك يمكنك استخدام مكتبة sklearn لتنفيذ الطلبات المتبقية حيث توفر لك مكتبة sklearn ماتحتاجه لتقسيم البيانات (الطلب 2 ) وبناء نموذج LinearR وإليك الروابط التالية التي تشرحهما: وبالنسبة للطلب الأخير (تقييم أداء النموذج) فهنا يوجد كل الطرق مع شرحها، ويمكنك استخدام واحدة منها:
    1 نقطة
  17. إستخدام flutter سيسهل عليك إنشاء تطبيق واحد يعمل على iOS و أندرويد، كما أن توفير تصاميم UI/UX للمطور سيوفر الكثير من التكلفة والوقت. بالنسبة لجزئية الـ Backend فالأمر يتوقف على المميزات الموجودة في التطبيق الجديد، هل هو مجرد تغيير في الشكل وطريقة العرض فقط؟ أم أن هناك مميزات جديدة تم إضافتها؟ أم أنه سيكون نفس التطبيق لكن بـ Flutter بدلًا من Swift؟ في حالة كان مجرد تغيير في الشكل فقط أو كان نفس التطبيق ولكن بلغة أخرى، فلا مشكلة سيعمل الـ Backend بشكل سليم، أما في الحالة الثانية فيجب عمل بعض التغيرات على الـ Backend لكي يتناسب مع التطبيق الجديد.
    1 نقطة
  18. لعمل مثل هذا الموقع يجب أن يتوفر عدد من الأشخاص (أو شخص واحد لديه كل المهارات المطلوبة) وهم كالتالي: مصمم واجهات UI/UX Designer: سيقوم هذا الشخص برسم شكل الموقع بكل صفحاته ليقوم مطور بتحويل هذه التصميمات إلى كود يعمل في المتصفح (ينشئ الموقع) مطور مواقع front end : وهو الشخص الذي سيقوم بتحويل التصميم إلى كود كما وضحت سابقا. مطور backend: وهو المسؤول عن عمل آلية الموقع، مثل عمل وإدارة قاعدة البيانات، إنشاء آلية تسجيل الدخول للمستخدمين، معالجة الأخطاء على السيرفر ... إلخ. ولكل إختصاص من الإختصاصات السابقة يوجد مجموعة واسعة من التقنيات التي يمكن إستخدامها، فعلى سبيل المثال: يمكن أن يستعمل مصمم الواجهات برنامج Adobe أكس دي أو Figma، ويمكن لمطور front end أن يستعمل مكتبات مثل bootstrap أو tailwind csa أو bulma إلخ ويمكنه أيضاً أن يستعمل إطار جافا سكريبت مثل vue.js أو React.js، وفي النهاية يستطيع مطور backend أن يستعمل أحد لغات البرمجة لعمل جزء ال backend الخاص بالموقع، ولكل لغة برمجة إطارات عمل متعددة، مثلا لغة PHP لها إطار عمل Laravel، ولغة python لها flask أو Django ولغة javascript لها express.js وغيرهم الكثير. أنصحكِ بنشر مشروع على أحد مواقع العمل الحر (مثل مستقل) وأطلبي فيه عمل مثل هذا الموقع، وسيقدم العديد من المطورين عروضهم وعليك مناقشة المناسبين منهم قبل بدء العمل مع أحد منهم لمعرفة كل التفاصيل. بالتوفيق.
    1 نقطة
×
×
  • أضف...