-
المساهمات
1158 -
تاريخ الانضمام
-
تاريخ آخر زيارة
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو عبد الوهاب بومعراف
-
طريقة المتابعة مع دروس الدورة تختلف من طالب إلى آخر، لكن العامل المشترك كله هو القدرة على الصبر والاجتهاد المستمر، بخصوص التمارين يمكنك إيجادها في نهاية كل درس أو مسار يقوم المدرب بتقديمها للطلبة بغرض الوصول للحل من تلقاء أنفسهم وتفكيرهم الخالص، من خلال اعتماد مهارات التفكير واستغلال ما تعلموه نظريا، كما أنّ المشاريع الموجودة في المسارات بحدّ ذاتها يمكن اعتبارها تمارين ومشاريع يمكن للطالب أن يبدع فيها فبعدما ينتهي الدرس وتنتهي المتابعة مع المدرب، الطالب المبدع والمبرمج الجيد هو الذي يستخلص من الدروس ويبدع في تلك المشاريع بأسلوبه الخاص، اطلع على المزيد من النصائح من هنا:
-
نظريا الأمر ممكن، لكن هناك عدة عوامل يجب مراعاتها لضمان أداء جيد وحماية البيانات، فالشرط المهم هنا هو أن تكون البنية التحتية جاهزة لذلك، فمن بين الحلول الشائعة والمعمول بها، هي اختيار خطة استضافة مناسبة بحيث تتوفر على الموارد الكافية لاستقبال عدد كبير من الطلبات إضافة إلى توزيع الحمل فإذا كان المتوقع أن يكون الضغط على الموقع مرتفعا جدا، يمكن استخدام تقنيات توزيع الحمل مثل Load Balancing. يمكنك الاطلاع على ذلك المفهوم من خلال هذه المقالة:
-
لتطبيق LabelEncoder على البيانات سنحتاج إلى استخدام مكتبة pandas لتحميل البيانات ومكتبة scikit-learn لتطبيق التشفير هذا مثال للتوضيح فقط: import pandas as pd from sklearn.preprocessing import LabelEncoder file_path = 'diabetes_prediction_dataset.csv' data = pd.read_csv(file_path) هنا قمنا باستدعاء المكتبات اللازمة للعمل وقمنا بتحميل البيانات من ملف CSV. print(data.head()) بعدها نقوم باستظهار البيانات وقراءتها من خلال الدالة print. columns_to_encode = ['Gender', 'Outcome'] label_encoders = {} for column in columns_to_encode: le = LabelEncoder() data[column] = le.fit_transform(data[column]) label_encoders[column] = le print(data.head()) encoded_file_path = 'encoded_diabetes_prediction_dataset.csv' data.to_csv(encoded_file_path, index=False) بعدها نقوم باستعراض أول 5 صفوف من البيانات لتحديد الأعمدة التي تحتاج إلى تشفير ونقوم بتطبيق LabelEncoder على الأعمدة المختارة ثم استعراض البيانات بعد التشفير وحفظها ضمن ملف.
- 2 اجابة
-
- 1
-
-
افتح ملف .htaccess في المجلد الرئيسي لموقعك وأضف الكود التالي: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([a-zA-Z0-9_-]+)$ $1.php [L] هذا الكود يقوم بإعادة كتابة أي رابط بدون امتداد بحيث يتم توجيهه إلى الملف .php المقابل، فمثلا إذا كان لديك ملف about.php، يمكنك الوصول إليه عبر الرابط about فقط.
- 3 اجابة
-
- 1
-
-
نعم يمكنك استخدام FastAPI لجعل نموذج تعلم الآلة الخاص بك تفاعليا سواء كتطبيق ويب، أو تطبيق موبايل، أو حتى تطبيق سطح المكتب. يمكنك بناء API للتفاعل مع نموذج تعلم الآلة الخاص بك، و هذا عن طريق إنشاء نهايات لإرسال واستلام البيانات كإرسال بيانات للنموذج وتلقي التوقعات.
- 4 اجابة
-
- 1
-
-
هي مكتبة لبناء واجهات برمجة التطبيقات أو API، و تتميز بأنها سريعة وسهلة الاستخدام وتعتمد على كتابة التعليمات البرمجية بطريقة حديثة، من أهم مميزاتها الأداء العالي فهي تستخدم محرك Starlette وUvicorn، مما يجعلها سريعة جدا وقابلة للتوسعة، كما توفر تكاملا ممتازا مع Swagger وRedoc، مما يسهل عملية توثيق النهايات بشكل تلقائي وتفاعلي، ويسهل اختبارها وفهمها، و تدعم المكتبة استخدام WebSockets وGraphQL، مما يتيح بناء تطبيقات تعتمد على هذه التقنيات بسهولة. يمكنك الإطلاع على هذه المساهمة لتفهم أكثر :
- 4 اجابة
-
- 1
-
-
لا، فبطبيعة الحال فإن استخدام Keras لا يغني عن تعلم TensorFlow بشكل كامل. بالرغم من أن Keras هي مكتبة واجهة برمجة تطبيقات عالية المستوى ومبنية على TensorFlow إلا أنه لا يزال هناك العديد من المواقف التي قد تحتاج فيها إلى فهم TensorFlow بشكل مباشر، بشكل عام، يعد Keras نقطة انطلاق رائعة لتعلم التعلم العميق، ولكن من المهم أن تكون على دراية بحدوده. إذا كنت ترغب في أن تصبح خبيرا في التعلم العميق، فستحتاج في النهاية إلى تعلم TensorFlow لا محالة، يمكنك مراجعة هذه المصادر للفائدة:
- 7 اجابة
-
- 1
-
-
الأمر بسيط، لكنه يحتاج إلى إلمام بالتقنيات واللغات المستخدمة في كل من الفرونت أند والباكند، فأولا يجب عليك أن تختار لغة أو إطار عمل معين لتنطلق في البرمجة به مثلا لنفترض أنك ستعمل بال NodeJs هنا ولتحقيق عملية الدمج والربط سيتوجب عليك القيام بإنشاء API لربط واجهة المستخدم الأمامية بالواجهة الخلفية التي أنشأتها بعدها تأتي مرحلة نشره على خادم ويب ثم تقوم بدمجهما باستخدام مكتبات جافا سكريبت ومعالجة الاستجابات وتأمين الاتصال. في حالة ما كان هنالك فريق يعمل معك، فسيتوجب عليك وضع توثيق لما تعمل عليه كي يستطيع العمل من بعدك بأفضل طريقة ممكنة وألا يتوقف العمل، ففي أغلب المشاريع يفتقر المبتدؤون إلى مهارة توثيق أكوادهم، وعدم كتابتها بشكل نظيف ممّا يعيق عملية فهمها ويصعّب من مهمّة ربط الفرونت أند بالباكند. إن رغبت في المزيد من الشروحات ستجدها من هنا:
-
لا، كثرتها لا تعني أنها ستؤثر على الموقع خاصتك، لذا فاقتراحك في محلّه، أما بالنسبة لسؤالك الثاني فما دام الموقع يعمل بشكل جيد على الـ localhost، فالأكواد الغير مرتبة داخل الملفات قد تؤثر على عدة جوانب عند رفعه على استضافة مدفوعة، من ناحية صيانة الكود بالدرجة الأولى فالأكواد غير المرتبة قد تجعل صيانة الموقع وتطويره أكثر صعوبة، ويصبح من الصعب تتبع الأخطاء أو إجراء تحسينات في المستقبل لكن من ناحية الأداء فكلاّ لأنه ليس لها دخل مباشر في تنفيذ الكود ما دام ليس هنالك أخطاء، لكن من المهم مراجعتها وتدقيقها خاصة إذا كان هناك تكرار غير ضروري أو أكواد غير مستخدمة ولم يتم تعليقها أو حذفها، من ناحية أخرى قد تزيد من احتمالية وجود ثغرات أمان لأن الأخطاء قد تكون غير ملحوظة لهذا أنصح بشدة بترتيب الأكواد وتنسيقها، فمثلا في حالة ما إذا كنت تعمل ضمن فريق ما، فإن الأكواد غير المرتبة قد تجعل التعاون أكثر تعقيدا وتؤدي إلى مشاكل في التنسيق بين أعضاء الفريق لذا من الأفضل دائما ترتيب الأكواد وتنظيفها قبل رفعها على الاستضافة لضمان أداء أفضل وسهولة في الصيانة.
- 12 اجابة
-
- 1
-
-
يجب عليك أولا استخراج جميع الصور والعناصر البصرية المستخدمة في التصميم بعدها تنشئ ملف HTML جديد باستخدام محرر نصوص وإضافة الهيكل الأساسي للصفحة باستخدام عناصر HTML مثل <header> لرأس الصفحة، <nav> للقائمة الجانبية، <main> للمحتوى، و<footer> للفوترـ ثم تقوم بإضافة تنسيقات CSS لتحديد تخطيط العناصر وتنظيمها باستخدام تقنيات مثل Flexbox أو Grid. أخيرا، تقوم بدمج الصور والعناصر البصرية في الصفحة باستخدام علامات HTML المناسبة وتنسيقها بواسطة CSS لتتناسب مع التصميم الأصلي. بالنسبة لك كمصمم قد لا تكون ملمّا جيدا بهذه التقنيات، لذا عليك إما تعلمها وإتقانها أو الاستعانة بمبرمج متمكن وملمّ بلغات البرمجة وتطوير الويب.
-
خاصية التحميل غير متاحة على منصة الأكاديمية حفاظا على عامل الأمان وسرقة المحتوى المعروض، ضمانا للعدل. بما أن الشبكة لديك ضعيفة فربما ذلك هو السبب وراء توقف الفيديوهات لديك وليس الأمر راجعا إلى توقف السيرفيرات أو بطئها فهي تعمل بشكل جيد، أنصحك بترك الفيديو متوقفا بشكل مؤقت ريثما يتم تحميله في المتصفح ثم مشاهدته كاملا بعد ذلك. بما أنت النت ضعيف لا تحاولي وضع نوعية وجودة الشاشة في أقصى قيمة.
- 5 اجابة
-
- 1
-
-
الإجراء عادي فلا داعي للقلق بخصوص ذلك، فحاليا يتمّ مراجعة مشاريعك الواحد تلو الآخر، وسيتم الرد عليك ريثما تنتهي هذه المرحلة، فمثلا في حالة ما كان هنالك نقص في أحد المشاريع أو إجراء ينبغي تعديله فسيتم التواصل معك لحلّه في أقرب وقت تحضيرا لك لبداية الاختبار، فهي مسألة وقت فقط، لذا اهتمّ بالتركيز للامتحان لتكون في أحسن حال عند اجتيازه.
-
إضافة هذه الميزة تتطلب عملا متكاملا من عدة نواحي، فلو نظرنا إلى لوحة التحكم فيجب أن تنشئ عليها واجهة لإدخال سعر الصرف عليها لتسمح لك بإدخال سعر الصرف مقابل عملتك المحلية، وهذا الأخير يجب أن يتم تخزينه في قاعدة بيانات Firebase Realtime Database أو Firestore فعند إدخال سعر الصرف الجديد في لوحة التحكم، يتم تحديث القيمة المخزنة في Firebase. وعند تغيير سعر الصرف في قاعدة البيانات، يجب أن يتم تحديث أسعار المنتجات تلقائيا. يمكنك استخدام Firebase Cloud Functions للقيام بذلك وسيفي بالغرض.
-
قد تحتاج إلى إضافة رؤوس سياسة أمان المحتوى CSP إلى طلباتك لتحديد ما يقبله تطبيقك وما لا يقبله، يمكنك إنشاء ميدل وير يضيف الرؤوس إلى كل طلب. على سبيل المثال، إليك تنفيذ بسيط لما أعنيه: php artisan make:middleware SecurityHeaders وبالنسبة للدالة handle، أعد كتابتها لإضافة ما تحتاجه، ثم مرر الاستجابة: public function handle(Request $request, Closure $next) { $response = $next($request); $cspValues = [ "base-uri 'self'", "connect-src 'self'", "default-src 'self'", "img-src 'self' data:", "media-src 'self'", "object-src 'none'", "script-src 'self'", "style-src 'self'", "font-src 'self'" ]; if (app()->isProduction()) { $response->headers->set('Content-Security-Policy', implode(";", $cspValues)); } return $response; } أخيراً، أضفه في ملف المسارات الخاص بك للمسار (أو المسارات) المعنية بالطريقة التي تستخدمها لأي ميدل وير آخر، على سبيل المثال: Route::middleware([SecurityHeaders::class])->group(function () { // إضافة المسارات });
- 2 اجابة
-
- 1
-
-
هذا الأمر ممكن ومعمول به، يمكنك البدء بتسجيل الدخول إلى حسابك على منصة سلة واالانتقال إلى قسم "المنتجات"، ثم قم بتصدير المنتجات إلى ملف CSV بنفس الأمر قم بتسجيل الدخول إلى لوحة تحكم WordPress مع تثبيت وتفعيل WooCommerce وبعد الانتقال إلى WooCommerce، ثم إلى "المنتجات"، وبعدما تختار خانة "استيراد" قم بتحديد ملف CSV الذي تم تصديره من سلة واتبع التعليمات لاستيراد المنتجات بالنسبة للحفاظ على نفس الروابط، يمكنك تثبيت إضافة "Permalink Manager Lite" من لوحة التحكم في WordPress وبعد التثبيت، انتقل إلى "Permalink Manager" في لوحة التحكم واختر "URI Editor"، ثم خصص الروابط لكل منتج لتتطابق مع الروابط الأصلية في منصة سلة قد تواجهك مشكلة شائعة فإذا لم تتمكن من مطابقة الروابط تماما، استخدم إضافة "Redirection" لإعداد عمليات إعادة التوجيه 301 من الروابط القديمة إلى الجديدة لضمان عدم فقدان أي زيارات.
-
لاحظ أنك ستجد أسفل فيديو كل درس في نهاية الصفحة صندوقا للتعليقات، أرجو منك طرح الأسئلة المتعلقة بالدورات هناك وليس هنا في قسم الأسئلة البرمجية،وهذا لنساعدك بالشكل المناسب.
-
ليس من الضروري فهم جميع المواضيع الموجودة في موسوعة حاسوب أو أي مرجع آخر من البداية إلى النهاية فالعديد من المفاهيم سيتم التطرق إليها بشكل طبيعي خلال العمل على المشاريع، لكني أنصح بالاهتمام أكثر والالمام بالأساسيات ثم ستتقنها فيما بعد عند العمل على المشاريع، كما أرجو أن تقوم بإرفاق الأسئلة والاستفسارات المتعلقة بكل درس في صندوق التعليقات أسفل كل درس.
- 6 اجابة
-
- 1
-
-
أجل، يمكنك ذلك من خلال إنشاء نموذج HTML يحتوي على حقل select والذي سيتيح للمستخدم اختيار الجنس، بالإضافة إلى حقول أخرى مطلوبة، وزر إرسال يرسل البيانات إلى ملف PHP لمعالجتها وسأرفق أمثلة عن كل خطوة: <form action="process_form.php" method="post"> <!-- حقول أخرى هنا مثل الاسم والبريد الإلكتروني --> <label for="gender">الجنس:</label> <select name="gender" id="gender"> <option value="male">ذكر</option> <option value="female">أنثى</option> </select> <input type="submit" value="إرسال"> </form> الخطوة التي تلي ذلك وهي معالجة البيانات في ملف PHP في هذا الملف، نقوم بمعالجة البيانات المرسلة من النموذج وتحديد قيمة مختلفة لحقل specified_value بناء على اختيار الجنس، ثم إدخال البيانات في قاعدة البيانات هكذا: <?php // الاتصال بقاعدة البيانات $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database_name"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("فشل الاتصال: " . $conn->connect_error); } // الحصول على بيانات النموذج $gender = $_POST['gender']; $specified_value = 0; // تحديد القيمة بناءً على الجنس if ($gender == "male") { $specified_value = 10; } else if ($gender == "female") { $specified_value = 5; } // إدخال البيانات في قاعدة البيانات $sql = "INSERT INTO table_name (gender, specified_value) VALUES ('$gender', $specified_value)"; if ($conn->query($sql) === TRUE) { echo "تم إدخال البيانات بنجاح"; } else { echo "خطأ: " . $sql . "<br>" . $conn->error; } $conn->close(); ?> هنا نسترجع البيانات من قاعدة البيانات ونعرضها في جدول HTML ونقوم باسترجاع الجنس والقيمة المحددة وعرضها في الصفوف: <?php // الاتصال بقاعدة البيانات $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "database_name"; $conn = new mysqli($servername, $username, $password, $dbname); if ($conn->connect_error) { die("فشل الاتصال: " . $conn->connect_error); } $sql = "SELECT * FROM table_name"; $result = $conn->query($sql); if ($result->num_rows > 0) { echo "<table><tr><th>الجنس</th><th>القيمة المحددة</th></tr>"; while($row = $result->fetch_assoc()) { echo "<tr><td>" . $row["gender"] . "</td><td>" . $row["specified_value"] . "</td></tr>"; } echo "</table>"; } else { echo "لا توجد نتائج"; } $conn->close(); ?>
-
من فضلك نحن عادة لا نجيب على أسئلة الدورات هنا فهذا قسم الأسئلة العامة، ستجد أسفل الدرس في نهاية الصفحة صندوق للتعليقات من فضلك قم بوضع سؤالك أسفل الدرس هناك وذلك لمساعدتك بشكل أفضل وجيد.
-
نظام الدعم الآلي SVM (Support Vector Machine) هو تقنية تعلم آلي تُستخدم للتصنيف والتنبؤ. يعتمد على إيجاد الفاصل الأمثل الذي يفصل بين مجموعات البيانات المختلفة بأكبر هامش. يمكن استخدامه في التصنيف الثنائي والتعرف على الأنماط، وله تطبيقات مثل التعرف على النصوص والصور والتنبؤ بالسوق. يتميز SVM بفعاليته في المساحات العالية الأبعاد واستخدامه لمجموعة فرعية من نقاط التدريب، لكنه يمكن أن يكون بطيئًا على مجموعات البيانات الكبيرة وقد يتطلب اختيار دالة كيرنية مناسبة. في هذه المقالة ستتعرف أكثر على هذا النظام:
- 8 اجابة
-
- 1
-
-
وعليكم السلام، حينما نقرأ رسالة الخطأ "could not find driver" فنجد أنها تشير إلى أن Laravel غير قادر على العثور على محرك قاعدة البيانات sqlite وهو مطلوب للاتصال بقاعدة البيانات. لحل هذه المشكلة قم بتثبيت امتداد pdo_sqlite. فإذا كنت تستخدم XAMPP أو Laragon أو أي بيئة سيرفر محلية مشابهة، تأكد من أن امتداد pdo_sqlite مفعل في إعدادات PHP وافتح ملف php.ini وابحث عن السطر الذي يحتوي على: ;extension=pdo_sqlite وقم بإزالة التعليق (إزالة الـ ; في بداية السطر). وتأكد من وجود السطر التالي أيضا بدون تعليق: extension=sqlite3 بعد تعديل ملف php.ini، أعد تشغيل سيرفر Apache أو Nginx لتطبيق التغييرات كما تأكد من أنك قمت بتثبيت حزم Composer اللازمة. في مجلد المشروع من خلال تشغيل الأوامر التالية: composer install composer update تأكد من أن إعدادات قاعدة البيانات في ملف .env صحيحة. يجب أن تكون الإعدادات كالتالي عند استخدام SQLite: DB_CONNECTION=sqlite DB_DATABASE=/path_to_your_database/database.sqlite
- 7 اجابة
-
- 1
-
-
يمكنك تثبيت النسختين من خلال اتباع هاته الخطوات، النسخة الواحدة بنمط Desktop Class والثانية بنمط Server Class، أولا قم بتحميل النسختين من موقع Oracle الرسمي، ثم أنشئ مجلدين منفصلين على جهازك لكل واحدة منهما، مثل `C:\Oracle\Desktop` و`C:\Oracle\Server`. اتبع هذه الخطوات لتثبيت النسخة الأولى (Desktop Class): افتح برنامج التثبيت. اختر 'C:\Oracle\Desktop' كمجلد التثبيت. استمر في عملية التثبيت واتبع التعليمات. أعط النسخة الأولى اسم SID فريد، مثل 'ORCL1'. بالنسبة لتثبيت النسخة الثانية (Server Class) كذلك قم: بفتح برنامج التثبيت الثاني. واختر `C:\Oracle\Server` كمجلد التثبيت. ثم استمر في عملية التثبيت واتبع التعليمات. وأعط النسخة الثانية اسم SID فريد، مثل 'ORCL2'. كما لا تنسى تعديل المتغيرات البيئية من خلال فتح إعدادات النظام وإضافة مساري التثبيت إلى متغير PATH وتأكد من أن إعداد متغيرات 'ORACLE_HOME' بشكل صحيح لكل نسخة. تحديث ملفات الشبكة أمر ضروري أيضا من خلال فتح ملفات `tnsnames.ora` و`listener.ora` وإضافة معلومات الاتصال لكل نسخة بحيث يتمكن النظام من التعرف على كلا المثيلين. يمكن استخدام أدوات مثل SQL*Plus للاتصال بكل نسخة على حدة وشغل بعض الاستعلامات البسيطة للتأكد من أن كل نسخة تعمل بشكل صحيح.
-
لإتقان الأساسيات في البرمجة، يجب عليك أولا اختيار لغة برمجة واحدة للتركيز عليها، مثل Python أو JavaScript، لأنهما تعتبران من أسهل اللغات للمبتدئين، ثم تبدأ بتعلم المفاهيم الأساسية مثل المتغيرات (variables)، الحلقات (loops)، الشروط (conditionals)، والدوال (functions) وهذا الأمر سيساعدك على بناء أساس قوي. يمكنك أن تهمّ بقراءة وفهم أمثلة من الأكواد البرمجية المكتوبة بلغة البرمجة التي اخترتها، ثم كتابة أكواد برمجية مثل البرامج التي تنفذ عمليات حسابية بسيطة أو تلك التي تتعامل مع النصوص والبيانات وحاول دائما حل المشاكل البرمجية البسيطة في البداية، مثل تلك التي تتطلب منك حساب الأعداد الفردية أو الزوجية أو التحقق من صلاحية بيانات معينة. تذكر دائما، أنه من الضروري ممارسة البرمجة بانتظام من خلال أن تجعل لنفسك تحديات يومية أو أسبوعية مع تصفح وقراءة الأكواد المفتوحة المصدر على منصات مثل GitHub فيمكن تعطيك فكرة عن كيفية هيكلة البرامج الكبيرة وكتابة كود نظيف وفعال.
-
حجم البيانات بلا شك له أهمية كبيرة، ولا يمكن حصرها، لكن مع ذلك صحيح، يمكن أن يؤثر وجود كمية كبيرة من البيانات سلبا على نماذج تعلم الآلة بسبب زيادة التعقيد الحسابي، وطول وقت التدريب مع صعوبة إدارة جودة البيانات، وتعقيد النماذج التي تعمل عليها، يمكنك تصفح هذه المقالة:
- 4 اجابة
-
- 1
-