لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 12/14/21 في كل الموقع
-
2 نقاط
-
أحاول أن أقوم بعمل مسار يتأكد من المستخدم ويعيد الصورة الخاصة به، ولكن لا يمكنني أن أرسل صورة بإستخدام فلاسك Flask، هل توجد طريقة لإرجاع صورة من مسار معين بدلًا من وضع الصورة في مجلد static، بحيث يمكنني زيارة المسار route التالي وتظهر الصورة: http://localhost:5000/user-image/1 نقطة
-
قمت بعمل جملة طباعة بسيطة قبل سطر تشغيل التطبيق، ولكن وجدت أن هذه الجملة يتم طباعتها مرتين وليس مرة واحدة: from flask import Flask app = Flask(__name__) @app.route('/', methods=['POST', 'GET']) def index(): return "home page" if __name__ == '__main__': print('# Starting #') # يتم طباعة هذه الجملة مرتين app.run(debug=True) حيث وجدت أن نتيجة تشغيل التطبيق كالتالي: # Starting # * Serving Flask app "main" (lazy loading) * Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Debug mode: on * Restarting with stat # Starting # * Debugger is active! * Debugger PIN: 395-899-610 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) لماذا يتم تشغيل التطبيق مرتين وليس مرة واحدة؟ ألن يؤثر هذا الأمر على أداء المشروع؟1 نقطة
-
السلام عليكم ورحمة الله وبركاته تحيبه طيبه للجميع امتلك فاكشن في ملف asp.net التصميم كالتالي: <script type="text/javascript"> $(document).ready(function () { $(<%=lstBoxTest.ClientID%>).SumoSelect({ okCancelInMulti: true }); }); </script> ارغب بتحويلها او نقلها الى ملف منفصل ملف js اعلم طريقة انشاء الملف ولكن الفكشن لم تعمل لدي بعد نقلها للملف المنفصل حاولت كتابتها بشكل التالي: $(document).ready(function () { $('<%=lstBoxTest.ClientID %>').SumoSelect({ okCancelInMulti: true }); }); اعتقد ان المشكله في الجزء : lstBoxTest ولكني لم اعلم كيف يمكن كتابة الفكشن في الملف المنفصل بشكل الصحيح ياليت من لديه فكره عن الامر يساعدنا شكرا لكم1 نقطة
-
1 نقطة
-
المشكلة إذاً في التعرّف على ClientID، ضع القيمة ClientIDMode = Static ضمن صفحة aspx ثم يمكنك الوصول بشكل مباشر للعنصر بهذا الشكل: $("#1stBoxTest")1 نقطة
-
تأكد من ربط الملف والإشارة للمسار بالشكل الصحيح، كما يمكنك تجربة استخدام إحدى الطريقتين ضمن ترويسة الصفحة أو ضمن الكود: <head runat="server"> <script src="test.js" type="text/javascript"></script> </head> Page.ClientScript.RegisterClientScriptInclude("test", ResolveUrl("~/js/test.js"));1 نقطة
-
هل قمت بربط ملف الجافاسكريبت بعد إنشائه؟ بقد أن قمت بإنشاء ملف الجافاسكريبت وليكن test.js ووضعت بداخله الشيفرة البرمجية التالية: $(document).ready(function () { $('<%=lstBoxTest.ClientID %>').SumoSelect({ okCancelInMulti: true }); }); يجب عليك ربطه مع الصفحة السابقة التي سيتم تنفيذ هذا الكود بداخلها من خلال الوسم التالي: <script src='<%=ResolveClientUrl("~/js/test.js") %>' type="text/javascript"></script> مع استبدال المسار: ~/js/test.js حسب اسم ومكان توضّع ملف الجافاسكريبت الذي قمت بإنشائه.1 نقطة
-
كما تلاحظ عندما نقوم بإدخال مُعرف غير موجود لا نقوم بإرجاع قيمة null للمُستخدم بل بدلًا من ذلك نقوم بإرجاع الNullPerson وهو عبارة عن كائن من نوع person ولكن له خصائص معينة مثل أن إسمه guest يُستخدم هذا النمط عند التعامل مع مصدر للبيانات مثل قاعدة بيانات ويوجد لدينا إحتمالية رجوع قيمة بnull فنستخدم ذلك النمط لنتفادى الأخطاء التي قد تنتج من التعامل مع قيمة بnull constructor(id,name) { this.id = id this.name = name; } } // Null person wrapper class NullPerson { constructor() { this.id = null this.name = 'Guest'; } } const persons = [ new Person(1, "sharaf"), new Person(2, "ashraf") ] function findPerson(id) { const person = persons.find(person => person.id === id) if (person) return person else return new NullPerson() } let personOne = findPerson(1) console.log("Welcome, " + personOne.name) let personTwo = findPerson(99) console.log("Welcome, " + personTwo.name)1 نقطة
-
كيف ممكن أدرج كود بصفحة لحالها بلغة الجافا بحيث عندما اضغط على الزر الشراء بالسعر المكتوب تضاف الى السلة المدرجة في صفحة لحالها و اذا اختار اكثر من منتج لشراؤه يتم عد القطع ويحسب المجموع النهائي ) ولما اضغط على الزر ارسال الموجود بصفحة Purchase_basket تظهر رسالة شكر لك على ثقتك بنا سيتم معالجة طلبك خلال 3 أيام ملاحظة (لما يضغط على الزر السعر سوف يتقلة على صفحة )Purchase_baske1 نقطة
-
ستلاحظ في الملفات المرفقة إنشاء ملف الجافاسكريبت وكيف يتم إرسال البيانات من بين الملفات drive-download-20211214T123328Z-001.zip1 نقطة
-
أنماط التصميم: تعتبر نماذج لحل مشكلات متكررة في تصميم البرمجيات ،هي عبارة عن طريقة لحل مشكلات المعتادة أثناء تصميم البرمجيات بحيث يمكنك استعمال الحلول في حالات مختلفة وهي ليست كود برمجي . تعتبر أنماط التصميم سهلة التعديل وسهلة الاختبار ومن أشهرها MVC و MVVM و Singleton وغيرها من أنماط التصميم . هناك أنواع متعلقة بإنشاء الكلاس نمط Singleton نمط Builder نمط Prototype نمط Factory Method نمط Abstract Factory أنماط متعلقة بشكل الكلاس وكيفية عمله نمط Adapter نمط Composite نمط Facade نمط Bridge نمط Decorator نمط Proxy نمط Flyweight أنماط متعلقة بسلوك الكائنات : هذه الأنماط تتعلق بكيفية التواصل بين الكائنات بشكل منفصل نمط Mediator نمط Observer نمط Null Object نمط Memento نمط State نمط Visitor وهناك أنماط أخرى في هذا النمط MVC Model : يحتوى على البيانات . view : عرض المعلومات للمستخدم. controller : يعالج البيانات التي تأتي من المستخدم.1 نقطة
-
الdesign patterns أو (أنماط التصميم) هي عبارة عن نمط أو نموذج يُستخدم لحل مشكلة ما شائعة, على سبيل المثال إن كان لدينا صنف يُسمى duck ولدى هذا الصنف تصرفين أو دالتين أساسيين هما fly و quack وكان لدينا أنواع من البط فبالتالي سنجعلهم يرثون من الصنف duck, ولكن ماذا إن كان لكل نوع من البطducks طريقة مختلفة للطيران fly وإصدار الصوت quack فبالتالي ماذا يمكننا أن نفعل؟ إما أن نقوم بعمل implementation للدالتين fly & quack بداخل كل صنف من الأصناف والذي سيكون أمرُ مرهق وسينشئ إحتمالية أكبر لحدوث الأخطاء البرمجية ويوجد حل أخر وهو إستخدام النمط strategy design pattern والذي في تلك الحالة أو الموقف يخبرنا أن نقوم بعمل أصناف لأنواع الطيران وإصدار الصوت المختلفة, على سبيل المثال FlyWithWings, FlyWithWings ونجعلهم جميعا يرثون من واجهة interface مشتركة ولنسميها الأن flying, ومن ثم نقوم بإعطاء أصناف البط المختلف خاصية تعبر عن سلوك الطيران flyTechnique ونجعلها من نوع نفس الواجهة التي أنشئناها من قليل flying ومن ثم نقوم بعمل الدالة setFlyTechnique, ونقوم بتكرار الخطوات السابقة مع دالة إصدار الصوت, بهذه الطريقة قمنا بفصل الخواص التي تتغير ووضعناها في أصناف خاصة بها وبالتالي لا يهمنا متى تمت إضافة أو إزالة نوع جديد من البط أو الطيران أو الصوت حيث أننا قمنا بعزل كلٍ منهم عن الأخر1 نقطة
-
تعرف الجريمة الإلكترونية على أنها جريمة يكون فيها الكمبيوتر هدفًا للجريمة أو يُستخدم كأداة لارتكاب جريمة أو للوصول إلى المعلومات الشخصية للمستخدم أو المعلومات التجارية السرية أو المعلومات الحكومية أو لتعطيل جهاز معيّن. يعد بيع المعلومات المذكورة أعلاه أو الحصول عليها عبر الإنترنت جريمة إلكترونية. ولها أيضاً عدة أنواع منها: هجمات منع الوصول للخدمة DDOS: تُستخدم هذه لجعل الخدمة عبر الإنترنت غير متاحة وتعطيل الشبكة عن طريق إغراق الموقع بحركة المرور من مجموعة متنوعة من المصادر. Botnets أو شبكات الروبوت: هي شبكات من أجهزة كمبيوتر تم اختراقها يتم التحكم فيها خارجيًا بواسطة متسللين عن بُعد. ثم يرسل المتسللون عن بُعد رسائل غير مرغوب فيها أو يهاجمون أجهزة كمبيوتر أخرى من خلال شبكات الروبوت هذه. يمكن أيضًا استخدام شبكات الروبوت للعمل كبرامج ضارة وأداء المهام الضارة. التصيد أو Phishing: يتضمن هذا النوع من الهجوم قراصنة يرسلون مرفقات بريد إلكتروني ضارة أو عناوين URL إلى المستخدمين للوصول إلى حساباتهم أو أجهزة الكمبيوتر الخاصة بهم. الهندسة الاجتماعية Social Engineering: تتضمن قيام المجرمين بالاتصال المباشر بالشخص المراد اختراقه عادةً عن طريق الهاتف أو البريد الإلكتروني لاكتساب ثقته وعادة ما يقومون بانتحال شخصية وكيل خدمة عملاء وهي بحد ذاتها جريمة أخرى. يمكنك الاطلاع على المزيد من التفاصيل من خلال البحث على الانترنت على مصطلح Cyber Crime أو الجريمة الالكترونية كما يمكنك إيجاد المزيد من التفاصيل هنا:1 نقطة
-
تعريف design patterns: أنماط التصميم (Design Patterns) هي أساليب نموذجية/فعالة/أفضل حل ممكن تحل المشاكل التي تتكرر كثيرًا في تصميم البرمجيات/طريقة تفاعل مكونات النظام الحاسوبي، ويمكن تشبيهها بالمخططات التي تستخدمها -وتُعدَّلها أيضًا- من أجل إصلاح مشكلة بعينها في شيفرتك. لها عدة أنواع، تفيد في جميع مجالات علوم الحاسب، أنماط التصميم الإنشائية Creational Design Patterns: كيفية بناء الأغراض البرمجية أنماط التصميم الهيكلية: هيكلة صنف ما بطريقة تحقق تفاعله من أصناف أخرى. أنماط التصميم السلوكية: تعديل سلوم غرض برمجي خلال عمل المشروع توثيق موسوعة حسوب: أنماط التصميم مقالة:1 نقطة
-
من الممكن نقل البيانات عبر الصفحات بإستخدام ال session storage وهي عبارة عن مساحة تخزينية للمتصفح خاصة بكل نافذة فيمكنك إذًا إضافة حدث click على زر السعر يكون كالأتي const product={ name:"اسم المنتج", price:"سعر المنتح" } purchase_btn = document.querySelector('#اكتب هنا المُعرف الخاص بالزر') purchase_btn.addEventListener('click',()=>localStorage.set('product', JSON.stringify(product)) window.location.href = "مسار الصفحة المُراد التحويل لها"; ومن ثم يمكن إستقبال البيانات في الصفحة الأخرى عبر الدالة localStorage.get const product = JSON.parse(localStorage.getItem("product")) ها قد اصبح لديك المنتج في الصفحة الأخرى ويمكنك إظهار رسالة شكر لك على ثقتك بنا سيتم معالجة طلبك خلال 3 أيام عبر الدالة alert كما بالشكل التالي alert(" شكر لك على ثقتك بنا سيتم معالجة طلبك خلال 3 أيام ")1 نقطة
-
1 نقطة
-
يمكنك إستخدام الدالة alert, حيث تقوم تلك الدالة بأخذ مُعامل ومن ثوم يتم إظهار نافذة منبثقة على الشاشة تحمل الرسالة التي تم تمريرها للدالة, ويمكنك إستغلالها في الشفرة لديك بشكلٍ مماثل للتالي <button id="alert" onclick="alert('لقد تم الحجز بنجاح')"> book a session </button> كما تُلاحظ قد أضفنا الخاصية onclick للزر والتي تحدد ما يجب على الزر فعله عند الضغط عليه من قبل المُستخدم, ومن ثم يتم تنفيذ الدالة alert والتي تقوم بإظهار الرسالة إلى المستخدم1 نقطة
-
يحدث هذا بسبب أن المنفذ الذي يقوم Apache بإستعماله مستعمل بالفعل من قبل برنامج آخر. في الغالب، يكون هذا المنفذ هو المنفذ 80، وبالتالي ولحل المشكل نقوم إما بـ : تعطيل أو إغلاق أو تغيير منفذ البرنامج الذي يقوم بحجز هذا المنفذ إعداد خادم Apache ليستخدم منفذا آخرا من لوحة تحكم xampp بالقسم الخاص بـخادم apache اضغط إعداد config. من القائمة المنسدلة اختر Apache(httpd.conf) سيتم فتح الملف httpd.conf في محرر نصوص قم بالبحث عن رقم المنفذ 80 (يمكن عادة البحث في محركات النصوص عن طريق الضغط على ctrl+f وطباعة السلسلة النصية المراد البحث عنها) قم بتغييرها إلى 8080 في كامل المواضع التالية: Port 80 => Port 8080 Listen 80 => Listen 8080 servername localhost: 80 => servername localhost: 8080 يجب التأكد من حفظ الملف وإغلاقه، ثم القيام بنفس الخطوات في تغيير المنافذ 443 إلى 4433 في ملف htpd-ssl.conf: المواضع التي يجب تغييرها في الملف هي: Listen 443 => Listen 4433 <VirtualHost_default_:443> => <VirtualHost_default_:4433> يجب التأكد بعد هذا من حفظ الملف وإعادة تشغيل خادم Apache.1 نقطة
-
نريد للدالة أن تستقبل كوسطاء لها: مصفوفة حجم المصفوفة القيمة التي نريد البحث عنها طالما أن الدالة تعيد قيمة رقمية فإن نمطها يجب أن يكون int، والمصفوفة نمرر مؤشر لبدايتها، وعدد عناصرها. int findIndex(int *array, size_t size, int target) { } الآن أكملي داخل الدالة بعمل المنطق للبحث عن عدد، مثلا عداد ضمن حلقة، وعند إيجاد تطابق باستخدام شرط if نعيد قيمة العداد باستعمال return في آخر الدالة نعيد -1 أي قمنا بعمل بحث و لم نجد القيمة int findIndex(int *array, size_t size, int target) { // البحث عن عمصر ضمن مصفوفة // في حال وجدنا عنصر نعيد العداد return -1; } شاركي الشيفرة البرمجية لديك إن لم تتمكني من حل المشكلة، لكن عليك التجريب بنفسك للبحث عن عنصر ضمن مصفوفة نستخدم حلقة for مثلاً1 نقطة
-
المشكلة أن المنفذ الذي سوف يستعمله XAMPP محجوز لتطبيق آخر تأكدي من عدم تشغيل أكثر من نسخة من برنامج XAMPP و حاولي إيقاف تطبيق Skype. لإيقاف البرامج، في شريط البرامج (الأيقونات المصغرة) في ويندوز، نضغط بالزر الأيسر على أيقونة البرنامج ثم نعمل exit أو إغلاق.1 نقطة
-
سبب المشكلة الأولى أنك تقوم بإستخدام ملف باسم flask.py وعندما تستدعي الكائن Flask أو request من المكتبة flask فإن بايثون تحاول إستدعاء هذه الكائنات من هذا الملف flask.py وبالتالي يفشل الكود في العثور على هذه الكائنات، ولحل المشكلة يجب إعادة تسميه الملف لأي شيء آخر غير flask.py مثل app.py الأمر الآخر هو أنك يجب أن تقوم بتثيت flask في البيئة الإفتراضية وليس بشكل عام في نظام التشغيل، وذلك من خلال تفعيل البيئة الإفتراضية source bin/activate ثم تنفيذ الأمر التالي لتثبيت فلاسك Flask: pip install flask الآن يمكنك تشغيل المشروع بدون مشكلة: python app.py أو من خلال الأمر flask: flask run1 نقطة
-
تطبيقات فلاسك Flask تحتاج لإضافة كل الملفات من نوع Static مثل ملفات CSS و ملفات JavaScript إلى مجلد باسم static والوصول إلى هذه الملفات من خلال الدالة url_for وتمرير القيمة static إليها كمعامل أول ومسار الملف المراد تحميله داخل المجلد static، وبالتالي ستكون بنية المشروع على النحو التالي: /app - app_runner.py /services - app.py /templates - home.html /static /styles - style.css أما في الملف home.html فيجب أن تقوم بتعديل مسار الملف ليكون كالتالي: <link rel="stylesheet" href="{{ url_for('static', filename='styles/style.css') }}"> أو إذا كان ملف JavaScript: <script srd="{{ url_for('static', filename='js/script.js') }}"></script>1 نقطة
-
الإصدار 1.0.0
10334 تنزيل
تُعد أنظمة التشغيل موضوعًا متقدمًا في العديد من برامج علوم الحاسوب، حيث يتعرف المتعلم على كيفية البرمجة بلغة C بحلول الوقت الذي يتعرف فيه على أنظمة التشغيل، وربما يأخذ المتعلم فصلًا دراسيًا في معمارية الحاسوب Computer Architecture قبل ذلك، فيصبح الهدف من تقديم هذا الموضوع عادةً هو عرض تصميم وتنفيذ أنظمة التشغيل للطلاب مع افتراض ضمني أن بعضهم سيجري بحثًا في هذا المجال، أو يكتب جزءًا من نظام تشغيل. هذا الكتاب مترجم عن الكتاب Think OS لكاتبه آلن داوني Allen B. Downey والذي يعد مسودة أولية لم تكتمل بصورة نهائية بعد إذ طُوّر لفصلٍ دراسي في كلية أولين Olin College يدعى أنظمة البرمجيات Software Systems. لا يفترض هذا الكتاب أنك قد درست معمارية الحاسوب، فيجب أن يمنحك فهمًا أفضل أثناء قراءته عن الحاسوب ومعماريته وكيف يعمل المعالج والذاكرة فيه وكيف تُدار العمليات وتُخزَّن الملفات وما يحدث عند تشغيل البرامج، وما يمكنك القيام به لجعل البرامج تعمل بصورة أفضل وأسرع بوصفك مبرمجًا. يشرح الفصل الأول بعض الاختلافات بين اللغات المُصرَّفة compiled واللغات المُفسَّرة interpreted، مع بعض الأفكار حول كيفية عمل المصرِّفات compilers، ويشرح الفصل الثاني كيف يستخدم نظام التشغيل العمليات لحماية البرامج قيد التشغيل من التداخل مع بعضها البعض. ويشرح الفصل الثالث الذاكرة الوهمية virtual memory وترجمة العناوين، ويتحدث الفصل الرابع عن أنظمة الملفات ومجرى البيانات، ويصف الفصل الخامس كيفية تشفير الأرقام والأحرف والقيم الأخرى، ويشرح أيضًا العامِلات الثنائية bitwise operators. أما الفصل السادس، فيشرح كيفية استخدام إدارة الذاكرة الديناميكية وكيفية عملها، ويدور الفصل السابع حول التخبئة caching وهرمية الذاكرة. ويشرح الفصل الثامن تعدد المهام multitasking والجدولة scheduling. ويدور الفصل التاسع حول خيوط POSIX وكائنات المزامنة mutexes، ويشرح الفصل العاشر المتغيرات الشرطية POSIX ومشكلة المنتج / المستهلك، ويدور الفصل الحادي عشر حول استخدام متغيرات تقييد الوصول POSIX وتطبيقها في لغة C. هذا الكتاب مرخص بموجب رخصة المشاع الإبداعي Creative Commons «نسب المُصنَّف - غير تجاري - الترخيص بالمثل 4.0». يمكنك قراءة فصول الكتاب على شكل مقالات من هذه الصفحة، «مدخل إلى أنظمة التشغيل»، أو تجدها مسردة بالترتيب التالي: الفصل الأول: مفهوم التصريف Compilation في لغات البرمجة الفصل الثاني: العمليات Processes في أنظمة التشغيل الفصل الثالث: الذاكرة الوهمية Virtual memory في نظام التشغيل الفصل الرابع: فهم الملفات Files وأنظمة الملفات file systems الفصل الخامس: تمثيل الأعداد والنصوص بالبتات وإجراء العمليات على مستوى البت الفصل السادس: إدارة الذاكرة Memory management في لغة C الفصل السابع: فهم عملية التخبئة Caching في معمارية الحاسوب الفصل الثامن: تعدد المهام Multitasking في الحواسيب الفصل التاسع: مفهوم الخيوط Threads في عملية المعالجة الفصل العاشر: المتغيرات الشرطية وحلها مشاكل التزامن بين العمليات في لغة C الفصل الحادي عشر: متغيرات تقييد الوصول Semaphores في لغة البرمجة سي C1 نقطة -
انماط التصميم(design patterns) ترمز لطريقة معينة لحل مشكلة شائعة نوعا ما في عالم الSoftware , مثلاً نوع من المشاكل هو كيفية إنشاء الكائنات؟ يوجد عدد ﻻ نهائي من الطرق لإنشاء الكائنات بالتأكيد حسب الموقف ولكن يوجد مواقف شائعة يمكننا مناقشتها والإهتمام بها, مثلاً إن كنا نريد إنشاء كائن وكان هذا الكائن لديه الصفات الأتية هذا الكائن مشترك بين عدد من الكائنات في البرنامج عملية إنشاء الكائن مكلفة وتستهلك كميةً لا بأس بها من موارد الجهاز هذا الكائن ليس له state معينة, او الstate الخاصة به مشتركة بين الكائنات في البرنامج طوال دورة حياة البرنامج( الstate نقصد بها حالة الكائن ,مثلاً إن كان يعبر عن إتصال بقاعدة البيانات, فهل حالة الكائن هي أن الإتصال مفتوح ؟ أم تم إغﻻق الإتصال؟ في هذه الحالة ليس من العقل أن نقوم بإنشاء الكائن في كل مرة نحتاجه بها , من المنطقي أن نقوم بإنشاء ذلك الكائن مرة واحدة ويقوم باقي الكائنات بإستدعائه في كل مرة كما في المثال الأتي class singleTone{ private static singleTone obj=new singleTone(); private singleTone(){} public static singleTone getInstance(){ return obj; } } الconstructor الخاصة بهذا الclass من النوع الخاص privateمما يعنى أن لا يمكننا إنشاء كائنات منه, الطريقة الوحيدة للحصول على كائن منه هي مناداة الدالة getInstance والتي بدورها تقوم بإرجاع الكائن الذي قمنا بإنشاءه سابقاً في بداية الclass , ففي هذه الحالة نستطيع ضمان أن لن يتم إنشاء هذا الكائن أكثر من مرة , وبالمناسبة هذا النمط يُسمى بال singletone pattern وقد وضعته حتى أوضح لك معنى انماط التصميم بشكل أفضل1 نقطة
-
السلام عليكم اعرف ان المقال قديم نوعا ما لكن لدي سؤال هل النقد الوارد في آخر المقال يعني ان فكرة انماط التصميم متجهة نحو الزوال وانه لا يجب الاعتماد عليها في حلول المشاكل، ام انه يعني تطوير انماط التصميم لتلقى اهتمام المختصين.1 نقطة