عبدالباسط ابراهيم

http://abdoeldmoky.netlify.app

128 نقاط السمعة
25.2 ألف مشاهدات المحتوى
عضو منذ
لا يمكن تنزيل Adobe Premiere بشكل مجاني بطريقة قانونية ولكن إذا كنت طالباً فيوجد خصم كما أنه هناك بدائل مجانية لبرنامج Adobe Premiere يمكنك استخدامها، مثل: DaVinci Resolve : هذا البرنامج يوفر مجموعة كاملة من أدوات تحرير الفيديو والتلوين، وهو مجاني تمامًا للاستخدام الشخصي. كما يمكنك تجربة Shotcut والعديد من البدائل الأخرى
بشكل مبسط يعتبر إنترنت الأشياء هو الشبكة التي تربط الأجهزة مثل الحواسيب والهواتف الذكية وأجهزة الاستشعار ببعضها البعض. و تتميز هذه الأجهزة بأنها قادرة على الاتصال وتبادل البيانات بشكل لاسلكي دون تدخل الإنسان. يتم تطبيق إنترنت الأشياء في مجالات مختلفة مثل المنازل الذكية والمدن الذكية والصناعة والزراعة. ويمكنك تطبيقه في منزلك بنفسك حيث إنشاء أجهزتك وبرامجك الخاصة أمر سهل نسبياً وليس معقداً كما تعتقد ، حيث توجد العديد من منصات عتاد الحاسوب hardware platforms التي تستهدف المبتدئين وتمتلك مجتمعات كبيرةً
كما تم التوضيح في التعيقات السابقة تعتمد تكلفة استضافة ASP.NET Core و MS SQL Server على العديد من العوامل، بما في ذلك مورد الاستضافة و خطة الاستضافة و الميزات الإضافية لذلك يجب أن تحدد متطلبات تطبيقك من حيث حجم قاعدة البيانات، وسرعة الاستجابة، والأمان. من ثم، يمكنك مقارنة العروض المختلفة ويمكنك الإطلاع على الخيارات التالية https://academy.hsoub.com/questions/11049-%D8%A7%D9%81%D8%B6%D9%84-%D9%85%D9%88%D9%82%D8%B9-%D8%A7%D8%B3%D8%AA%D8%B6%D8%A7%D9%81%D8%A9-aspnet-%D9%88-sql-server/ https://academy.hsoub.com/questions/6542-%D9%85%D8%A7%D9%87%D9%89-%D8%A3%D9%81%D8%B6%D9%84-%D8%A7%D9%84%D8%B3%D9%8A%D8%B1%D9%81%D8%B1%D8%A7%D8%AA-%D9%84%D8%A5%D8%B3%D8%AA%D8%B6%D8%A7%D9%81%D8%A9-%D8%A7%D9%84%D9%85%D9%88%D8%A7%D9%82%D8%B9-%D8%A7%D9%84%D8%A5%D9%84%D9%83%D8%AA%D8%B1%D9%88%D9%86%D9%8A%D8%A9%D8%9F/
اللغات والمجالات التي ذكرت أنك تريد تعلمها تحتاج منك العديد من السنوات لذلك يفضل نعم بدء التعلم الأساسيات قبل التخصص في مجال معين. فهم الأساسيات في البرمجة يساعدك على بناء قاعدة قوية تمكنك من التعامل مع مجالات متعددة بكفاءة. مثلاً، إذا أعجبك تطوير تطبيقات الهواتف الذكية، يمكنك بعد ذلك التوجه نحو تعلم تطوير تطبيقات Android باستخدام Java أو Kotlin. أو إذا كنت مهتمًا بالذكاء الاصطناعي وتعلم الآلة، يمكنك البدء في تعلم Python ومكتباته المتخصصة في هذا المجال مثل TensorFlow و
بالإضافة للإقتراحات السابقة يمكنك الإطلاع على الخيارات التالية لإختيار المناسب لك SendinBlue يوفر حساب مجاني يمكنك إرسال حتى 300 رسالة يوميًا. Mailjet: حساب مجاني يسمح بإرسال حتى 12,000 رسالة شهريًا. ويمكنك أيضاً استخدام Mailgun كما أخبرك مصطفى في التعليق السابق SparkPost: يوفر حساب مجاني يمكنك إرسال حتى 12,000 رسالة شهريًا. وأخيراً AWS SES: يوفر حد مجاني قدره 60,000 رسالة شهريًا. مفيد لمن لديهم حساب Amazon AWS.
يمكنك مراقبة حدث ال scroll نحو الأسفل عن طريق حفظ آخر قيمة لل window.scrollY ومقارنتها كما يلي window.addEventListener('scroll', function(e) { // Check if user scrolled down if(window.scrollY > lastScrollTop){ // Your code here } // Update scroll position lastScrollTop = window.scrollY; }); في هذا المثال: نقارن الموضع الحالي window.scrollY مع القيمة السابقة lastScrollTop إذا كان window.scrollY أكبر فهذا يعني أن المستخدم قام بالسكرول نحو الأسفل نقوم بتحديث lastScrollTop للاحتفاظ بآخر قيمة للمقارنة في المرات القادمة
يجب عليك توفير الكود المستخدم لتحديد المشكلة بالضبط أو يمكنك تجربة المثال الذي قدمه مصطفى في التعليق السابق والتعديل عليه ليناسبك التطبيق لديك ولكن أعتقد أن المشكلة ربما تكمن في الهيكلية الخاصة بال html أو التنسيقات فمثلاً قد يكون السبب في هذه المشكلة هو أن ارتفاع السيكشن الذي تقوم بالتمرير إليه يكون مساويًا تقريبًا إلى ارتفاع نافذة المتصفح، مما يجعل السكرول لا يُظهر أي تأثير وكأنه لم يحدث.
بالتأكيد يوجد الكثير من الأمثلة كما وضح لك عدنان في التعليق السابق حيث أن Laravel هو أحد أشهر إطارات العمل مع مجتمع ضخم ونشط من المطورين. يتم استخدامه في ملايين المواقع الإلكترونية حول العالم، بما في ذلك المواقع البسيطة والمعقدة. ويوجد قائمة توضح أشهر المواقع التي تستخدم laravel حسب موقع builtwith يمكنك الإطلاع عليها من خلال هذا الرابط https://trends.builtwith.com/websitelist/Laravel
حسب ما فهمت من سؤالك يمكنك باستخدام setInterval() تكرار دالة ما كما بالمثال التالي function repeatedAction() { console.log("تكرر كل ثانية"); } const intervalId = setInterval(repeatedAction, 1000); // لإيقاف ال setInterval نستخدم clearInterval: // clearInterval(intervalId); لذلك يتم تعريف دالة repeatedAction لتنفيذ الإجراء المطلوب تكرارًا ثم تمرير هذه الدالة لل setInterval() والفاصل الزمني https://academy.hsoub.com/programming/javascript/%D8%A7%D9%84%D8%AC%D8%AF%D9%88%D9%84%D8%A9-%D8%A7%D9%84%D9%85%D9%87%D9%84%D8%A9-settimeout-%D9%88%D8%A7%D9%84%D9%81%D8%AA%D8%B1%D8%A9-setinterval-%D9%81%D9%8A-%D8%AC%D8%A7%D9%81%D8%A7%D8%B3%D9%83%D8%B1%D8%A8%D8%AA-r877/
بالغضافة للترشيحات السابقة يوجد أيضاً المكتبات التالية date-fns-jalali: تقوم بإضافة وظائف لتحويل التواريخ بين التقويم الهجري والميلادي، وايضاً تقوم بإضافة وظائف لعمليات حسابية ومقارنة تواريخ هجرية. تعتبر مفيدة اذا كنت تحتاج عمليات معالجة متقدمة نسبياً للتواريخ الهجرية. وبالنسبة ل hijri-date-js: تقتصر وظائفها على التحويل البسيط بين التواريخ الهجرية والميلادية، وامكانية اظهار التاريخ الهجري بالشكل المرئي. مفيدة إذا كنت بحاجة الى تحويل بسيط للتواريخ دون حاجة لعمليات معقدة. وهي أخف وزنا. https://www.npmjs.com/package/date-fns-jalali https://www.npmjs.com/package/hijri-date
سأحاول أولاً توضيح الفرق بينهما حيث أن اسم النطاق أو الدومين هو عنوان موقعك (مثل www.example.com). عادة لا ينتهي صلاحية هذا، بل يمكن تجديده سنويا. الاستضافة هي المكان الذي يتم تخزين ملفات وقواعد بيانات موقعك فعليا على الإنترنت. هذا مثل استئجار مساحة على خادوم لوضع "غرف" موقعك (الملفات). ينتهي صلاحية الاستضافة شهريا أو سنويا ويجب تجديدها. وبالتجديد فتحتاج لتجديد الإشتراك في كلاهما حسب الشركة التي قمت بالإشتراك معها حسب مدة الإشتراك أيضاً كما أنه لتجديد أسماء النطاقات الخاصة بك في
لتعلم تطوير تطبيقات ويب 3 يجب عليك تعلم مزيج من المهارات مثل هندسة البرمجيات والتشفير وتقنية البلوكشين. للتوضيح تحتاج لتعلم هذه المهارات تحتاج أولاً لتعلم أساسيات تقنية البلوكشين حيث يُعتبر فهم أساسيات تقنية البلوكشين أمرًا أساسيًا لفهم أساسيات الويب 3. ثانياً تعلم البرمجة و يُعتبر Solidity هي لغة البرمجية الأكثر شيوعًا فيمكنك البدء بتعلم Solidity. كما أن JavaScript أساسي أيضًا لتطوير الويب 3 لأنه يستخدم على نطاق واسع لبناء التطبيقات اللامركزية (dApps). مع فهم مبادئ التطبيقات اللامركزية تعلم أدوات تطوير
لكن عندما أنتقل للتطبيق لا أعرف ماذا أفعل. لذا هل يوجد كورس يواكب مع التطبيقات العملية إلى الوصول إلى مرحلة الاحتراف. و أن يكون مجانيا يحدث ذلك للجميع سواء في مجال البرمجة أو غيرها حيث أن عند التطبيق لأول مرة غير المرة التي تليها بمعنى أن في البداية يجب أن بعض الصعوبة في التطبيق لذلك حاول البحث عن تطبيق عملي للتقنيات أو اللغات التي قمت بتعلمها وبناء التطبيق مع المدرب مع إتباع الخطوات الموجود بالإجابات التالية https://academy.hsoub.com/questions/23663-%D8%B5%D8%B9%D9%88%D8%A8%D8%A9-%D9%81%D9%8A-%D8%A7%D9%84%D8%AA%D8%B7%D8%A8%D9%8A%D9%82-%D8%B9%D9%84%D9%89-%D8%AC%D8%A7%D9%81%D8%A7-%D8%B3%D9%83%D8%B1%D9%8A%D8%A8%D8%AA/ https://academy.hsoub.com/questions/23672-%D9%87%D9%84-%D9%85%D9%86-%D8%A7%D9%84%D8%B7%D8%A8%D9%8A%D8%B9%D9%8A-%D8%A7%D9%84%D8%B4%D8%B9%D9%88%D8%B1-%D8%A8%D8%B9%D8%AF%D9%85-%D8%A7%D9%84%D9%81%D9%87%D9%85-%D8%A8%D8%B9%D8%AF-%D8%A7%D9%84%D8%AA%D8%B7%D8%A8%D9%8A%D9%82-%D8%B9%D9%84%D9%89-%D8%AA%D8%B5%D9%85%D9%8A%D9%85-css/
أولاً في الوقت الحالي، لا يزال قيد التطوير، ويستخدمه فقط الباحثون في الجامعات وشركات التكنولوجيا الكبرى. وساحاول التوضيح بشكل بسيط ما يميزه وهو الحواسيب التقليدية تستخدم بتات إما 0 أو 1 لمعالجة المعلومات .ولكن الحاسوب الكمي يستخدم الكيوبت أي تكون 0 أو 1 أو كلتا القيمتين في نفس الوقت بسبب خصائصها الكمية. وهذا يمكن الحواسيب الكمية من معالجة العديد من الحسابات في نفس الوقت. و يمكن للكيوبت أن تصبح مترابطة مع بعضها البعض، أي أن حالاتها مرتبطة ببعضها البعض وهذا
يمكنك حذف الحدث من خلال removeEventListener عند تحقق الشرط ومثال على ذلك const inputHandler = () => { let userInput = cartSearcher.value; cartProNames.forEach(element => { if (element.innerHTML.includes(userInput)) { element.parentNode.parentNode.classList.remove("d-none"); // إذا تم تحقيق الشرط المعين، قم بإزالة الحدث if (/* هنا يأتي الشرط الذي تريد أن يؤدي إلى إيقاف تشغيل الدالة */) { cartSearcher.removeEventListener('input', inputHandler); } } else { element.parentNode.parentNode.classList.add("d-none"); } }); }; // إضافة الحدث والدالة الرئيسية له cartSearcher.addEventListener('input', inputHandler); يمكنك التعديل على المثال السابق ليناسب الموقع وما تريده
بالتأكيد يمكن استخدام Visual Studio Code لبرمجة تطبيقات الذكاء الاصطناعي . VSCode هو محرر نصوص قوي ومرن يدعم العديد من لغات البرمجة المختلفة كما تم التوضيح في التعليقات السابقة كما يوجد PyCharm وهو بيئة تطوير متكاملة (IDE) مصممة خصيصًا لتطوير تطبيقات Python. يتميز PyCharm بمجموعة من الميزات التي تجعله مميز لتطوير تطبيقات الذكاء الاصطناعي والتعلم الآلي ويفضل الإطلاع على المقالة التالية https://academy.hsoub.com/programming/artificial-intelligence/%D8%A7%D9%84%D8%B0%D9%83%D8%A7%D8%A1-%D8%A7%D9%84%D8%A7%D8%B5%D8%B7%D9%86%D8%A7%D8%B9%D9%8A/
لارافل و ASP.NET إطارات عمل مختلفة في ال stack حيث يستخدم لارافل لغة PHP بينما يستخدم ASP.NET لغة C# ونظام دوت نت. ولكن يمكنك من خلال كلاهما بناء تطبيقات ويب آمنة ذات أداء عال. أما بالنسبة لتجربتك مع لارافل ووجدت أنه معقّد قليلاً بسبب الملفات والتداخلات، فهذا شيء شائع عند البدء بأي اطار عمل جديد. لكن مع الوقت والممارسة ستتقن لارافل وتجده سهل الاستخدام. ويعتبر لارافل لديه شهرة كبيرة بسبب طريقة كتابة الأكواد المنطقية والمرنة فيه، مما يجعل من السهل
صراحة لم ادرس البرمجة دراسة اكادمية لكنني امتلك بعض الخبرات في هذا المجال أولاً إذا كان لديك بعض الخبرة في البرمجة دون دراسة أكاديمية، فهذا يمكن أن يكون نقطة بداية جيدة لتعلم تطوير تطبيقات الأندرويد. ولا بأس حالياً إذا لم يكن لديك دراسة أكاديمية لاحقاً ستحتاج للتطوير في ذلك الجانب أما بالنسبة للتطبيقات فهي تنقسم للأنواع التالية تطبيقات الجوال الأصيلة Native Apps تطبيقات الجوال الأصيلة متعددة المنصات Cross-Platform Apps تطبيقات الجوال الهجينة Hybrid Apps تطبيقات الويب التقدمية Progressive Web Apps
كما تعرف فإن بايثون هي لغة برمجة قوية ومرنة يمكن استخدامها في مجالات متعددة مثل تطوير الويب، وتحليل البيانات، والذكاء الاصطناعي، والخوارزميات المعقدة. عند الرغبة في استخدام بايثون مع ASP.NET Core، يمكنك استخدام py-script ولكن تعمل بشكل جيد للمهام البسيطة مثل معالجة البيانات وإنشاء الرسوم البيانية، ولكن قد يكون محدودًا عند التعامل مع الخوارزميات المعقدة والذكاء الاصطناعي. في هذه الحالات، قد يكون من الأفضل استخدام بايثون بشكل مستقل على الخادم (server-side) أو إنشاء واجهة برمجة تطبيقات (API) باستخدام إطار عمل
الفكرة العامة لتحقيق ما تريده هي كالتالي أولاً قم بإنشاء جدول "التجار" مثلاً في قاعدة البيانات لتخزين معلومات كل تاجر مثل الاسم والبريد الإلكتروني الخ. بعد ذلك يجب أن يكون في جدول "المنتجات" حقل فرعي اسمه "vendor_id" يربط كل منتج بالتاجر الذي قام برفعه. عند تسجيل التاجر الدخول، استرد فقط المنتجات من جدول المنتجات التي تطابق "vendor_id" هذا سيقوم بتصفية المنتجات ليرى فقط ما قام هو برفعه. كذلك عند التعديل والحذف يجب أن تتأكد أن vendor_id للتاجر المسجل طابق vendor_id
نعم هناك بعض الاختلافات بين استخدام AJAX بشكل مباشر واستخدام jQuery.ajax() كما وضح لك ياسر في التعليق السابق: حيث أن استخدام jQuery.ajax() يوفر طريقة سهلة لإجراء عمليات AJAX بدون الحاجة لكتابة كود JavaScript معقد ( سابقاً ). jQuery.ajax() تدعم بشكل موحد مختلف المتصفحات jQuery.ajax() يوفر إمكانية معالجة الأخطاء بسهولة . ولكن تحتاج لمكتبة jQuery لاستخدام jQuery.ajax() حيث أن حجم المكتبة أكبر من مجرد كود AJAX بسيط. ولكن حالياً يمكنك الإستغناء عن استخدام jQuery.ajax() نهائياً حيث يمكنك استخدام Fetch API: وهي
بالتأكيد يجب تعلم php قبل الإنتقال لتعلم Laravel كما تم التوضيح في التعليقات السابقة ولكن سأحاول توضيح أقل المفاهيم التي يجب تعلمها للإنتقال لتعلم Laravel مع أنه يجب تعلم php بشكل جيد وتنفيذ بعض المشاريع قبل الإنتقال لتعلم Laravel يجب أن يكون لديك فهم جيد للمفاهيم الأساسية في PHP مثل المتغيرات، الدوال، الشروط والحلقات، وكيفية التعامل مع البيانات. بالإضافة إلى ذلك، يفضل أن تكون لديك فهم جيد لمفهوم التوجيه (Routing) ونمط تصميم نموذج-عرض-تحكم (MVC)، الذي يشكل أساسًا لإطار العمل Laravel.
نعم بالفعل ولكن تبقى المشكلة الأخرى لذلك يمكنك استخدام الحل في التعليق السابق لتعريف المتغير clicked بأسهل طريقة ممكنة أو يمكنك استخدام event.target لتعريف المتغير target
تحتاج لنقل السطر الخاص بإضافة الكلاس إلى داخل ال addeventlistener ولكن بذلك لتحتاج لتعريف المتغير clicked لذلك حاول استخدام الحل التالي const circles = document.querySelectorAll(".circle"); circles.forEach(circle => { circle.addEventListener('click', () => { circles.forEach(c => c.classList.remove("active")); const clicked = circle; clicked.classList.add("active"); }); })
الاستخدام الرئيسي لـ GitHub هو تسهيل التعاون وإدارة الإصدارات في مشاريع البرمجيات. يعتبر GitHub أداة أساسية للمطورين للعمل معًا وتتبع التغييرات وإدارة مشاريعهم بكفاءة. ويمكنك الإطلاع على العديد من المصادر التي تشرح github فمثلاً التوثيق الخاص ب github من خلال هذا الرابط https://docs.github.com/en/get-started/start-your-journey/hello-world يمكنك الإطلاع على المقالات الموجود بأكاديمية حسوب من هذا الرابط https://academy.hsoub.com/programming/workflow/git/ حاول البحث أيضاً عن المصدر الذي يعجبك ويناسبك https://academy.hsoub.com/questions/22226-%D9%85%D8%A7-%D9%87%D9%88-githup%D8%9F/