إعادة بناء مشاريعي السبعة في Python

عقدة المصدر: 841116

By كاوستوب جوبتامطور بايثون


إعادة بناء مشاريعي السبعة في Python
تصوير فوتيس فوتوبولوس on Unsplash

 

بايثون هي اللغة المفضلة على الإطلاق لعشاق البرمجة مثلي. لدي اهتمام كبير بهذه اللغة وأستخدمها منذ أكثر من عامين. كان لدي هذا العام الكثير من وقت الفراغ للعمل على مهاراتي في البرمجة وقمت بتطوير الكثير من المشاريع التي تركز على تطوير الويب وتطبيقات Android وعلوم البيانات. في هذه المقالة، سأشرح الغرض من كل مشروع، وكيف قمت بإنشائه، والمقالة المرتبطة بهذا المشروع، ورابط مستودع GitHub. ربما يمكن أن يؤدي هذا إلى زرع فكرة مشروع مماثلة في عقلك أيضًا! دعونا استكشاف هذه المشاريع.

1. المحفظة

 
كمطورين، نقوم بإنشاء مئات من المستودعات ولا يكاد يصل عدد قليل منها إلى المشروع النهائي الذي نعرضه على وسائل التواصل الاجتماعي/LinkedIn. يتيح لك إجراء GitHub هذا إنشاء محفظة ذاتية التحديث تتضمن المشاريع ومسابقات Hackathon وأحدث المدونات. يتم إنشاء ملف فهرس من خلال هذا الإجراء، والذي يتم نشره بمساعدة صفحات GitHub بمجرد التزامه بالمستودع. كان الغرض الرئيسي من هذا المشروع هو أن يكون بمثابة يد العون في تصوير المهارات التي لديك كمشاريع قمت بتطويرها.


مثال للمعاينة التي تم إنشاؤها بواسطة هذا الإجراء!
مثال للمعاينة التي تم إنشاؤها بواسطة هذا الإجراء!

 

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

المادة المرتبطة

مستودع جيثب

2. محلل دردشة مجموعة WhatsApp

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


صورة GIF توضح استخدام تطبيق الويب
صورة GIF توضح استخدام تطبيق الويب

 

فهو يتولى ملف الدردشات الذي تم تصديره (بدون وسائط)، وينظفه، ويشغل جميع الوظائف المخصصة لإنشاء الإحصائيات، ويعرضه للمستخدم أثناء التنقل! يتم حذف الملف الذي تم تحميله بمجرد إنشاء الإحصائيات حفاظًا على الخصوصية. يعرض تطبيق الويب هذا إجمالي عدد الرموز التعبيرية، واستخدامها على أعضاء المجموعة، ونشاط الأعضاء يوميًا، بشكل عام وفي العطلات المحددة، وبعض الميزات الأخرى أيضًا! يعد هذا مشروعًا ممتازًا لتنظيف البيانات وتصورها، أو يمكنك التوصل إلى نموذج تنبؤ للتنبؤ بالمحادثة التالية للشخص بناءً على هذه البيانات. هناك احتمالات لا نهاية لها!

المادة المرتبطة

مستودع جيثب

3. بوابة نتائج الجامعة

 
أنا مسجل حاليًا في الكلية (السنة الثالثة) وأتابع شهادة البكالوريوس من الهند. تصدر جامعتي نتائج امتحانات الفصل الدراسي في شكل ملفات PDF طويلة والتي عادةً ما تكون مزدحمة بالكثير من المعلومات غير ذات الصلة بالطالب. حتى أسماء المواضيع تكون في شكل مشفر، ويصبح من الصعب حساب درجة الائتمان التي تم الحصول عليها. كما أن التنبؤ برتبة المرشح يدويًا هو أمر أقرب إلى المستحيل حيث يوجد حوالي 3 آلاف طالب في كل دفعة كل عام. لتسهيل هذه العملية، قمت بتطوير برنامج نصي للتحليل يقرأ ملفات PDF الطويلة هذه (بعضها يقترب من 6 صفحة!)، ويخزنها بتنسيق قابل للقراءة، ويطبق جميع تقنيات تحويل البيانات للحصول على درجات التقدير والنسبة المئوية والرتب في الكلية و المستوى الجامعي!


IPU هو اسم جامعتي
IPU هو اسم جامعتي

 

لنفترض أن متوسط ​​عدد السجلات يبلغ 5 آلاف سجل لكل فصل دراسي، ولدي سجلات لدفعة 2017 وما بعده وهناك فصلان دراسيان في العام هنا. لذلك ربما لدي 60 ألف سجل حتى الآن! يوفر موقع الويب أيضًا وظيفة إنشاء الملف الشخصي التي تسحب جميع نتائج الفصل الدراسي السابق. يعد هذا أحد أكبر مشاريعي التي قمت بها على الإطلاق واستغرق حوالي شهرين للحصول على الرضا التام.

المادة المرتبطة

وصلة الموقع

4. تطبيق الجامعة للأندرويد

 
نظرًا لأنني نجحت في تطوير موقع الويب، فقد حان الوقت لتوسيع هذه الوظيفة لتشمل منصات أخرى، واكتشفت كيفية إنشاء تطبيقات Android بلغة Python. لقد كان ذلك ممكنًا بفضل المكتبة المذهلة التي تسمى Kivy والتصميم المادي لـ Kivymd. لديه القدرة على تقديم طلبات إلى واجهة برمجة التطبيقات الخلفية وعرضها كنتائج في شكل جدول. لقد استغرق الأمر الكثير من الوقت للحصول على فهم جيد لهذه المكتبة ولكنه كان يستحق ذلك.


