اذهب إلى المحتوى

Ayman Alrawy

الأعضاء
  • المساهمات

    142
  • تاريخ الانضمام

  • تاريخ آخر زيارة

أجوبة بواسطة Ayman Alrawy

  1. انا احيانا استخدم ghatgpt لحل بعض المشاكل البرمجة او ليشرح لي بعض الجزئيات التي لم افهمها او حل مشاكل في الكود.مع العلم اني في مرحلة تعلم البرمجة فهل استخدامي لchatgpt سيساعدني للتعلم اسرع ام انه علي البحث في قوقل وستاك اوفر فلو افضل لاتعلم مهارة البحث

    • أعجبني 2
  2. بتاريخ 13 دقائق مضت قال Mustafa Suleiman:

     

    ولكن سأحدثك بواقعية وصراحة، الأمر يتوقف على ظروفك الشخصية والمرحلة العمرية التي أنت فيها، فالبعض يفعل ما تفعله عندما يريد تغيير حياته للأفضل أو لديه شغف كبير بالبرمجة وأنا مريت بتلك المرحلة لا مشكلة في ذلك، لكن عليك أن تعلم ما الذي ستضحي به.

    فهل الأمر يستحق التضحية؟ الإجابة تختلف إختلافًا شديدًا بين الجميع، فالبعض يقضي 10 ساعات يوميًا أو أكثر لتعلم البرمجة وأنا أفضل ذلك الأمر يستحق فعلاً التضحية من أجله فترة 6 شهور أو حتى سنة، فالمقابل هو تغيير حياتك للأفضل وإعطاء قيمة لحياتك بإمتلاك مهارات قيمة وأن تصبح ذا قيمة في سوق العمل، ولكن لا تنسى أن الآخرة هي الأهم فيجب الإهتمام بصلاتك وحق أهلك عليك.

    دع أصحابك يتحدثون كيفما شاؤوا فلكل شخص حياته وأهدافه، حاوط نفسك بأشخاص لهم نفس الهدف من خلال جروبات على الإنترنت وذاكر معهم، ويمكنك الرجوع لأصحابك بعد سنة لا مشكلة.

    وأنصحك بقراءة النقاش على السؤال التالي.

     

     بالنسبة لي الجواب بدأ بعد (ولكن) شكرا جدا على الجواب الجميل

  3. انا اتعلم البرمجة اي وقت استطيع في اليوم وتركت اغلب النشاطات الاجتماعية التي اقوم بها بعض الاشخاص يقولون لي ان هذا سئ ولكن لا اعرف ماذا افعل اليوم استيقضت من النوف في منتصف الليل وانا في الفراش احاول حل مشكلة برمجية في عقلي لساعة كاملة لا استطيع ايقاف التفكير فيها والنوم ولكن اشعر اني سعيد بذلك نوعا ما (اقصد تعلم البرمجة لساعات طويلة في اليوم وليس التفكير اثناء النوم) احب ان اكون مشغولا دائما اكره ان يكون لي وقت فراغ واريد تعلم البرمجة بأسرع وقت. ماذا تنصحوني هل علي ان اقلل ام استمر

    • أعجبني 1
  4. شفت فيديو يقول لازم لما اتعلم برمجة مثلا الfunction في js لازم اني اضل استخدمها لمدة اسبوع كامل وشفت فيديوهات تقول لازم تهتم بالكورسات فقط في البداية(اي اول كم فيديو) وبعدها تطبق مشاريع والاشياء الي نسيتها تبحث عنها والاشياء الجديدة نفس الشئ تبحث عنها لان بهذه الطريقة سوف تحفض فقط الاشياء التي تستخدمها

    ايهم افضل برأيكم

    • أعجبني 1
  5. بتاريخ 7 دقائق مضت قال عمر قره محمد:

     

    ولكن في حالات كثيرة قد يتم اعطاء بعض مهام الـ designer للـ frontend developer، ويجب على الـ frontend developer أن يمتلك بعض المهارات في التصميم حتى وإن لم يكن سيعمل كـ designer.

     

    ما هي هذه المهارات

    • أعجبني 1
  6. بتاريخ On 25‏/2‏/2023 at 17:28 قال Mustafa Suleiman:

     

    بتاريخ On 26‏/2‏/2023 at 09:47 قال عمر قره محمد:

    يمكنك فعل ذلك كالتالي :

    1. قم بإنشاء مجلد جديد من اجل المشروع وليكن اسمه sqlite وقم بفتح المجلد باستخدام vs code.
    2. بعد ذلك قم بكتابة الأمر :
      git init -y
       

      من اجل انشاء مشروع node جديد وبعد ذلك قم بتنزيل الحزم الضرورية :

      npm install express body-parser sqlite3
       
    3. نقوم بعد ذلك بإنشاء مجلد جديد داخل المجلد sqlite ونسيمه public وهو الذي سيحتوي على ملف الـ html الخاص بنا.

    4. نقوم بإنشاء ملف index.js وهو الذي سيحتوي الكود الخاص بالخادم كالتالي :
       

      // استدعاء ملفات الخادم
      var express = require("express")
      var app = express()
      const path = require("path")
      
      // منفذ الخادم
      var HTTP_PORT = 3000
      // تشغيل الخادم
      app.listen(HTTP_PORT, () => {
        console.log("Server running on port %PORT%".replace("%PORT%", HTTP_PORT))
      });
      
      // متاحاً public اعداد الخادم لكي يجعل المجلد 
      app.use(express.static(path.join(__dirname, 'public')))
      
      // ****************************************
      // الكود الخاص بقاعدة البيانات
      // ****************************************
      
      // استدعاء ملفات قاعدة البيانات
      var sqlite3 = require('sqlite3').verbose()
      
      // مسار قاعدة البيانات
      const DB_SOURCE = "db.sqlite"
      // انشاء قاعدة البيانات
      let db = new sqlite3.Database(DB_SOURCE, (err) => {
        if (err) {
          // في حال فشلت العملية
          console.error(err.message)
          throw err
        } else {
          console.log('تم الاتصال بقاعدة البيانات بنجاح')
          db.run(`CREATE TABLE users (
      id INTEGER PRIMARY KEY AUTOINCREMENT,
      name text, 
      email text UNIQUE, 
      password text, 
      CONSTRAINT email_unique UNIQUE (email)
      )`,
                 (err) => {
            if (err) {
              console.log("الحقل منشئ بالفعل");
            } else {
              console.log("تم انشاء الحقل بنجاح");
            }
          });
        }
      });
      
      // استدعاء ملفات مفسر الطلبات
      var bodyParser = require('body-parser')
      // application/x-www-form-urlencoded من اجل قبول الطلبات من النوع 
      app.use(bodyParser.urlencoded({ extended: false }))
      // application/json من اجل قبول الطلبات من النوع 
      app.use(bodyParser.json())
      
      // المسار الخاص بحفظ مستخدم جديد
      app.post("/users", (req, res, next) => {
        // احضار البيانات من الطلب
        const { name, email, password } = req.body;
        // اضافة البيانات إلى قاعدة البيانات	
        db.run('INSERT INTO users (name, email, password) VALUES (?,?,?)', [name, email, password], (error, result) => {
          if (error) {
            res.send("مشكلة في حفظ البيانات على الخادم")
            console.log("مشكلة في حفظ البيانات على الخادم\nرسالة المشكلة :\n", error);
          } else res.send("تم حفظ المستخدم بنجاح")
        })
      
      });
      
      // المسار الخاص بإحضار البيانات
      app.get("/users", (req, res, next) => {
        // متغير فارغ فلنسا بحاجة لإضافة خواص في هذا المثال
        var params = [];
        // احضار المستخدمين من قاعدة البيانات
        db.all("select * from users", params, (error, rows) => {
          if (error) {
            res.send("مشكلة في احضار البيانات من الخادم")
            console.log("مشكلة في احضار البيانات من الخادم\nرسالة المشكلة :\n", error);
          } else
            res.json(rows)
        });
      });
      
      // الاستجابة الافتراضية
      app.use(function (req, res) {
        res.status(404);
      });
       


       

    5. ثم نقوم بإنشاء ملف index.html داخل مجلد الـ public ونكتب فيه الكود التالي :
       

      <!DOCTYPE html>
      <html lang="en">
      
        <head>
          <meta charset="UTF-8">
          <meta http-equiv="X-UA-Compatible" content="IE=edge">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>example</title>
        </head>
      
        <body>
          <form onsubmit="handleSubmit(event)">
            <div><label for="name">ادخل اسم المستخدم</label>
              <input type="text" id="name" placeholder="ادخل اسم المستخدم">
            </div>
            <div><label for="email">ادخل البريد الالكتروني</label>
              <input type="email" id="email" placeholder="ادخل البريد الالكتروني">
            </div>
            <div><label for="password">ادخل كلمة السر</label>
              <input type="password" id="password" placeholder="ادخل كلمة السر">
            </div>
            <button type="submit">تسجيل</button>
          </form>
          <!-- رابط المستخدمين المسجلين -->
          <a href="/users">الاطلاع على المستخدمين المسجلين</a>
          <script>
            // الوظيفة الخاصة بإرسال البيانات إلى الخادم
            function handleSubmit(e) {
              // احضار القيم الخاصة بالنموذج
              const name = document.getElementById("name").value;
              const email = document.getElementById("email").value;
              const password = document.getElementById("password").value;
              // الغاء التصرف الافتراضي للنموذج
              e.preventDefault()
              // إرسال الطلب إلى الخادم
              fetch("/users", {
                // نوع الطلب
                method: "POST",
                // اعداد نوع البيانات والذي يتم إرساله في رأس الطلب
                headers: {
                  "Content-Type": "application/json",
                  // 'Content-Type': 'application/x-www-form-urlencoded',
                },
                // حفن البيانات في جسم الطلب
                body: JSON.stringify({
                  name,
                  email,
                  password
                }),
              }).then(result => console.log(result))// طباعة الاستجابة التي سنحصل عليها
                .catch(error => console.log(error)) // طباعة الاخطاء في حال ورودها
            }
          </script>
        </body>
      
      </html>
       

       

    ملفات المشروع بالكامل

    sqlLite.zip 6.6 MB · 0 تنزيلات

    هل تعرف اي فيديو يشرح ذلك حتى لو بالانجليزية

  7. هل يجب استخدام الخوارزميات والمخططات البيانية لحل المشاكل 

    حيث اني اشعر اني استطيع حل المشكلة بمجرد ان ابدأ بحلها واخطأ واصيب وتحل واتكاسل عن رسم المخطط البياني والخوارزمية هل هي ضرورية في العمل ام اختيارية

    • أعجبني 2
  8. بتاريخ 9 دقائق مضت قال محمد أبو عواد:

    هل هذا السؤال له علاقة بإحدى الدورات؟ اذا كان كذلك ارجو منك نشره أسفل الدرس الخاص به وسوف يتم اخفاء هذا السؤال
    اذا لم يكن له علاقة باحدى الدورات ارجو منك الرد بلا لكي نجيبك هنا
     

    هو عن مسار الخوارزميات وبنى المعطيات لكن اعتقد انه سؤال برمجي عام

    • أعجبني 1
×
×
  • أضف...