مقدمة
إذا قمت بقراءة كل الدروس التي شرحناها في هذه الدورة و وصلت إلى هنا, فهذا يعني أنك أصبحت ماهراً في التعامل مع لغة بايثون.
الشيء الذي عليك البحث عنه الآن, هو كيف تبدأ باستخدام لغة بايثون في المشاريع البرمجية من أجل أن تستفيد منها مادياً.
إذا قمت بقراءة كل الدروس التي شرحناها في هذه الدورة و وصلت إلى هنا, فهذا يعني أنك أصبحت ماهراً في التعامل مع لغة بايثون.
الشيء الذي عليك البحث عنه الآن, هو كيف تبدأ باستخدام لغة بايثون في المشاريع البرمجية من أجل أن تستفيد منها مادياً.
في البداية, هناك مجالات عديدة يجب أن تتخصص بأحدها و ليس فيها كلها لأن هذا مستحيل.
أي لا تفكر أبداً بأن تتخصص في عدة مجالات في وقت واحد. لأنك إن حاولت ذلك فـأكد أنك في مرحلة ما ستيأس و تمل من شدة الضغط الذي سببته لنفسك.
إذاً, بعد أن تتعلم لغة بايثون, يمكنك إعتمادها في أحد المجالات التالية:
إنتبه, تخصصك في مجال واحد لا يعني أنك لا تستطيع تعلم غيره. الفكرة هنا هي أن تتخصص في مجال واحد في كل مرة.
فعلى سبيل المثال, إذا قررت البدء بتعلم تطوير تطبيقات للحاسوب. عندها يجب أن تقضي فترة في تعلم ذلك و من ثم يجب أن تحاول بناء عدة تطبيقات بنفسك حتى تجد نفسك مرتاحاُ في هذا المجال و لا تخاف من البدء بتطوير تطبيقات و الربح منها مادياً.
بعد أن تجد نفسك أصبحت محترفاً في مجال تطوير تطبيقات الحاسوب, عندها نحن ننصحك بالبدء بتعلم مجال آخر من أجل أن تزيد فرصك في العمل و الربح.
فمثلاً إذا قررت تعلم تطوير المواقع بعد ذلك, فأنت الآن أصبحت قادر على العمل في مجالين و ليس في مجال واحد.
إذا أردت الدخول في مجال تطوير المواقع, فعليك أولاً معرفة أين سيكون دور لغة بايثون في ذلك.
تطوير المواقع ينقسم لقسمين أساسيين: Front End و Back End.
يقصد منه تصميم الموقع و هذا لا علاقة له بلغة بايثون. و بشكل عام تحتاج معرفة الأشياء الأساسية التالية لمعرفة كيف تصمم أي موقع بنفسك من الصفر:
في هذا القسم تستخدم لغة بايثون من أجل جعل ربط تصميم الموقع بقاعدة البيانات و كتابة كل الأوامر التي علاقها بإدارة البيانات.
بالنسبة لقواعد البيانات
تستطيع إستخدام أي قاعدة بيانات تريد مثل MySQL, SQL Server, Oracle إلخ..
بالنسبة للغة بايثون
تستطيع إستخدام أي إطار ( Framework ) جاهز تريد مثل Django, Pyramid, Flask إلخ.. لعلك تتساءل الآن لم يجب استخدام إطار بدل استخدام لغة بايثون بشكل مباشر!
عند استخدام إطار فأنت تريح رأسك من أشياء كثيرة مثل: الكود آمن و ليس فيه ثغرات, ستجد دوال و كلاسات كثيرة جاهزة يمكنك استخدامها كما هي بدل الإضطرار إلى كتابتها من الصفر, أي سؤال يخطر في بالك ستجد أجوبة له كثيرة في جوجل إلخ..
إذا كنت حائراً و لا تعرف أي قاعدة بيانات أو إطار بايثون أنسب لك, فيمكنك استخدام قواعد بيانات MySQL و الإطار Django لأنهما الأكثر شهرة.
بعد تعلم كل ما سبق, تصبح قادر على بناء أي موقع يخطر في بالك و العمل كمطور مواقع إن شاء الله.
الآن, في حال أردت تطوير نفسك أكثر في مجال الويب, يمكنك تعلم بناء تطبيقات ويب بدل بناء مواقع ويب تقليدية.
تطبيقات الويب لها عدة مميزات و أهمها أنها تجعلك قادر على تحويل الموقع إلى تطبيق يعمل على الهاتف و هذا الأمر يمكنه أن يؤمن لك فرص كثيرة أخرى للربح.
لبناء تطبيق ويب, سيكون عليك بالإضافة لم تعرفه سابقاً أن تتعلم استخدام إطار آخر من جهة Front End فقط.
أشهر الأطر المستخدمة حالياً لبناء تطبيقات ويب هي: Angular, Vue و React.
في البداية, عليك معرفة أن أفضل مجال لإستخدام لغة بايثون و أكثر سبب لشهرتها هو شهرتها في هذا المجال.
فكرة الذكاء الإصطناعي بشكل عام هي بناء برنامج قادر على إتخاذ القرارات و كأنه إنسان عادي!
لا بد و أنك تتساءل الآن حول كيف يمكن جعل البرنامج قادر على التفكير من تلقاء ذاته و هذا سؤال منطقي.
الذكاء الإصطناعي لا يعني أبداً جعل البرنامج يفكر و يتصرف تماماً من تلقاء ذاته, بل جعله يعتمد الأسلوب الذي يعتمده الناس في التصرف و اتخاذ القرارات.
سنحاول شرح طريقة عمل الذكاء الإصطناعي من خلال المثال التالي:
لنفترض أنه يوجد مستشفى يقوم يومياً بإلتقاط عدة صور أشعة لصدور المرضى, و من ثم يأتي الطبيب و ينظر إلى هذه الصورة فيكتب تقرير مفصل عنها.
بعدها يتم حفظ كل صورة مع التقرير الخاص بها في قاعدة بيانات المستشفى.
بعد مرور 5 سنوات على سبيل المثال, سيصبح لدى المستشفى قاعدة بيانات فيها آلاف الصور مع التقارير الخاصة بها.
بعد أن أصبح المستشفى يملك كم هائل من المعلومات, أصبح بإمكان هذه المستشفى الإستفادة من الذكاء الإصطناعي و إدخاله في عملها.
الآن, أصبح بإمكان المبرمج أن يجعل أي صورة أشعة يتم إلتقاتها تقارن مع الصور الموجودة في قاعدة البيانات و على أساس أكثر صورة أو صور مشابهة لها يتم طباعة التقرير للصورة الجديدة التي تم إلتقاطها.
فمثلاً بعد المقارنة, قد يجد البرنامج أنه يوجد إحتمال بنسبة 98% أن يكون هذا المريض يعاني من مشكلة معينة لأن أغلب الصور المشابهة لها تعاني من نفس المشكلة.
عندها و بشكل مباشر سيقوم البرنامج بإعطائك التقرير المفصل لهذه الصورة و كأنه قد قام شخص ما بإعداد هذا التقرير.
في النهاية, نتوصل أنه كلما تم تمديد البرنامج بمعلومات أكثر, كلما حصلنا على معلومات أدق.
و كخلاصة للموضوع كله, الذكاء الإصطناعي يبني قراراته على أساس المعلومات التي تموله بها أو التي قمت سابقاً بتجهزيها له.
مجال الذكاء الإصطناعي ينقسم بدوره لعدة فروع يمكنك تعلم إحداها مثل:
ما قمنا بذكره عن مجالات الذكاء الإصطناعي يعتبر سطحي جداً لأن هذا المجال ضخم و مجالاته كثيرة.
من الناحية البرمجية فيجب أن تعرف لغة بايثون و طريقة التعامل مع قواعد البيانات.
من ناحية أخرى فهذا المجال يتطلب مهارة كبيرة في الرياضيات إذا كان الشخص ينوي أن يبدع فيه.
من ناحية الرياضيات, يجب دراسة المواد التالية كبداية و التي يدرسها الطلاب في الجامعات:
في هذا الرابط تجد صور مبسطة جداً من شأنها أن توضح لك علاقة هذه المواد و أهميتها بالذكاء الإصطناعي إنتقل للموقع »
في بايثون يوجد أطر ( Frameworks ) عديدة يمكنك إستخدامها لبناء تطبيقات للحاسوب أو ما يعرف بتطبيقات سطح المكتب ( Desktop Apps ).
أشهر الأطر المستخدمة حالياً في بناء تطبيقات للحاسوب هي التالية:
في حال كنت من هواة تصميم الألعاب فيمكنك استخدام برنامج Blender المجاني لبناء الشخصيات و المؤثرات و حتى بناء مقاطع رسوم متحركة و ألعاب بسيطة.
اللغة البرمجية المستخدمة في هذا البرنامج من أجل إضافة المؤثرات هي بايثون.
برنامج Blender له شعبية كبيرة و مميزات قوية حقاً نسبة لأنه مجاني و يمكنك إيجاد شروحات كثيرة له في النت بالإضافة إلى المجسمات و الشخصيات و المؤثرات المجانية المعدة بواسطته.
في حال كنت تقوم بمهام يومية أو شبه يومية في حاسوبك فيمكنك تجهيز سكريبت يفعل هذه المهام بمجرد أن تقوم بتشغيله.
فمثلاً, في حال كنت تقوم بشكل يومي بإجراء نسخة ثانية من ملفات موضوعة في مجلد ما, أن كنت تنشر نفس المقالات في عدة مجموعات في فيسبوك, أو تبحث في جوجل عن مواعيد الصلوات الخمسة إلخ.. عندها يمكنك إعداد الكود مرة واحدة, و عند الحاجة لتنفيذه تقوم بتشغيله فقط فيقوم بنفس المهام التي كنت ستقوم بها بنفسك و لن تضطر إلى الإنتظار و إضاعة وقتك في إجراء نفس العمليات في كل يوم.
في البداية, كل ما تم ذكره في هذا الدرس يوجد مقدمات و دروس جاهزة حوله في يوتيوب و جوجل باللغتين العربية و الإنجليزية.
و بالتالي في أحال أردت معرفة المزيد حول أي شيء ذكرناه سابقاً قم بالبحث عنه فقط و تأكد أنك ستجد ملايين الإجابات الجاهزة و المفصلة.
روابط دورات عربية و أجنبية | |
---|---|
Youtube: Flask
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات للإطار Flask. |
|
Youtube: Pyramid
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات للإطار Pyramid. |
|
Youtube: Tkinter
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات للإطار Tkinter. |
|
Youtube: Kivy
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات للإطار Kivy. |
|
Youtube: PyQT
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات للإطار PyQT. |
|
Youtube: WxPython
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات للإطار WxPython. |
|
Youtube: Blender
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات لبرنامج Blender. |
|
Youtube: Machine Learning
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات في مجال Machine Learning. |
|
Youtube: Robotics
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات في مجال Robotics. |
|
Youtube: Vision
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات في مجال Vision. |
|
Youtube: Speech Processing
اللغة: الإنجليزية جميع قنوات يوتيوب التي قدمت دورات في مجال Speech Processing. |
للأسف لم نستطع إيجاد روابط لدورات عربية قوية و مجانية لأن أغلب المطورين العرب للأسف لا يشاركون خبراتهم مجاناً في يوتيوب.
تطلّب إعداد هذه الدورة عمل استمر أكثر من سنة و نصف من العمل لتكون شاملة لكل اساسيات بايثون التي يجب أن يعرفها المبرمج و بنفس الوقت لتكون سهلة الفهم.
لذا نتمنى دعمنا من خلال مشاركة الدورة مع أصدقائك في مواقع التواصل الإجتماعي و زملائك في الجامعة إذا كنت تجد أن هذه الدروس يمكنها إفادته.
نتمنى لك كل التوفيق و نسأل الله أن يوفقك و يبارك لك في علمك و عملك.