صورة GIF توضح استخدام التطبيق
صورة GIF توضح استخدام التطبيق

 

بمجرد أن قمت بتطوير التطبيق، اهتممت به كثيرًا لدرجة أنني كتبت سلسلة كاملة عن الوسيط، وهنا الجزء الأول إذا كنت مهتمًا باكتشاف هذه المكتبة:

بناء تطبيقات Android باستخدام Python: الجزء -1

مستودع جيثب

5. بوت تيليجرام!

 
أعتقد أنني ذهبت بعيدًا في مشروع النتائج هذا وقمت بإنشاء روبوت برقية أيضًا! أثناء تطوير الإصدار الأول من الروبوت، ارتكبت خطأً فادحًا بتشغيل حلقة لا نهائية تتحقق من الرسالة الجديدة وتستهلك هذه العملية الكثير من الموارد. عندما قمت بنشرها لأول مرة على Heroku، في اليوم التالي تلقيت بريدًا يفيد بأن كل ساعاتي الحالية قد استهلكت وفي ذلك الوقت أدركت أنني ارتكبت خطأً فادحًا. لحل هذه المشكلة، قمت بتكييف مفهوم webhook الخاص بـ Telegram والذي يسمح بإعادة توجيه الرسائل مباشرة إلى الرابط الخاص بي كلما حدث ذلك.



شيء آخر قمت به هو دمج الروبوت في خادم قارورة مما يساعد في منع الروبوت من الدخول في حلقة لا نهائية! الآن في كل مرة يقوم الشخص بتقديم طلب نتيجة، فإنه يرسله إلى تطبيق Heroku النائم، وبهذا الطلب يتم تغيير حالة التطبيق وتسليم النتائج.

مستودع جيثب

رابط البوت

6. جلب كلمات الأغاني

 
هذا المشروع مميز بالنسبة لي لأنني بهذا المشروع فزت بمسابقة! تم إنشاء هذا باستخدام Brython الذي يسمح لك بتشغيل كود Python على مواقع الويب الأمامية دون أي Flask أو Django أو أي خادم آخر. لقد قمت بإنشاء أداة جلب كلمات الأغاني التي تقوم باستدعاء واجهة برمجة التطبيقات بناءً على اسم الفنان والألبوم الذي تم تمريره إلى موقع الويب. لقد كان هذا مشروعًا سهلاً للغاية لدرجة أنني استضفت هذا المشروع على صفحات GitHub مما يضمن وقت تشغيل أطول وبدون تكاليف متكررة!


مثال GIF من قبل المؤلف
مثال GIF من قبل المؤلف

 

المادة المرتبطة

مستودع جيثب

7. تطبيق KivyML

 
أثناء اكتشاف مكتبة Kivy & Kivymd، اكتشفت أنه يمكنني نشر نموذج التعلم الآلي على نظام Android. كانت هذه طريقة غير مباشرة لأن python-to-android لا يدعم sklearn في الوقت الحالي. اضطررت إلى نشر النموذج كواجهة برمجة تطبيقات على Heroku ثم تقديم طلبات GET لجلب التوقعات وعرضها على شاشة المستخدم. على الرغم من أن هذا كان نهجًا ساذجًا ويمكن تنفيذ العديد من الأشياء الأخرى هنا، إلا أن هذا كان كل ما كنت أفكر فيه عندما قمت ببناء هذا المشروع.



المادة المرتبطة

مستودع جيثب

مشروع المكافأة - موقع الويب الخاص بي!

 
هذا ليس مشروعًا يستند إلى Python ولكنه موقع ويب آلي تم إنشاؤه بواسطة Wix والذي اشتريته في يوليو 2019 لأغراض التدوين. على الرغم من أنني بمجرد أن انتقلت إلى النظام الأساسي المتوسط ​​للمدونات، لم أعد أحافظ على هذا الموقع كثيرًا، وكما هو الحال في نهاية هذا العام، فقد وعدت بترقية جميع مشاريعي الرائعة، واضطررت إلى تعديلها حتى يتمكن الزائر من ذلك تجد أنها مريحة لتصفح الإنترنت.



معاينة صورة الموقع من قبل المؤلف

 

KaustubhGupta (www.kaustubhgupta.xyz) - تعرف على كل شيء عن التكنولوجيا وأسلوب الحياة العام

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

وفي الختام

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

وبهذا نكون قد وصلنا إلى نهاية هذا المقال وكذلك إلى نهاية عام 2020! عيد ميلاد سعيد لجميع القراء (يصادف عيد ميلادي أيضًا في هذا اليوم: عيد الميلاد😃) وإذا أعجبتك مقالاتي أو استفدت منها بأي حال من الأحوال، فتأكد من متابعتي على الوسيط أو يمكنك التواصل معي على LinkedIn. سايونارا!

 
السيرة الذاتية: كاوستوب جوبتا مطور Python مهتم بعلوم البيانات والتعلم الآلي ، وقد عمل في العديد من المشاريع المتعلقة بالبيانات ، مع الاهتمام بتطبيقات التعلم الآلي في العالم الحقيقي.

أصلي. تم إعادة النشر بإذن.

هذا الموضوع ذو علاقة بـ:

المصدر: https://www.kdnuggets.com/2021/05/rebuilding-7-python-projects.html

الطابع الزمني:

اكثر من KD nuggets