لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 06/08/25 في كل الموقع
-
هل اتعلم vue بأنشاء المشروع من خلا terminal هكذا npm create vue@latest ام اتعلمه من خلال link في html هكذا <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>3 نقاط
-
2 نقاط
-
لقد واجهت صعوبة في انشاء خلفية متحركة على سكراتش مثلا خلفية super mario لأنني أريد انشاءها بتركيب أربعة صور كبيرة . لقد وجدت في اليوتيوب كيفة انشاءها باستعمال صورتين ولكن باستعمال أربع صور لم أجد و اصبح الامر صعبا2 نقاط
-
2 نقاط
-
2 نقاط
-
السلام عليكم ورحمه الله وبركاته انا مشترك في دورة علوم الحاسوب ودورة وجهات المستخدم , عايز اعمل كوميونتي او تيم نتعلم مع بعض عشان شايف إن لما كل واحد يتعلم لوحده ممكن يحبط فعايزين نساعد بعض, هل في حد مشترك في نفس الدورات دي نتعلم سوا ونكون تيم ؟1 نقطة
-
هل يمكنني اسأل عن vue اذا واجهت صعوبة هذا الكود لم افهمه في vue const {createApp} = Vue;1 نقطة
-
سلام عليكم. في الكود البرمجي التالي: الذي تمرر له نص و يمر علي كل الحروف في النص و يكررها أي اذا أدخلت له 'text' ستكون 'tteexxtt' أو 'hello' ستكون 'hheelllloo'. // Double String :: string >> ssttrriinngg let txt = "hello"; let txtAfter = ''; for(let item of txt){ for(let i=0; i<2; i++) txtAfter+=item; } console.log(txtAfter); يمكن حل المسئله بطريقه اخري: اذ يمكن المرور علي كل العناصر و نسخها. let txt = 'hello'; for(let i of txt){ txt.splice(i, 0, txt[i]); } لكن splice لا تعمل مع النصوص. هل هناك بديل؟1 نقطة
-
وعليكم السلام ورحمة الله وبركاته. نعم بالفعل يوجد الكثير من الحلول الأخرى بدلا من إستخدام splice مع النصوص وذلك لأن النصوص (strings) غير قابلة للتغيير (immutable) ولا تحتوي على دالة splice كما في المصفوفات. ويوجد حل وذلك من خلال أولا تحويل النص إلى مصفوفة (array) من خلال إستخدام split وبعد ذلك يمكنك استخدام splice وأخيرا تحويل المصفوفة مرة أخرى إلى نص.هكذا : let txt = 'hello'; let txt_arr = txt.split(''); // تحويل النص إلى مصفوفة من خلال تفكيك الأحرف إلى عناصر في المصفوفة for (let i = 0; i < txt_arr.length; i += 2) { // التكرار على طول المصفوفة ولكن قمنا بزيادة العداد بمقدار 2 لأنه يتم إضافة عنصر جديد txt_arr.splice(i, 0, txt_arr[i]); // إضافة الحرف مرة أخرى في الموضع الحالي } let new_txt = txt_arr.join(''); // تحويل المصفوفة إلى نص console.log(new_txt); // "hheelllloo" حيث أولا إستخدمنا txt.split('') لتحويل النص إلى مصفوفة من الحروف. ومن ثم نستخدم حلقة for للتكرار خلال المصفوفة مع زيادة الفهرس بمقدار 2 في كل خطوة لأننا نضيف حرف جديد في كل مرة. وأخيرا نقوم بإستخدام join('') لتجميع عناصر المصفوفة إلى نص مرة أخرى.1 نقطة
-
للأسف فبيئة سكراتش لا تدعم خاصية التمرير التلقائي (scrolling background) بشكل مباشر ولكن مع ذلك يمكن تجاوز هذا القيد عبر استخدام أربع صور تمثل الخلفية، بحيث تعامل كل صورة على أنها كائن (Sprite) مستقل. في البداية يجب أن تحمّل الصور الأربع إلى سكراتش بحيث تضع كل واحدة منها في Sprite منفصل بعد ذلك يتم ترتيب هذه الصور بجانب بعضها البعض أفقيا بحيث تتصل نهايات الصور ببدايات الصور التالية دون وجود فجوات ويفضّل أن تكون الصور مصممة مسبقا لتتناسق بصريا عند الاتصال، مما يضمن عدم ظهور أي خطوط فاصلة بين كل صورتين عند الحركة. لنقل مثلا أن كل صورة بعرض 480 بكسل، فستكون مواضع الصور في البداية كالتالي: الصورة الأولى في x = 0 الثانية في x = 480 الثالثة في x = 960 الرابعة في x = 1440 بعد ترتيب الصور يجب كتابة كود برمجي لكل Sprite على حدة، يجعلها تتحرك بشكل مستمر نحو اليسار بمقدار ثابت مثلا -5 في كل تكرار للحلقة. ويمكن استخدام الكتلة "عندما تبدأ الراية الخضراء" لبدء الحركة، متبوعة بكتلة "كرر إلى الأبد"، ثم كتلة "غير x بمقدار -5"، مما يجعل الصورة تنزلق إلى اليسار مع الزمن. والجزء الأهم في هذه التقنية هو التحقق من موقع كل Sprite بشكل مستمر فإذا تجاوزت الصورة الطرف الأيسر للشاشة أي إذا أصبح موضعها أقل من x = -480 مثلا فهذا يعني أنها خرجت من مجال الرؤية، وهنا يجب أن تعاد إلى أقصى يمين الخلفية لتستمر في الحركة بشكل دائري. ولتحقيق ذلك نضيف شرطا داخل حلقة التكرار مثل: إذا كانت x < -480، فإننا نعيد الصورة إلى x = 1440 (أي بعد آخر صورة). وهذا يمكّن الخلفية من الدوران بلا توقف، ما يمنح انطباعا بحركة لا نهائية، وهي الطريقة المعتمدة في الكثير من ألعاب المنصات. من المهم أيضا أن تكون الصور الأربعة ذات جودة ودقة متساوية، ومتناسقة من حيث الألوان والمشهد، حتى لا يشعر اللاعب أو المشاهد بوجود تقطّع أو تغيّر مفاجئ في الخلفية أثناء الحركة. وإن كان هناك عناصر مرئية مثل الأشجار أو الجبال، فيفضّل أن تكون امتداداتها من صورة إلى أخرى طبيعية وسلسة.1 نقطة
-
الأمر سيكون بالفعل معقد وصعب جدا في البداية بالنسبة إلى تحريك العديد من الخلفيات. والأفضل في تلك الحالة هي دمج الخلفيات التي لديك في برامج مثل ال phoshop أو أى برامج أخرى لتعديل الصور. ولكن توجد طريقة بسيطة ولكنها ستحتاج أن تكون الخلفيات متشابهة أو تعمل كأنها متصلة كما وجدت في الفديوا الذي على اليوتيوب حيث بسهولة يمكنك تحريك صورتين. ولكن لو أردت 4 صور يمكنك إنشاء كائنين وفي كل كائن تقوم بوضع مظهرين أى تقوم بتوزيع الأربع صور على كائنين هكذا : بعد ذلك بداخل حلقة التكرار يمكنك تغير المظهر هكذا : والآن يمكنك تحريك الأربع خلفيات كما تريد ولكن يجب عليك معرفة أن أول خلفية ستظهر ستكون أول مظهر في الكائن 1 وثاني خلفية هي أول مظهر في الكائن 2 وثالث خلفية هي ثاني مظهر في الكائن 1 وهكذا يمكنك ترتيب الخلفيات كما تريد. وإليك ملف به الخلفيات والكود الخاص بكيفية تحريكها . Animated_wallpaper.sb31 نقطة
-
في الكود ، يبدو أن المنطق المستخدم يعتمد على دالة toggle المتوفرة في مكتبة Laravel (ربما عبر حزمة مثل laravel-likeable) التي تُدار من خلال auth()->user()->likes()->toggle($post). هذه الدالة تقوم تلقائيًا بإضافة أو إزالة بيانات الإعجاب بناءً على ما إذا كان الإعجاب موجودًا مسبقًا أم لا، مما يعني أن هناك منطقًا جاهزًا في الخلفية يتعامل مع عملية الحفظ أو الحذف. أما بالنسبة لعدم وجود دالة store صريحة، فقد يكون السبب أن المطور اختار استخدام أسلوب toggle بدلاً من كتابة دالة store مخصصة، لأن toggle توفر طريقة موجزة لإدارة العلاقات الكثيرة-الكثير (many-to-many) بين المستخدمين والمنشورات في جدول likes. إذا كنت ترغب في إضافة منطق إضافي (مثل التحقق من شروط معينة قبل الحفظ)، يمكنك تعريف دالة store منفصلة واستخدام attach أو sync لإدارة البيانات يدويًا.1 نقطة
-
وعليكم السلام ورحمة الله وبركاته. كل عام وانتم بخير وتقبل الله منا ومنكم صالح الأعمال. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل. ولكن بالنسبة إلى سؤالك فإن دالة store في المتحكمات controller يتم إستخدامها لتنفيذها عن الذهاب إلى عنوان للحفظ أى لدينا url نقوم بتوجيه الطلب له . وليس شرطا بأن تكون بإسم store يمكنك إعطائها أى إسم كما هنا مثلا like.1 نقطة
-
1 نقطة
-
عندي بعض الاقتراحات اللي ممكن تساعدك تبني هذا الكوميونتي أو التيم: منصات التواصل الاجتماعي: جرب تنشر إعلان عن فكرتك في منصات زي X أو Reddit (مثل r/learnprogramming أو r/UI_Design). استخدم هاشتاغات زي #ComputerScience أو #UIUX أو #تعلم_البرمجة لجذب أشخاص مهتمين. في مجموعات على Facebook أو Discord مخصصة لتعليم البرمجة وعلوم الحاسوب، زي مجموعات "أكاديمية حسوب" أو مجموعات عالمية مثل "FreeCodeCamp Community". منصات الدورات التعليمية: إذا كنت مشترك في منصة زي أكاديمية حسوب أو Coursera أو Udemy، كثير من المنصات دي بيكون فيها منتديات أو قنوات تواصل للطلاب. جرب تشارك فكرتك هناك وتدعو الناس للانضمام لتيمك.1 نقطة
-
مرحبا عبدالرحمن . يفضل أولا إذا لم تكن لديك أى خبرة مسبقا في البرمجة أو التكنولوجيا عموما في الإنتهاء من دورة علوم الحاسوب أولا ومن ثم الإنتقال إلى دورة تطوير واجهات المستخدم. او إذا أردت يمكنك أولا الإنتهاء من المسارات التالية في دورة علوم الحاسوب : مدخل إلى علوم الحاسوب أساسيات البرمجة إلى عالم الويب وبعدها يمكنك البدأ في دورة تطوير واجهات المستخدم. ولكن الأفضل هو الإنتهاء من دورة علوم الحاسوب كاملة أولا.1 نقطة