لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 09/09/23 in أجوبة
-
لقد ثبت مكتبة virtualenv بنجاح و قمت بتفعيله لكن عند كتابه امر pip freeze تظهر لي كل المكتبات المثبته على الجهاز ما الحل؟1 نقطة
-
السلام عليكم عندي مشكلة عدم ظهور الصورة في اي متصفح chrome او Edge او firefox عن طريق الكود ;background: url('/pic/pimg.jpg') no-repeat ولكن تظهر فقط عندما اعرض عن طريق إضافه live server على VScode كما هو موضح بالصورة واذا ابعدت السلاش / من بدايه مكان كتابه موقع الصور لاتظهر ايضاَ عن طريق الاضافه ،، وهناك مشاكل اخرى بعدم ظهور بعض البيانات اذا لم استخدم الاضافه مع العلم انني حذفت VScode واعدت تثبيته وحدتث متصفح chrome ولم تنحل المشكلة رجاءاَ افيدوني تعبت منهها1 نقطة
-
السلام عليكم اريد فضلا مساعدة في كود سكريبت كاتالي عندما ينقر المستخدم على زر المطالبة، ستتم إعادة توجيهه إلى رابط قصير(shortlink)، ولن يحصل على مكافأة إلا إذا أكمل الرابط القصير ..بعدها يحصل الزائر على مكافئة عملة الكترونية و تحويل من faucetpay الى faucetpay الزائر تلقائيا1 نقطة
-
يوجد عندي عدة ملفات احتاج طريقة اقوم بعرض صور للمستخدم مثلا وعند الضغط على الصورة يقوم ب فتح الملف الطرق التي قمت بتجريبها تقليدية. بالاضافة الى خاصية على الملفات لمنع المستخدم من تحميل جميع الملفات مثال(يوجد 5 ملفات فقط يستطيع تحميل ملف او 2 ) الباقي يقوم بتصفحه بشكل عادي وفي حال وجود مثال او تطبيق لما ذكرته سابقا ارجو ان يتم ارفاقه وشكرا1 نقطة
-
السلام عليكم اريد شرح كتابي تفصيلي مع الامثله لأستخدام المعامل الفارغ الامن Null Safe Operator في لغة php شكرا لكم .1 نقطة
-
1 نقطة
-
قد يكون ذلك بسبب نوع الملف الذي تحاول تشغيله. على كلٍ يجب ان يكون بإمكانك تشغيله عبر النقر على go live في الشريط السفلي ل vs code في حال لم يظهر هذا الزر فربما يفيد اعادة تشغيل البرنامج والمحاولة مرة ثانية.1 نقطة
-
1 نقطة
-
هل إذا اشتركت أحصل على كل دوارات او أحصل على دوارت لي اخترته1 نقطة
-
هل يمكنك مشارك تفاصيل أكثر؟ مثلاً هل تستعمل بيئة افتراضية؟ ما هو اسمها في حال كان ذلك صحيح؟ و قم بتصوير لقطة كاملة للشاشة حتى يمكننا رؤية مختلف الإعدادات، كالتي سبق و أخبرتك عنها.1 نقطة
-
انا فعلت ذالك بالفعل ’ولكن تظهر نفس المشكله1 نقطة
-
هناك بعض المجالات المتقدمة في البرمجة التي تشتمل على مفاهيم رياضية أكثر تعقيدًا. على سبيل المثال، في علوم البيانات والذكاء الاصطناعي، قد تحتاج إلى فهم الاحتمالات والإحصاء والجبر الخطي لتنفيذ بعض الخوارزميات وتحليل البيانات. وفي العمليات الرياضية والمحاكاة، قد تحتاج إلى استخدام المعادلات التفاضلية أو الجبر الخطي المتقدم. لكن في معظم الحالات، يمكن للمطورين تنفيذ معظم المشاريع البرمجية بنجاح دون الحاجة إلى مستوى متقدم في الرياضيات. الأهم هو فهم مفاهيم البرمجة والتمكن من استخدام الأدوات والتقنيات المناسبة لحل المشاكل البرمجية. فمثلاً كمطور ويب، لا تحتاج بشكل عام إلى مستوى متقدم في الرياضيات. عند تطوير مواقع الويب، يتم التركيز على مفاهيم البرمجة وتقنيات الويب بدلاً من المفاهيم الرياضية المتقدمة. ومع ذلك، يمكن أن يكون لبعض المفاهيم الرياضية تطبيقات في مجالات محددة في تطوير الويب. على سبيل المثال، في تصميم وتطوير ألعاب الويب أو تطبيقات الرسومات ثلاثية الأبعاد، قد تحتاج إلى مفاهيم رياضية مثل الهندسة الرياضية والجبر الخطي. لذلك، إذا كنت مبتدئًا في البرمجة وتشعر بالقلق بشأن المستوى المطلوب من المعرفة الرياضية، فلا تقلق. يمكنك البدء بتعلم الأساسيات وتطوير مهاراتك البرمجية بدون الحاجة إلى معرفة رياضية متقدمة. ومع مرور الوقت، يمكنك استكشاف المجالات التي تهمك وتعلم المفاهيم الرياضية اللازمة في حالة الحاجة إليها.1 نقطة
-
وعليكم السلام، Zoho واحدة من الشركات المعروفة بتقديم حلول متكاملة لأعمال الويب، بما في ذلك خدمات استضافة الدومين والبريد الإلكتروني والتسويق عبر البريد الإلكتروني والكثير من التطبيقات الأخرى. بخصوص الإيميل، فهي تقدم خدمات تسمى "Zoho Mail" و "Zoho Campaigns" تتيح لك القيام بذلك. هذه الخدمات لديها واجهات سهلة الاستخدام وتقدم العديد من الميزات المفيدة لأصحاب المواقع. لم أستعمل Zoho لهذا الخصوص، كنت قد استعملتها فيما مضى مع فريق في إدارة أحد المشاريع البرمجية وفي إدارة Scrum sprints وكانت تجربة الإستخدام ممتازة. أرجح أنها مثل ذلك أو أكثر في غيرها من تطبيقاتها.1 نقطة
-
إعادة فتح برنامج VSCode بعد تثبيت الحزمة التي ترغب في استيرادها قد يحل المشكلة في بعض الأحيان. هذا ينطبق عند استخدامك للبيئة العامة (البيئة الأساسية لـ Python) خارج أي بيئة افتراضية. إذا كنت تستخدم بيئة افتراضية (venv)، يجب على Plycance Language Server اكتشاف الحزم المثبتة تلقائيًا بعد تثبيتها. في هذه الحالة، ليس من الضروري بالضرورة إعادة فتح برنامج VSCode.لذلك إذا كنت تستخدم بيئة افتراضية (venv) يمكنك تجربة الحلول السابقة من الجدير بالذكر أن التأكد من تحديد المفسر الصحيح لـ Python وضبط المسار الصحيح لـ Python في إعدادات برنامج VSCode1 نقطة
-
إذا كنت تواجه مشكلة عدم العثور على مكتبة Pygame في مشروع Python، تأكد أولاً من أنك قمت بتثبيت مكتبة Pygame على نظامك. يمكنك استخدام مدير الحزم pip للقيام بذلك. يمكنك تنفيذ الأمر التالي في سطر الأوامر: pip install pygame إذا كنت تستخدم بيئة افتراضية (virtual environment) لمشروعك، تأكد من أنك قمت بتفعيل البيئة الافتراضية قبل تثبيت Pygame وتشغيل مشروعك أو في بعض الأحيان، يمكن أن يتسبب محرر النصوص الذي تستخدمه في عرض رسائل خطأ خاطئة أو عدم التعرف بشكل صحيح على المكتبات. جرب إعادة تشغيل محرر النصوس أو استخدم محرر نصوس آخر وتأكد من تحديثه.1 نقطة
-
نعم هناك فرق بين الإطارين Laravel و Symfony، كلاهما يُعتبر إطار عمل للُغة PHP، إطار Symfony ظهر أولاً تم إطلاق أول إصدار منه سنة 2005 أما Laravel فتم إطلاق أول إصدار منه سنة 2011. يركز Laravel على بساطة الكود بالنسبة للمطور (للوصول إلى الحل ببساطة) والذي يمر عبر استخدام التوابع السحرية لـ PHP من أجل تقديم كود مقروء مقارب لللغة الإنجليزية. يفرض Symfony صرامة أكبر وهو أقرب إلى كود PHP الكلاسيكي (باستثناء إعدادات yaml)، وبالتالي فهو أكثر تفصيلًا بشكل عام. يسمح استخدامه المنخفض للتوابع السحرية بالتنقل بشكل أفضل في الكود والتحليل الثابت المبسط. إختيار أحدهما على الآخر يرجع للسوق، متطلبات العمل أو المشروع، الخيار الشخصي أيضاً، كلاهما يُمكننا من إنشاء تطبيقات و مشاريع متوسطة التعقيد إلى معقدة، أيضاً كلاهما يوفر السرعة و الأداء الجيد بالإضافة للحماية و الأمان و مجموعة من الأدوات المساعدة في التطوير. إطار Laravel يستخدم بذاته بعض المكونات من Symfony حتى لا يكرر العجلة التثبيت: في كلا الإطارين، يمكن إجراء التثبيت من خلال أمر create-project الخاص بـ composer: # Laravel composer create-project laravel/laravel example-app # Symfony composer create-project symfony/skeleton:"6.3.*" my_project_directory cd my_project_directory composer require webapp يتطلب Symfony عدة أوامر لأنه يُنشئ مشروع في وضع "microservice" إفتراضيًا، و يُضمن الحد الأدنى من المكونات فقط. يسمح لك أمر composer require webapp بتثبيت جميع المكونات اللازمة لإنشاء تطبيق ويب كلاسيكي. نلاحظ أيضًا أن الإطارين يشتملان على أمر (laravel لـ إطار Laravel وsymfony لـ إطار Symfony) يمكن استخدامهما للتحكم في إطار العمل وتنفيذ مهام معينة (تهيئة مشروع على سبيل المثال). هيكلية ملفات المشروع: تتشابه هيكلية الملفات في الإطارين مع وجود مجلد public والذي سيكون بمثابة جذر خادم HTTP. يتم وضع الشيفرات المصدرية للمشروع في مجلد src بالنسبة لـ Symfony و app في حالة Laravel. في كلا الإطارين ستوضع الإعدادات في مجلد بالإسم config مع الاختلاف الرئيسي وهو التنسيق المستخدم في الملفات. يستخدم Laravel ملفات PHP تُرجع مصفوفات يستخدم Symfony ملفات yaml بشكل افتراضي كلاهما يعتمد على نمط التصميم MVC المسارات: الآن بعد أن تم تثبيت الإطارات، سنكون قادرين على إنشاء المسار الأول لإنشاء الصفحة. في حالة Laravel نبدأ بإنشاء المتحكم، يمكن إنشاء المتحكم يدوياً أو عن طريق أوامر artisan المساعدة: لإنشاء متحكم عبر artisan نكتب: php artisan make:controller HelloController ثم نستطيع وضع الوظائف بداخله: <?php namespace App\Http\Controllers; class HelloController extends Controller { public function hello() { return 'Hello'; } } ثم نعلن عن المسار الذي يسمح بالوصول إلى الوظيفة: // routes/web.php Route::get('/hello', [HelloController::class, 'hello'])->name('hello'); من ناحية Symfony، من الممكن الإعلان عن المسارات من خلال السمات الموجودة في المتحكم مباشرةً. الأوامر الموافقة لـ artisan في Symfony هي أوامر bin/console فلإنشاء متحكم في Symfony نقوم بتنفيذ: php bin/console make:controller HelloController ثم نستطيع وضع الوظائف بداخله: <?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\Routing\Annotation\Route; class BlogController extends AbstractController { #[Route('/hello', name: 'hello')] public function hello(): Response { return new Response('hello'); } } و كما تلاحظ فإن المسار يأتي مضمناً كسمة فوق الوظيفة التعامل مع الطلبات: بالنسبة لكلا الإطارين، من الممكن حقن وسيط في وظائف المتحكم للتعامل مع الطلب: public function hello(Request $request): Response { dd($request->query->get('name')); } لاحظ أن كائن الطلب الموجود في Laravel يرث من صنف الطلب الموجود في Symfony ليقدم طرقًا أسرع لتنفيذ العمليات الأساسية. التعامل مع مُعاملات المسارات: بالإضافة إلى معالجة الطلب، من الممكن أيضًا تمرير معاملات في عنوان ال URL. بناء الشيفرة والتشغيل متشابه في الإطارين: # Laravel Route::get('/hello/{name}', [HelloController::class, 'hello']); # Symfony #[Route('/hello/{name}')] يمكننا بعد ذلك الوصول لهذا المعامل في المتحكم كوسيط في الوظيفة: public function hello(string $name) { } محرك القالب: لعرض صفحات HTML سيكون من الممكن استخدام محرك قوالب، وعند هذه النقطة يظهر فرق بين الإطارين يستخدم Symfony محرك القوالب twig الذي يستخدم syntax خاص به مثال: {% extends "base.html.twig" %} {% block title %}Page Title{% endblock %} {% block sidebar %} {{ parent() }} <p>This is appended to the master sidebar.</p> {% endblock %} {% block content %} {% for post in posts %} <article> <h2>{{ post.title }}</h2> <p>{{ post.excerpt }}</p> <p><a href="{{ path('post.show', {slug: post.slug}) }}">Read more ...</a></p> </article> {% endblock %} يستخدم Laravel محرك قوالب خاص بإطار العمل: Blade. يقوم هذا المحرك بتوسيع ال syntax الخاص بـ PHP بميزات جديدة ولكنه يقبل أيضًا كود PHP صالح. مثال: @extends('layouts.app') @section('title', 'Page Title') @section('sidebar') @parent <p>This is appended to the master sidebar.</p> @endsection @section('content') @foreach($posts as $post) <article> <h2>{{ $post->title }}</h2> <p>{{ $post->excerpt }}</p> <p><a href="{{ route('post.show', ['slug' => $post->slug]) }}">Lire la suite</a></p> </article> @endforeach @endsection .لاحظ أن Blade يوفر نظامًا من المكونات تسمح لك بتضمين جزء من القالب باستخدام syntax أقرب إلى HTML: <form method="post"> <x-input :value="$post->title" label="Title"> </form> الإستمارات: إحدى المهام المتكررة عند العمل على الواجهة الخلفية هي إنشاء النماذج ومعالجتها. في Symfony، يمر إنشاء الإستمارة عبر صنف مخصص يسمح لنا بتمثيل البيانات في الإستمارة الخاصة مع إمكانية إضافة قواعد التحقق من الصحة إلى الخصائص باستخدام سمات PHP. في Laravel لا يوجد فئة لتمثيل الإستمارة، ولا لتوليد الإستمارة. في شيفرة القالب الخاصة بنا، سنقوم بإنشاء الإستمارة الخاص بنا بالطريقة الكلاسيكية (يمكننا استخدام التضمينات أو المكونات لتبسيط كتابة الحقول). ORM: يعد ORM أيضًا نقطة اختلاف كبيرة بين الإطارين. يستخدم Laravel بشكل افتراضي Eloquent وهو ORM يعتمد على Active Record حيث يكون النموذج مسؤولاً عن تمثيل الكيان، ولكن أيضًا عن إدارة البيانات من خلال الجدول الموافق في قاعدة البيانات. // get $post = Post::find(1); // update $post->title = "Title 1"; $post->save(); // create $post2 = Post::create(['title' => 'Title 2']); // delete $post3->destroy(); يستخدم Symfony بشكل افتراضي Doctrine وهو ORM يعتمد على مبدأ Data Mapper حيث يقوم بفصل مفهوم الكيان (كائن يمثل البيانات)، والمستودع Repository (كائن يستخدم لاسترداد الكيانات) والمدير Manager (كائن مسؤول عن إدارة البيانات). $em = $this->getDoctrine()->getManager(); // Entity Manager // get $post = $em->getRepository(Post::class)->find(1); // update $post->setTitle('Title 1'); // create $post2 = new Post(); $post2->setTitle('Title 2'); $em->persist($post2); // delete $em->remove($post3); // وفي جميع الحالات لا يتم إرسال البيانات إلى قاعدة البيانات // للقيام بذلك، يجب عليك استدعاء التابع flush $em->flush(); يمتلك Eloquent جمل أقصر ومنطقًا يبدو أكثر طبيعية، ولكن هذه البساطة الواضحة يمكن أن تؤدي إلى "نماذج كبيرة" لأنه سيتم تخزين كل المنطق في مكان واحد. بينما يسمح Doctrine بفصل أفضل ولكن سيتبين أنها مطولة نسبيًا في الحالات البسيطة. المصادقة: بالنسبة للمصادقة، يقدم Laravel "مجموعات بدأ" تسمح لنا بإعداد جميع عمليات إدارة حساب المستخدم الكلاسيكية. مثل Jetstream و UI بالإضافة إلى Breeze ستقوم هذه المجموعات بتوليد النماذج Models و المتحكمات بالإضافة لملفات القوالب اللازمة، مثلاً عند إستخدام Breeze: php artisan breeze:install php artisan migrate npm install npm run dev سيتم إنشاء الكود في مجلد التطبيق الخاص بك ويمكنك تعديله لإضافة السلوك الذي تريده عن طريق تعديل الكود المصدري. لدى Symfony، من جانبها، مكون أمان يقوم بإدارة المصادقة: php bin/console make:user php bin/console make:auth php bin/cinsole make:registration-form سيسمح لك تشغيل هذه الأوامر بتكوين إعداد المصادقة. من ناحية أخرى، ما يتم تقديمه افتراضيًا هو أقل بكثير مقارنة بـ Laravel وستحتاج إلى تطوير قسم تذكير كلمة المرور وتحرير الحساب وحذفه و ما إلى ذلك. نفس القلب: حاوية الخدمة Service Container: على الرغم من وجود نهج مختلف من حيث الأساليب المقدمة، إلا أن الإطارين يحتويان على نفس نظام حاوية الخدمة لتوصيل المكونات المختلفة معًا. إذا أردنا على سبيل المثال توليد صفحة: // laravel view('posts.index'); // نقوم بإستدعاء دالة عامة // Symfony $this->render('posts/index.html.twig') // نقوم بإستدعاء تابع من المتحكم على الرغم من الاختلاف الكبير بين الطريقتين، إلا أن هاتين الطريقتين تنفذان تعليمات برمجية متشابهة نسبيًا إذا نظرنا إلى ما هو مخفي خلفهما: // Laravel // view('posts.index'); Container::getInstance()->get('view')->make('posts/index'); // Symfony // $this->render('posts/index.html.twig') $this->container->get('twig')->render('posts/index.html.twig') في كلتا الحالتين، سيبدأ الإطار بإنشاء حاوية سيتم ملؤها بعد ذلك بخدمات مختلفة يمكن استرجاعها بعد ذلك وفقًا للاحتياجات داخل التطبيق. يختلف Laravel عن Symfony في أنه يجعل الحاوية قابلة للوصول في أي مكان في التطبيق بفضل استخدام Singleton، حيث سيفرض Symfony صرامة أكبر من خلال إجبار المستخدم على تحديد التبعيات من خلال ملف services.yml.1 نقطة
-
من الأفضل دائمًا إنشاء بيئة إفتراضية لكل مشروع تقوم بإنشاؤه لتجنب مثل تلك المشاكل وأيضًا تجنب تعارض بين إصدارات الحزم المثبتة بشكل عالمي. وقد يكون لديك أكثر من إصدار بايثون مثل إصدار 3.9 وإصدار 3.11 مثلاً، لذلك عند تثبيت مكتبة يتم تثبيتها في النسخة الأحدث وهي 3.11، وعند استخدام مترجم 3.9 مثلاً في محرر الأكواد vsocdeأو غيره كما أشار لك قيس، ستجد أن المكتبة غير مثبتة. والحل هو إما بإختيار مترجم بايثون الصحيح في محرر الأكواد والذي تم به تثبيت المكتبة، أو إنشاء بيئة إفتراضية venv أو pipenv وثتبيت المكتبات اللازمة، أو تثبيت المكتبة في مترجم بايثون الحالي من خلال الأمر التالي: pip install pygame1 نقطة
-
لا يوجد وقت معين للإنتهاء من الدورة فهي متاحة لك مدى الحياة، وأيضًا بإمكانك دخول الإمتحان أكثر من مرة لحين إجتيازه لكن من الأفضل الاستعداد لكي تجتازه من المرة الأولى حفاظًا على وقتك وجهدك. وبخصوص الإنقطاع ثم العودة للدراسة، فلا مشكلة في ذلك في حال وجود ما يمنعك، أما إذا كان تكاسلاً فنصيحتي إليك أنت المتضرر في النهاية، حيث ستعود للدارسة من البداية تقريبًا، ونعم ستتذكر بعض الأشياء لكن في الغالب ستنسى ما درسته. وستصاب بالملل والإحباط، لذلك اعمل على وضع خطة دراسة للإنتهاء من الدورة في وقت معين مع عدم الإسراع لإنهائها بل خذ وقت كافي للدراسة والاستيعاب والبحث والتطبيق وتنفيذ المشاريع، وذلك بشكل مستمر ففي البداية أنت بحاجة إلى الاستمرارية من أجل تثبيت ما تعلمته، وهنا نقاش سيفيدك:1 نقطة
-
لا يؤثر أبدا فقط كل ما عليك هو الانتهاء من الدورة بأي وقت و من ثم تقديم طلب إجراء الامتحان من خلال مركز المساعدة من هنا .1 نقطة
-
اختيار لغة البرمجة المناسبة يعتمد على عدة عوامل، بما في ذلك أهدافك واحتياجاتك الشخصية. سأقدم لك بعض النصائح التي قد تساعدك في اتخاذ قرارك: التوجه نحو البايثون: إذا كان هدفك الأساسي هو أن تصبح مطورًا للباك إند، فإن البايثون ما زالت خيارًا جيدًا. إنها لغة برمجة سهلة التعلم وتتمتع بشعبية كبيرة في مجال تطوير الويب باستخدام إطارات مثل Django و Flask. بالإضافة إلى ذلك، البايثون لديها مجتمع نشط ووثائق واسعة الانتشار، مما يعني أنه من السهل العثور على مصادر تعلم ودعم. الجافا سكربت و Node.js: إذا كان هناك اهتمام بالويب الحديث وتطوير تطبيقات الجانب الخادم، فإن الجافا سكربت و Node.js قد تكون خيارًا جيدًا. الجافا سكربت هي لغة برمجة قوية ومتعددة الاستخدامات وتُستخدم على نطاق واسع في تطوير الويب والتطبيقات المحمولة والسحابية وغيرها. Node.js هو بيئة تشغيل تعتمد على الجافا سكربت وتمكّنك من تشغيل الجانب الخادم لتطبيقات الويب باستخدامها. الاستفادة من المزيج: يمكنك أيضًا النظر في تعلم كلا اللغتين، البايثون والجافا سكربت، واكتساب مهارات في كلا العالمين. قد يكون لديك فرص أو مشاريع مستقبلية تتطلب التعامل مع لغة برمجة معينة، وبالتالي، تعلم لغتين مختلفتين قد يكون ضمانًا لمزيد من الفرص الوظيفية. عندما تكون لديك مهارات في لغتين برمجية مختلفتين، يمكنك الاستفادة من الفرص التي تتطلب إحدى اللغتين أو كلاهما. قد يكون لديك فرصة للعمل على مشروع يستخدم البايثون وآخر يستخدم الجافا سكربت، وبالتالي تكون قادرًا على الانتقال بين المشاريع واكتساب تجارب متنوعة. تكنولوجيا المستقبل: الجافا سكربت و Node.js تعتبران من التقنيات الحديثة والمستقبلية في مجال تطوير الويب والتطبيقات. تعلم الجافا سكربت واستخدام Node.js يمكن أن يمنحك فرصًا أوسع في تطوير تطبيقات الويب المتطورة والتكنولوجيا الحديثة مثل تطبيقات الوقت الحقيقي وتطبيقات الشبكات الاجتماعية والتطبيقات المبنية على المؤشرات الحيوية. القرار النهائي يعتمد على احتياجاتك واهتماماتك الشخصية وفرص العمل المتاحة في سوق العمل المحلي. قد تكون أفضل استراتيجية هي تعلم البايثون في البداية وبناء قاعدة قوية في مجال تطوير الويب، ثم توسيع مهاراتك بمعرفة الجافا سكربت واستخدامها لاحقًا. هذا سيسمح لك بالاستفادة من مزايا كلا اللغتين وزيادة فرصك الوظيفية في المستقبل.1 نقطة