-
المساهمات
3124 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
29
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو محمد عاطف17
-
بخصوص إضافة الدورات هنا ، فالأمر يعتمد على عدّة عوامل منها مدى الإحتياج لها والطلب عليها وهل محتوى الدورة مناسب لسوق العمل أم الطلب عليه ضعيف وهكذا، لذا الأمر راجع لإدارةالأكاديمية في تلك النقطة. ويمكنك قراءة الأجوبة التالية حيث ستضع لك خارطة طريق لمجال الأمن السيراني . وأيضا سأوصل إقتراحك إلى إدارة الأكاديمية لتوفير هذه الدورة.
-
ستجد في تفاصيل دورة php انه يذكر انك لا يجب ان تكون لديك اى اسس برمجية فقد تم مراعاة ذلك في الدورة وهى تبدا من الصفر . اما بالنسبة لتطوير الويب فتوجد عدة لغات تساعدك في تطوير مواقع وتطبيقات الويب منها python و javascript و ruby وphp ويمكنك اختيار اللغه التى تريد تعلمها والعمل بها وليس عدة لغات معا لان ذلك سيسبب لك التشتت ولن تستطيع التمكن من عدة لغات معا لذلك يجب التخصص في لغه واحدة في بداية مسارك التعليمى . اما بالنسبة للدورة الخاص ببايثون فان الدورة تحتوى على اطار عمل flask و django الذان يساعدانك على تطوير وانشاء تطبيقات الويب لذلك اذا كنت تريد تطوير تطبيقات الويب ببايثون فهذه الدورة مناسبة لك. ويمكنك قراءة الاجابات التالية حتي تعرف اكثر عن محتوى الدورات و تستطيع معرفة الفرق بين تطوير الواجهات الامامية والواجهات الخلفية.
-
وعليكم السلام ورحمة الله وبركاته . أولا إن كثرة المكتبات ليس بالشئ السئ حيث إن المكتبات هدفها الأساسي هو حل مشاكل أو القيام بأشياء معينة يستخدمها العديد من المبرمجين ولذلك تم إنشاء تلك المكتبات لتوفير الوقت والجهد فبدلا من أن يقوم كل مبرمج في كل مرة ينشئ فيها مشروع بكتابة هذه الأكواد بنفسه . ولذلك مهارة المبرمج لا تقاس فقط بصعوبة اللغة التي يتعلمها بل تعتمد أيضا على فهمه للمفاهيم البرمجية الأساسية وقدرته على تطبيقها بشكل فعال. فمثلا يمكن أن يكون لدى مبرمج Python معرفة عميقة بتصميم الخوارزميات وهياكل البيانات ويمكنه بناء تطبيقات معقدة تتعامل مع كميات كبيرة من البيانات, و أيضا فإن بايثون تستخدم في العديد من الحقول مثل الذكاء الإصطناعي و تحليل البيانات و العديد من الحقول التي تتسم بالصعوبة وليست سهلة إطلاقا ولا يمكن لأى مبرمج العمل فيها .
- 6 اجابة
-
- 2
-
-
هنا في موقع الأكاديمية يتم شرح جميع الدروس باللغة العربية خيث لا يوجد أى شرط خاص باللغة الإنجليزية . وايضا يتوفر العديد من المدربين هنا لمساعدة أى طالب تواجهة أى مشكلة سواء في الشرح أو الأخطاء التي تواجه الطالب أثناء التعلم و هم جميعهم يتحدثون اللغة العربية لذلك لا يوجد أى قلق من عدم معرفة اللغة الإنجليزية . لكن يفضل تعلم اللغة الإنجليزية لأن ذلك سيفيدك بعد التخرج وفي العمل وأيضا في المصطلحات البرمجية والعمل على لغات البرمجة . لذلك يمكنك البدأ هنا في أى دروة تريد دون معرفة اللغة الإنجليزية ولكن مستقبلا سيتوجب عليك تعلمها .
-
هل يمكنك توضيح سؤالك أكثر ؟ ماذا تقصد بعدم معرفة اللغة الإنجليزية أتقصد في الدورات المقدمة هنا على الأكاديمية أم شئ أخر
-
وعليكم السلام ورحمة الله وبركاته . مرحبا محمد . نعتذر عن المشكلة التي تواجاهك حاليا . من المفترض حين الإشتراك فإن قسم دوراتى يظهر فوريا بعد الإشتراك ويمكنك الدخول ومشاهدة الدورة دون أى مشاكل . ولكن يبدوا أنه حدثت مشكلة لديك تمنع ظهور القسم لديك.لذلك الحل هو التواصل مع الدعم كما فعلت وسيتم الرد عليك في أسرع وقت إن شاء الله . لا تقلق من التأخير في الرد فسوف يتم حل المشكلة لديك إن شاء الله . إذا لم يتم الرد عليك بحلول نهاية اليوم الحالي من فضلك أخبرنى . شكرا لتفهمك وبالتوفيق إن شاء الله
-
وعليكم السلام ورحمة الله وبركاته . نعم صحيح إن الأخطاء هى ما ستعلمك أكثر من أى شئ . حيث في بداية مسيرتى وبداية التعلم حينما كنت أقع في خطأ ما فإنى أقوم بالبحث عنه وحينما أجد الإجابة فإنها تظل في ذاكرتى ومن الصعب أن أخطا نفس الخطأ مرة أخرى أو إذا تكرر معى فسأستطيع حله بسهوله . ولكن توجد بعض الأخطاءالتي من المستحيل أن تستطيع حلها بنفسك فبعد المحاولات الكثيرة التى من الممكن أن تستمر لأيام ستجد أنك لم تستطع حلها فهنا لا بئس في سؤال أى شخص أو حتى نحن المدربون هنا سعداء بحل أى مشكلة تواجه أى طالب. لذلك فإن هذا ليس تقصيرا منك بل هذا هو المسار الصحيح للتعلم حاول حل الأخطاء نفسك أولا وإذا وجدت صعوبة فلا تتردد في السؤال وحاول فهم لما حدثت المشكلة وفهم الحل الخاص بها . حيث إذا لم تقم بالمحاولة بنفسك فستستهل الأمور و إذا واجهتك أى مشكلة فلن تستطيع حلها حيث أول شئ ستقوم به هو سؤال أى شخص ولن تحاول حتى فهم الخطأ و الحل .
- 3 اجابة
-
- 1
-
مرحبا @Rafika Cha. إذا كن السؤال خاص بدرس من دروس الدورة فأرجوا مستقبلا أن يتم وضعه أسفل الدرس فى التعليقات حيث هنا هو القسم الخاص بالأسئلة العامة وحتى نستطيع مساعدتك بشكل أفضل . بالنسبة للسؤال الأول فإن المتغيرات variables تستخدم لحفظ بيانات بداخلها حتي يتم إستخدامها بعد ذلك في الكود . والمثال المرفق bored = ' '.join غير واضح قليلا حيث هنا لم يتم تعريف دالة بل هنا إستخدمنا الدالة join وهى دالة built in في بايثون حيث تستخدم تلك الدالة لدمج عناصر قائمة ما في سلسلة نصية واحدة مع وضع فاصل بينهما . names = ["Ahmed", "Mohamed", "ALI"] x = " ".join(names) print(x) # Ahmed Mohamed ALI كما في المثال السابق يوجد لدينا قائمة تحتوى على أسماء ونحن نريد وضع جميع تلك الأسماء في سلسلة نصية وطباعتها و قد قمنا بفصلهم بمسافة أى سيتم طباعة كل إسم وبعده مسافة وإذا أردنا مثلا فصلهم بأى شئ نقوم فقط بكتابته بين "" هكذا مثلا ",".join(names) وهنا إستخدما المتغير x لنقوم بحفظ تلك السلسلة النصيه فيه . أما بالنسبة لحلقات التكرار for و while فيتم إستخدامهم لتكرار جزء من الكود عدد من المرات . فمثلا كما في المثال السابق لو أردنا طباعة جميع عناصر القائمة ولكن كل إسم في سطر فنستيطع عمل ذلك بإستخدام حلقات التكرار . names = ["Ahmed", "Mohamed", "ALI"] for i in range(len(names)): print(i, names[i]) فهنا في المثال السابق قنا بإستخدام حلقة التكرار for لطباعة الأسماء التي بداخل القائمة . وهنا إستخدمنا المتغير i ليحتوى على رقم التكرار الحالي : ففي أول مرة سيتم التكرار فيها ستجدين أن ال i تساوى 0 و في المرة الثانية 1 وهكذا في كل مرة سيتم زيادة i و ذلك حتى نستطيع طباعة عناصر المصفوفة بالترتيب الخاص بها . names = ["Ahmed", "Mohamed", "ALI"] i = 0 while i < len(names): print(i, names[i]) i+=1 والمثال هذا أيضا يقوم بعمل نفس الكود السابق ولكنه بإستخدام حلقة while وهنا قمنا أولا بتعريف متغير i و أعطينا له قيمة 0 و ثم قمنا بإستخدام while و كتبنا شرط أن i لا يجب أن يكون أكبر من طول القائمة والآن بداخل حلقة التكرار نقوم بطباعة العنصر الحالي في القائمة ومن ثم زيادة ال i برقم 1 حتي نستطيع الوصول للعنصر التالي في القائمة . ويمكنك قراءة الدرسين التاليين في موسوعة حسوب لشرح أفضل لحلقات التكرار : for في بايثون while في بايثون
-
هناك العديد من البرامج التي تقدم وظائف مشابهة لـ VirtualBox في مجال إنشاء بيئات افتراضية. إليك بعض البرامج الشبيهة: VMware Workstation: هو أكثر البدائل شهرة ، وهو يوفر مجموعة كبيرة من الميزات لإنشاء وإدارة الآليات الافتراضية. VMware Player: نسخة أخف من VMware Workstation وتستخدم عادة للاستخدام الشخصي والتجريبي. Parallels Desktop: يعتبر هذا البرنامج مثاليًا لأجهزة Mac ويتيح تشغيل أنظمة تشغيل Windows و Linux بجانب macOS. Hyper-V: هو برنامج افتراضي مدمج في نظام التشغيل Windows الإصدارات Pro و Enterprise و Education ويوفر ميزات متقدمة لإدارة الآليات الافتراضية. تختلف ميزات كل برنامج وطريقة استخدامه، لذا يمكنك اختيار البرنامج الذي يلبي احتياجاتك الخاصة ويتناسب مع نظام التشغيل الذي تستخدمه.
-
نصيحتى هى أولا متابعة الدورة و تنفيذ التمارين التي يقوم المدرب بإعطائها ومحاولة حلها ومتابعة الحل بعد ذلك . وأيضا متابعة الدروس العملية حيث يتم تطبيق ما تم شرحه في الدورة فى تلك الدروس العلمية . أما المواقع التي توفر تدريبات فمعظم تلك المواقع تتطرق لتعليم ال problem solving (حل المشكلات) وهى مهارة مهمة جدا للمبرمجين ولا غنى هنا أبدا ولكنها من الممكن في بداية التعلم أن تصاب بالإحباط حين الدخول إلى تلك المواقع ولكن يمكنك الدخول إلى المستويات المبتدئة ولكنها لا تعتمد على لغه هو فقط يعطيك مشكلة و يريد حل لها بأى لغة وليس بايثون فقط, ومن أمثلة تلك المواقع : Hackerrank و LeetCode: هذه المواقع تقدم تحديات برمجية تمكنك من تطبيق المفاهيم المختلفة بما في ذلك الأساسيات و الدوال، وتقديم الحلول الخاصة بك لهذه التحديات ولكن يفضل الدخول في المستويات المبتدئة. PyBites: يوفر PyBites تحديات يومية وأسبوعية لتطوير مهاراتك في Python. codeforces : وهو من المواقع الشهيرة جدا التى تقوم بعمل مسابقات عالمية يوميا وإسبوعيا حيث تكون تلك المسابقات عبارة عن مشاكل ويجب حلها عن طريق البرمجة وتختلف صعوبة المسابقات من مسابقة إلى أخرى و أيضا يعطيك نقاط عند دخول كل مسابقة وحل المشاكل لتتابع تقيمك وسط العديد من المبرمجين حول العالم .
-
مرحبا محمود . لا يتوجب عليك أن يكون لديك حساب بالدولار فمن الممكن أن تقوم بالشراء بالجنيه المصرى وسيقوم البنك الخاص بك بتحويل الملبغ المراد دفعه بالدولار إلى جنيه بسعر البنك مع إضافة 10% من المبلغ عمولة تحويل . بعض بالنوك حاليا لا تعمل لديها بطاقة الخصم ( debit card) في المدفوعات بالعملة الأجنبية ولكن تتيح لك بطاقة الائتمان (Credit Card) . لذلك يمكنك التواصل مع البنك الخاص بك والسؤال عن إمكانية الشراء من الخارج بال debit card أم لا . وإذا كان لا يتيح يمكنك طلب بطاقة ائتمان ولكن لا أنصح بها لما لها من حرمانية . أو يمكنك الدفع عن طريق بايبال ويمكنك ربط بطاقة debit card بحساب باي بال ولكن تاكد من البنك الخاص بك من أنه يسمح بالربط بحساب باي بال . أيضا من الممكن أن تجعل شخص يشتري لك بطاقة هدية بقيمة الدورة التي تريدها ثم استخدامها وسيتم إضافة الرصيد الخاص بقيمة البطاقة لحسابك، وستجد تفاصيل عن ذلك هنا: شراء بطاقة هدية استخدام بطاقة الهدية
-
وعليكم السلام ورحمة الله وبركاته . إرسال الطلبات requests بواسطة axios بسيط ولكنه يعتمد على نوع البيانات التي تريد إرساله . فكما في المثال السابق ستقوم بإرسالها بصيغة json والطريقة كالتالي : const json = JSON.stringify({ home_page_position: "Header",show_in:"home" }); const res = await axios.post('https://alsouq.anevex.com/app/shop-api/advertisements', json); وهكذا سيتم إرسال الطلب . أما إذا أردت إرسالها ك form سنقوم بالتالي : let data = new FormData(); data.append("home_page_position", "Header"); data.append("show_in", "home"); const res = await axios.post('https://alsouq.anevex.com/app/shop-api/advertisements', data); وهكذا سيتم إرسالها كأنه تم الإرسال من form
- 8 اجابة
-
- 1
-
كل قالب يختلف عن الآخر في طريقة إنشاء هذه الخاصية . ولكن لنفترض أننا نريد إنشاء محتوى ال footer . لذلك سنقوم بإنشاء أولا جدول في قاعدة البيانات يحتوي على البيانات التي نريد تخزينها ل footer. مثلا جدول يسمى footer_items ويحتوي على الأعمدة التالية: id و footer. الآن في لوحة التحكم نضع textarea التي سيكتب المستخدم بيانات ال footer فيها هكذا مثلا : <form action="/footer/create" method="post"> <textarea name="footer" placeholder="footer items"></textarea> </form> والأن نقوم بإنشاء ملف الذى يقوم بإستقبال البيانات من ال form وحفظها في قاعدة البيانات كالتالي : $footer = $_POST['footer']; // إدخال البيانات في جدول footer_items $sql = "INSERT INTO footer_items (footer) VALUES ('$footer')"; والآن فى الواجهة الأمامية نقوم بإحضار البيانات من قاعدة البيانات وإظهارها فى الصفحة : <footer> <ul> <?php $sql = "SELECT * FROM footer_items"; $result = mysqli_query($conn, $sql); // تنفيذ الاستعلام // عرض النتائج while($row = mysqli_fetch_assoc($result)) { echo "<li>" . $row['footer'] . "</li>"; } ?> </ul> </footer>
- 4 اجابة
-
- 1
-
وعليكم السلام ورحمة الله وبركاته . توجد بعض القوالب التى تجعل معظم الموقع دايناميكيا وليس ثابتا . حيث ستجد أن بعض القوالب تجعل راس الصفحة header و ذيل الصفحة footer دايناميكيا بحيث يمكنك إضافة وتعديل وحذف محتواهما عن طريق لوحة التحكم . ومن لوحة التحكم يتم حفظ هذه العناصر في قاعدة البيانات و من ثم إسترجاع تلك العناصر من قاعدة البيانات وعرضها في الصفحة الأمامية للموقع. وبهذا ستجعلك تملك تحكم أكبر فى الموقع من حيث حذف و إضافة ما تريد . وأعتقد أن القالب الذى قمت بتحمليه يستخدم تلك الطريقة حيث أن row$ هو المتغير الذى يحوى القيمة من قاعدة البيانات و إذا ذهبت إلى لوحة التحكم من المؤكد أنك ستجد قيم لتعديل ال footer هناك والذى سيقوم بإظهار تلك العناصر فى الصفحة الأمامية لديك .
- 4 اجابة
-
- 1
-
إن أيقونة الإعدادات تشير إلى ملف يحتوى على إعدادات للمشروع . وبما أنك لم تق بتعديل إسم الملف وهو يحتوى على نقطة إذا فيبدو أنك قد قمت بحذف الإضافة الخاصة ب vs code التى تسمى Material Icon Theme . لذلك من فضلك تأكد هل الإضافة مثبته لديك ومفعلة أم لا . ثم قم بالضغط على set file icon theme و قم بإختيار الإضافة Material Icon Theme من الاختيارات التى سوف تظهر لك . . وقم بإعادة تشغيل vs code ستجد أن الأيقونات قد عادت كما هى .
- 3 اجابة
-
- 1
-
وعليكم السلام ورحمة الله وبركاته . لاحظ أن الملف الذى بجواره ايقونة تشبه الترس إن الأسم مختلف حيث بدلا من وضع نقطة (.) قمت بوضع علامة فاصلة (,) قبل كلمة env . وحيث أن الأيقونات تتغير على حسب نوع الإمتداد الخاص بالملف , وحيث أنك لم تضع إمتداد بما أن إمتداد الملف هو ما بعد النقطة ولا توجد لديك نقطة في إسم الملف لهذا ظهرت أيقونة الترس . لذلك يجب عليك تغير الإسم إلى env. حيث يتم وضعه نقطة وليس علامة الفاصلة .
- 3 اجابة
-
- 1
-
من فضلك قم بالتعليق أسفل الدرس الذى تريد الإستفسار عنه حيث هنا قسم الأسئلة العامة ولا نقوم بالإجابة على الأسئلة الخاصة بالدورات هنا . ستجد أسفل الدرس صندوق للتعليقات هناك.
-
يمكنك إستخدام الدالة sort لترتيب عناصر ال list في بايثون هكذا : ids = ["id1", "id100", "id4", "id34"] ids.sort() ويمكنك قراءة الدرس هذا على موسوعة حسوب. وستجد الفيديو الذى يشرح الدالة sort هنا : في أساسيات لغة بايثون Python ثم بنى المعطيات الخطية Data Structures ثم 01. القوائم Lists
-
إذا كنت تريد برمجة أداة مثل ذلك فإن هذا الأمر متقدم وليس بالسهل تنفيذه . يمكنك البحث على يوتيوب أو على الإنترنت عموما عن فكرة tokenizer و parser . حيث يقوم ال Tokenizer أولا بفصل الكلمات بناءا على القواعد التي تقدمها له حيث يقوم بتحليل سلسلة النص إلى وحدات صغيرة تسمى tokens. يمكن أن تكون هذه الوحدات الفرعية كلمات، أو رموز ترقيمية، أو علامات ترقيم، وما إلى ذلك. عملية التقسيم يمكن أن تعتمد على مجموعة متنوعة من القواعد، مثل الفراغات بين الكلمات، والعلامات الترقيمية كما في الفاصلة النهائية، وغيرها. أما جزء ال Parser هو المكون الذي يأخذ السلسلة المجزأة التي تم إنشاؤها من قبل الـ tokenizer ويقوم بتحليلها وتفسيرها بناءً على بنية قواعد محددة مسبقًا (syntax rules). حيث يقوم ببناء ال tokens كشجرة بناء (tree) . ومن ثم يمكنك تحويل تلك ال tree إلى الملف text الذى تريده وتقوم بوضع كل شئ في سطر منفصل. إذا كنت ممبتدأ في البرمجة فأنصحك أولا بمذاكرة ال data structure وخاصة ال trees و ال stacks و من ثم يمكنك البحث عن فكرة tokenizer و parser .
- 5 اجابة
-
- 1
-
من فضلك قم بإرسال ملفات المشروع لديك و إخبارى بالخطأ لديك أو ما الذى تريد تنفيذه ولا يعمل
-
لاحظ الخطأ هنا حيث هذا الكود سيقوم بتنفيذ التنسيق على العنصر ul الذى يوجد بداخل nav الذى يوجد بداخل navbra. الذى يوجد بداخل header . ولكن في الصورة السابقة لاحظ أن ul بداخل navbar. وليس nav . إذا الحل كالتالي : header .navbar nav { display: flex; justify-content: space-between; align-items: center; max-width: 1100px; margin: auto; } header .navbar ul { display: flex; justify-content: center; align-items: center; }
- 7 اجابة
-
- 1
-
نعم بالفعل توجد العديد من الدورات هنا التي بعد إجتيازها تؤهلك للعمل كمطور واجهات خلفية Back end . اولا دورة تطوير التطبيقات باستخدام لغة Python بعد الانتهاء من هذه الدورة يمكنك ان تصبح مطور برمجيات بلغة بايثون و backend devolper باطار عمل django وايضا تهيئك لمجال تحليل البيانات والذكاء الاصطناعى وتعلم الالة . وهذه الدورة اذا اردت ان تصبح مطور واجهات خلفية . ثانيا دورة تطوير التطبيقات باستخدام JavaScript بعد الانتهاء من هذه الدورة يمكنك ان تصبح مطور برمجيات بلغة جافاسكريبت وتمكنك من ان تصبح مطور واجهات خلفية MERN stack وايضا تمكنك من تطوير تطبيقات الهاتف ومن الممكن ان تستعملها لتصبح FULL STACK Developer ثالثا دورة تطوير تطبيقات الويب باستخدام لغة PHP بعد الانتهاء من هذه الدورة يمكنك ان تصبح مطور برمجيات بلغة php باطار عمل لارافيل و ووردبريس وهذه الدورة تؤهلك لتصبح مطور واجهات خلفية بواسطة php. رابعا دورة تطوير تطبيقات الويب باستخدام لغة Ruby عد الانتهاء من هذه الدورة يمكنك ان تصبح مطور برمجيات بلغة ruby وهذه الدورة تؤهلك لتصبح مطور واجهات خلفية. ويمكنك قراءة الأجوبة التالية لتحديد الدورة المناسبة لك .
- 2 اجابة
-
- 1
-
يفضل إرسال صورة للتنسيق الذى يظهر لديك وأيضا شيفرة html وما هو الذى تريد تحقيقه حتى نرى أين المشكلة .
- 7 اجابة
-
- 1
-
من الأفضل أولا فهم طريقة عمل ال api في لارافيل أو فقط الأساسيات اللازمة لإنشاء ال apis حتى تتمكن من إستكمال مشروعك . يمكنك إستخدام JTW في لارافيل أو Laravel Passport لتوفير طبقات الحماية والتفويض والمصادقة من خلال لارافيل . يمكنك قراءة هذا المقال عن Laravel Passport أو يمكنك البحث على يوتيوب عن شرح له . ويمكنك قراءة تلك الأجوبة حتى تتضح الرؤية لك أكثر عن كيفية الربط بين لارافيل Api و أى إطار عمل خاص بالواجهة الأمامية . ويمكنك إرسال ال token عن طريق ال session حيث يجب وضعه فى ال session وليس localStorage كما هنا . او يمكنك إضافته فى localStorage ولكن سيتوجب عليك في كل مرة ترسل طلب إلى الخادم أن تقوم بقراءته من localStorage وثم إرساله إلى لارافيل