لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 01/13/22 في كل الموقع
-
1 نقطة
-
1 نقطة
-
كيف يمكنني تحقيق ما يلي ، حيث يمثل prefsOutputStream المتغير الزائف الذي أهدف إلى تحقيقه: PrintStream oldOut = System.out; System.setOut(prefsOutputStream); System.out.println("مرحباا"); String logString = Preferences.userRoot().node("app").get("stdout",""); oldOut.println(logString); // هذه لطباعة مرحباا في لوحة التكم1 نقطة
-
أرجو إرفاق صورة للمشكلة1 نقطة
-
1 نقطة
-
هناك طريقتان متاحتان لعمل الثريد. الطريقة الأولى هي انك تعمل وراثة لكلاس Thread. يحتوي كلاس Thread على العديد من الدوال التي تسمح لنا بإجراء عمليات مختلفة على مؤشر الترابط. فئة الكائن تطبق الواجهة Runnable. تحتوي فئة مؤشر الترابط على المُنشئات التالية التي تُستخدم لإجراء عمليات متنوعة. مثال: // تنفيذ الواجهة عن طريق كلاس الثريد public class ThreadExample1 extends Thread { // هذه الدالة من اجل تشغيل الثريد public void run() { int a= 10; int b=12; int result = a+b; System.out.println("Thread started running.."); System.out.println("Sum of two numbers is: "+ result); } public static void main( String args[] ) { // هنا انشاء كائن للكلاس ثريد ThreadExample1 t1 = new ThreadExample1(); // هنا استدعاء دالة التنفيذ لتشغيل الثريد t1.start(); // ويكون ناتج التنفيذ 22 } } الطريقة الثانية هي تنفيذ واجهة التشغيل. دعنا نأخذ مثالاً لفهم كيف يمكننا إنشاء وبدء وتشغيل Thread باستخدام الواجهة القابلة للتشغيل. public class Main implements Runnable { public void run() { // نفس الدالة الموجودة في المثال السابق System.out.println("This code is running in a thread"); } } public class Main implements Runnable { public static void main(String[] args) { Main obj = new Main(); Thread thread = new Thread(obj); // تمرير الكائن الى الثريد thread.start(); System.out.println("وهنا بداية الثريد"); } public void run() { System.out.println("تشغيل الثريد"); } }1 نقطة
-
التابع flask.jsonify يعيد نتيجة من نوع flask.Response أي يكون كود JSON جاهز ليتم إرساله إلى العميل، ويتم إرسال ترويسة content-type بقيمة application/json حتى يتمكن العميل من معرفة نوع البيانات المرسلة إليه، ويقوم بمعالجتها بشكل سليم، على الجانب الآخر التابع json.dumps يقوم بتحويل قاموس Dictionary من البيانات (أو قائمة List) إلى نص ليتم إستخدامه أو إرساله أو تخزينه لوقت لاحق، وإذا إستخدمت هذا التابع في إرسال كود JSON إلى العميل فلن يتم تجهيز ترويسة من content-type بقيمة application/json، ولكن سيتم إستخدام القيمة الإفتراضية text/html; charset=utf-8 يمكنك أن تتأكد من الترويسات المرسلة إلى العميل من خلال أدوات مثل Postman أو أدوات المطورين Dev tool، كما في الصورة التالية: عند إستعمال التابع flask.jsonify عند إستعمال التابع json.dumps لاحظ أيضًا كيف تعرفت الإضافة JSON Formatter على كود JSON عند إستعمال التابع flask.jsonify، بينما لم تتعرف عليه عند إستعمال التابع json.dumps، وذلك بسبب الترويسة content-type لذلك إن أردت أن تقوم بعمل API أو تريد أن ترسل كود JSON بشكل عام، فعليك أن تستعمل التابع flask.jsonify المُعد لهذا الأمر، بينما إذا أردت أن تقوم بتخزين الكود في قاعدة بيانات أو ملف ما، فعليك أن تستعمل التابع json.dumps ملاحظة: التابع flask.jsonify يستخدم التابع json.dumps ضمنيًا لكي يقوم بتحويل القواميس والقوائم إلى نص String، ولكن يتم تجهيز الترويسة content-type كما ذكرت سابقًا.1 نقطة
-
يمكنك أن تستخدم الخاصية json فقط وليس التابع ()json في الكود الخاص بك، حيث تعيد هذه الخاصية قاموس يعبر عن كود JSON الذي تم إرساله في جسم الطلب request، كالتالي: @app.route('/api/<id>', methods=['GET', 'POST']) def add_message(id): content = request.json # dictionary return content أيضًا تستطيع أن التابع ()get_json للحصول على نفس القيمة: @app.route('/api/<id>', methods=['GET', 'POST']) def add_message(id): content = request.get_json() return content لكن لاحظ أن كلا الطريقتين السابقتين تحتاج إلى إرسال نوع البيانات application/json كترويسة في الطلب header وإلا لن يعمل الكود السابق، ولكي تتخطي هذا النوع الوحصول على البيانات حتى وإن لم يتم إرسال application/json ضمن ترويسة الطلب، فعليك أن تقوم بتمرير الخاصية force بقيمة True إلى التابع get_json: @app.route('/api/<id>', methods=['GET', 'POST']) def add_message(id): content = request.get_json(force=True) return content وفي حالة ظهر لك الخطأ 400 Bad Request response فهذا يعني أن هناك مشكلة في كود JSON المرسل إلى الخادم، ويجب التحقق منه بشكل قبل إرساله إلى الخادم.، ويمكنك أن تستعمل مواقع مثل JSON validator للتحقق من صلاحية الكود أيضًا تستطيع أن تقوم بمرير الخاصية silent بقيمة True إلى التابع get_json لكي لا يظهر أي أخطاء في حالة حدوث مشكلة: @app.route('/api/<id>', methods=['GET', 'POST']) def add_message(id): content = request.get_json(force=True, silent=True) if not content: return "can't parse JSON code" return "done"1 نقطة
-
يجب أن تقوم أولًا بجلب البيانات التي تريدها من قاعدة البيانات، وهذه العملية تتم داخل المتحكم Controller، كالتالي: $users = User::where('name', 'Sameh')->get(); return view('view-name', compact('users'); بهذا الشكل تم جلب البيانات من قاعدة البيانات وتم تمريرها إلى الملف view-name.blade.php يمكنك الآن أن تقوم بعمل حلقة تكرار foreach لطباعة بيانات المستخدمين في الملف view-name.blade.php، على النحو التالي: @foreach ($users as $user) <div> <span>Name: {{ $user->name }}</span> <span>Phone: {{ $user->phone }}</span> </div> @endforeach1 نقطة
-
أغلب الشركات تشترط أن يكون لدى المبرمج خبرة عدة عام أو عامين أو أكثر حسب الشركة، وبعض هذه الشركات قد لا تطلب أي خبرة سابقة (يسمى تدريب في بعض الأحيان ويكون بمرتب أيضًا)، لذلك قد تجد صعوبة في العمل في أحد الشركات خصوصًا إن لم يكن لديك مشاريع قد قمت بها بنفسك، لكن ليس من المستحيل أن تعمل في أحد الشركات، وهذا على عكس العمل الحر Freelancing بالطبع، حيث لا تحتاج إلى أي خبرة أو مشاريع سابقة لتعمل في أحد مواقع العمل الحر مثل مستقل (بالتأكيد وجود مشاريع في معرض أعمال سيزيد من فرصة الحصول على عمل أيضًَا). لاحظ أيضًا أنك إن لم تنهي تعلم باقي الدورة وبدأت تبحث عن عمل قبل أن تتعلم باقي أساسيات Laravel من خلال إكمال باقي مشاريع الدورة، فقد تعمل على مشاريع في أحد الشركات ولا تعلم كيفية القيام بمهمة معنية وذلك لأنك لم تكمل تعلم أساسيات Laravel وبالتالي ستضطر للتعلم أثناء العمل على مشروع مما سيجعلك تحت ضغط وقلة الوقت، وبالتالي قد يتم إنتاج المشروع بشكل غير سليم أو ربما الكود لن يكون منظم للغاية أو غير نظيف Dirty Code (عكس Clean Code) وسيأثر على عملك في المجمل. لاحظ أني لا أقصد أن هذه المشاريع التي ذكرتها في سؤالك مفيدة وسوف تستعملها بالفعل في أغلب المشاريع و المواقعالتي ستعمل عليها، ولكنها لا تكفي لعمل أي مشروع مهما كان، وهذا سبب وجود باقي الدروس والمسارات في الدورة (لتتعلم كل ما تحتاجه للعمل). لذلك نتيجة لكل ما سبق، فربما تجد صعوبة في العثور على عمل، ولكن حتى إن قمت بالعمل في أحد الشركات فستحتاج إلى إكمال التعلم وإنهاء باقي المشاريع (وفي الغالب ستتعلم وأنت تعمل على مشاريع الشركة)، لذلك من الأفضل أن تكمل الدورة للنهاية قبل البحث عن عمل في أحد الشركات.1 نقطة
-
يمكنك أن تستعمل التابع select و الذي يقبل محدد CSS كمدخل له، وبالتالي تستطيع تحديد كل العناصر المحددة Selected من خلال الكود التالي: from bs4 import BeautifulSoup content="""<select> <option value="0">1999/9/5</option> <option value="1">2010/9/5</option> <option value="2">2017/9/5</option> <option value="3" selected>220/9/5</option> </select> """ soup = BeautifulSoup(content, features='lxml') # تحديد العناصر المحددة فقط selected = soup.select('option[selected]') print(selected) # [<option selected="" value="3">220/9/5</option>] يعيد هذا التابع كل العناصر التي تم إيجادها.1 نقطة
-
مقالك حفزني جدا لدراسة البرمجة. بدأت بلغة بايثون و حققت في مدة عشرة أيام نتيجة طيبة لم أكن أتوقعها من قبل غير أن تعلم البرمجة تستهلك وقتا كبيرا قد تصل لسبع أو ثماني أو تسع ساعات ساعات أحيانا مع احتساب الاستراحات القصيرة طبعا والوجبات و الصلوات في وقت التعلم. فالبرمجة يلزمها التفرغ الكامل لاحترافها. ما يلزم المبتدئ هو التفكير المنطقي و التأمل في كل كود تتم كتابته أثناء التعلم و إعادة كتابته مرارا و التلاعب به و إدخال بعض الأكواد الصغيرة لترسيخها كي لا تنسى. كما يجب تكرار ما تعلمته يوم أمس و مراجعته و كتابة أكواد مشابهة له ثم البدأ في الدرس الجديد كما لا ينبغي الاستهانة بأي خطوة فيجب فهمها حتى لا تسبب مشاكل في المستقبل , فالغرض الإتقان و ليس الاطلاع فقط. فنصيحتي لك أيها مقبل على تعلم البرمجة أن تبدأ يومك بقراءة وردك من القرءان الكريم و صلاة ركعتين و دعاء الله الفهم و الصبر و العزيمة فإذا استعصى عليك أمر في التعلم حاول أن تحلها (هو أمر يسبب النرفزة )فإن لم تنجح في ذلك إياك أن تفشل و تترك الأمر . إذهب فتوضأ و ادع الله و تنفس هواء نقيا ثم ارجع فسيفتح عليك فيه فأنا أتكلم عن تجربة يا إخواني1 نقطة