بعض النصائح المفيدة لممارسة بيثون

مرحبا يا هبر! اليوم أقدم لكم ترجمة لمقال دوملي عن دراسة وممارسة البرمجة في بيثون.


مقدمة


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


لا يهم ، هناك العديد من الأشياء المشتركة بين الجميع ، واحد منهم هو أنك تحتاج إلى ممارسة ، وممارسة الكثير!


لحسن الحظ ، بيثون لديها مجتمع واسع ، ودود ، والتواصل. هذه مشاريع مفتوحة المصدر تساعد حقًا في التطوير.


هناك العديد من النصائح الجيدة حول كيفية ممارسة بيثون. سوف تغطي هذه المقالة 10 منهم فقط:


  • اختيار البيئة المناسبة
  • تأكد من أن لديك قاعدة كافية لتعلم أشياء أكثر تعقيدًا.
  • كتابة وتحسين التعليمات البرمجية
  • قراءة الوثائق
  • تعلم أشياء أكثر تعقيدا بعد الأساسيات
  • اتبع بيثون المعايير والنصائح والخدع
  • تحليل شفرة المصدر
  • كن مهتمًا بالمكتبات
  • كن جزءًا من المجتمع
  • تعلم لغة البرمجة الثانية

اختيار البيئة المناسبة


للبدء ، يجب عليك استخدام Python 3 العادي ومدير الحزمة على نظام التشغيل الذي تستخدمه. Windows أو Mac OS أو أي توزيع Linux مناسب لذلك. (حتى Android مع QPython ، على الرغم من أن الإمكانيات محدودة مقارنة ببيثون الأصلي). يمكنك فيما بعد تثبيت Anaconda على نظام التشغيل Windows أو Mac OS أو Linux. أنه يحتوي على مترجم Python ، حزمة Conda ، التبعيات ، ومدير الحزمة. مع ذلك ، يمكنك العثور على العديد من مكتبات الجهات الخارجية التي قد تبدو مفيدة لك.


يجب عليك تحديد IDE المناسب (بيئة التطوير المتكاملة). معظم IDEs شعبية مثل Visual Studio ، VSCode ، Emacs ، Vim ، Sublime Text ، وما إلى ذلك لديهم دعم جيد لبايثون. إذا كنت تحب منتجات JetBrains ، يمكنك تجربة استخدام PyCharm.
كما تم تضمينها في حزمة توزيع أناكوندا وهو IDE يسمى Spyder.


يعد IPython و Jupyter Notebook من الأدوات الجيدة التي توفر وظائف تفاعلية مريحة. يوجد أيضًا مترجم Python تفاعلي ، لكن قد تجده أكثر فائدة في التحقق من الأجزاء البسيطة من التعليمات البرمجية بدلاً من كتابة البرامج الكبيرة.


يمكنك أيضًا مشاهدة هذه المقالة لمعرفة المزيد حول Python IDE.
من بين الأشياء الأخرى ، من المستحسن تثبيت وتكوين الوان لبيثون (Pylint ، flake8 وغيرها). إنها حزم صغيرة تبرز ببساطة مشكلات التعليمات البرمجية (بناء الجملة ، أو تتعلق بعدم الامتثال لنمط البرمجة في Python - PEP8).


تأكد من أن لديك قاعدة كافية لتعلم أشياء أكثر تعقيدًا.


إذا كنت ترغب في تعلم أي لغة برمجة ، فأنت بحاجة إلى الدراسة جيدًا لتعلم الأساسيات التي ستبني عليها حياتك المهنية بهذه اللغة. هذا يعني أنك تحتاج على الأقل إلى معرفة: بناء الجملة الأساسي للغة ، وفهم المفاهيم الأساسية للبرمجة ، والتعرف على الأنواع القياسية وهياكل البيانات ، وما إلى ذلك.


في Python ، يجب عليك التأكد من أنك تفهم الإنشاءات الشرطية ( if ، else, elif ) ، حلقات ( for ، while ) ، وظائف ، أرقام ، سلاسل ، tuples ، مجموعات ، قوائم ، قواميس ، وما إلى ذلك. قد تكون بعض أنواع البيانات الأخرى ، مثل الأرقام المعقدة ، tuples المسماة ، مجموعات ثابتة ، مفيدة أيضًا.


يجب أن تجد الكتاب المناسب لمستواك حول بيثون.
تقدم Duomly برنامج تعليمي من Python يمكنك استخدامه لتعلم هذه المفاهيم والمزيد.
يمكنك أيضًا البدء ببرنامج تعليمي على الموقع الرسمي.


كتابة وتحسين التعليمات البرمجية


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


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


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


قراءة الوثائق


التوثيق مهم جدا في بيثون. يجب أن تجعله عادة لقراءته في كثير من الأحيان. سيكون من المثالي ، قبل استخدام أي وظيفة أو طريقة موجودة ، قراءة الوثائق المتعلقة بها.


لحسن الحظ ، فإن مكتبة Python القياسية ومعظم مكتبات الأطراف الثالثة الشهيرة بها وثائق جيدة ومفصلة متاحة على مواقعها على شبكة الإنترنت. يمكنك أيضًا الحصول على وثائق حول كائن Python (الفئة ، الطريقة ، إلخ) برمجيًا باستخدام السمة .doc:


 >>> print(slice.__doc__) slice(stop) slice(start, stop[, step]) Create a slice object. This is used for extended slicing (eg a[0:10:2]). 

قد تحتوي الوثائق على مزيد من التفاصيل في بعض النقاط.


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


تعلم أشياء أكثر تعقيدا بعد الأساسيات


بمجرد فهم الأساسيات ، يمكنك البدء في تعلم أشياء أكثر تعقيدًا. لا تقلق ، فلن تنسى الأساسيات. سوف تحتاج دائما لهم.


غالبًا ما يتم استخدام موضوعات مثل التعامل مع الاستثناءات ووسائط التفريغ والتعبئة ، و args و ** kwargs ، والديكور ، والوحدات ، والحزم ، OOP والمولدات وتحتاج إلى معرفتها وفهمها على مستوى جيد.
هناك أيضا العديد من الموضوعات المتقدمة التي تحتاج إلى دراسة. على سبيل المثال ، الأساليب السحرية ، coroutines ، البرمجة غير المتزامنة ، تعدد العمليات ، المعالجة المتعددة ، الاختبار ، إلخ. هذا ليس ما تحتاجه في البداية. لذلك ، يمكنك أن تبدأ بشيء أكثر بساطة وأكثر فائدة. على سبيل المثال ، تحتاج إلى أداة قوية لمعالجة السلاسل ، يمكنك تجربة التعبيرات المعتادة. إذا كنت تعمل في مشروع علمي ، فربما تجد أن المعالجة المتعددة ممتعة بالنسبة لك.


اتبع بيثون المعايير والنصائح والخدع


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


وثائق بيثون الرسمية تحتوي على الكثير من المعلومات. PEP 20 ، والتي تسمى أيضًا Zen by Python ، كتبها تيم بيترز ، تشير إلى المبادئ الأساسية لبيثون:


 >>> import this The Zen of Python, by Tim Peters  ,  .  ,  .  ,  .  ,  .  ,  .  ,  .   .     ,   .     .     .     .  ,   .    , ,      .        ,    .  ,  .    ,   .     —  .     — , , .   —  !    ! 

PEP 8 ، أو دليل كتابة التعليمات البرمجية بواسطة Guido Van Rossum ، B. Warsaw.
أيضا PEP 257 ، والذي يدل على اصطلاحات لخطوط الوثائق.


تحليل شفرة المصدر


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


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


كن مهتمًا بالمكتبات


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


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


إذا كنت تريد أن تكون عالماً أو تشترك في "التعلم الآلي" ، فعليك أن تبدأ بـ NumPy ، وهي المكتبة المؤسسة ، للتعامل مع المصفوفات أحادية اللون ومتعددة الأبعاد بطريقة فعالة وسهلة. إنه سريع ويتضمن العديد من عمليات الصفيف ، دون الكتابة بشكل صريح للحلقات من Python.


 >>> import numpy as np >>> >>> a = np.array([1, 2, 3, 4, 5]) >>> a array([1, 2, 3, 4, 5]) >>> b = 2**a >>> b array([ 2, 4, 8, 16, 32]) >>> a + b array([ 3, 6, 11, 20, 37]) >>> b / 2 array([ 1., 2., 4., 8., 16.]) 

  • يوفر NumPy العديد من الوظائف لمعالجة المصفوفات. كما أنه يحتوي على أدوات للجبر الخطي والإحصاءات وما إلى ذلك.
  • SciPy هي مكتبة للحسابات العلمية المبنية على NumPy ، والتي تحتوي على ميزات إضافية للجبر والإحصائيات الخطية.
  • الباندا هي واحدة من مكتبات بايثون الأكثر شعبية. كما أنها مبنية على NumPy وتعمل بشكل جيد مع NumPy و SciPy. ويشمل وظائف لمعالجة البيانات.
  • Scikit-Learn هي المكتبة الأساسية للتعلم الآلي مع العديد من الخوارزميات. تُستخدم TensorFlow و Theano و Pytorch و Keras أيضًا للعمل مع الشبكات العصبية.
  • Matplotlib و Bokeh خيارات جيدة لتصور البيانات.

كل هذه المكتبات لديها وثائق ممتازة.


إذا كنت ترغب في القيام ببرمجة الويب ، يمكنك تعلم وممارسة العمل مع بعض أطر عمل Python الخلفية. الأكثر شعبية منهم - Django ، لديه معظم الميزات الضرورية. أنها مريحة للغاية لتطبيقات الويب الكبيرة. قارورة ، من ناحية أخرى ، هو إطار مرن قوي ومرن مع العديد من الإضافات. يعد Django و Flask من أكثر أطر عمل Python شعبية.


لدى Python أيضًا إطارات ويب أخرى مثل Pyramid و Bottle و Tornado وما إلى ذلك.


SQLAlchemy عبارة عن حزمة تتضمن القدرة على العمل مع قواعد البيانات بأسلوب موجه للكائنات. غالبًا ما يستخدم في أطر الويب ، ولكن أيضًا في علوم البيانات.


كن جزءًا من المجتمع


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


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


تعلم لغة البرمجة الثانية


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


إذا كنت تريد أن تكون مبرمج ويب ، فربما تحتاج إلى تعلم JavaScript. يعد التعلم C جيدًا لفهم أفضل لمفاهيم البرمجة الأساسية ، ولكن يمكنك أيضًا كتابة وظائف سريعة جدًا لـ Python. الصدأ هي لغة جديدة ورائعة للغاية ولديها بالفعل تكامل جيد مع بيثون


أمثلة على المشاريع للممارسة


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


  • إذا كنت تعمل غالبًا مع Microsoft Office Excel ، يمكنك استخدام XLWings و NumPy و Pandas لتسريع العمليات الحسابية الخاصة بك.
  • يمكنك استخدام Python لإنشاء الألعاب. على سبيل المثال ، يمكنك استخدام المكتبة random ومحاولة محاكاة لفافة ورق اللعب أو خلط أوراق اللعب.
  • إذا كنت تريد إنشاء واجهات رسومية رائعة ، فيمكنك استخدام PyQt أو Tkinter. ربما يجب عليك إنشاء آلة حاسبة (المزيد من الميزات ، كان ذلك أفضل) أو لعبة بسيطة ولكنها معروفة جيدًا.
  • إذا كنت ترغب في الانغماس في تطوير الويب ، فجرب Flask. يتطلب فقط 5 سطور من التعليمات البرمجية للحصول على تطبيقات الويب الأساسية ولكن الوظيفية.

يحتوي موقع Flask الرسمي على وثائق رائعة وبرنامج تعليمي يمكنك استخدامه لدراسته.


يحتوي البرنامج التعليمي Doumly Machine Learning على تعليمات حول كيفية ممارسة علم البيانات والتعلم الآلي.


استنتاج


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


ترميز سعيد!

Source: https://habr.com/ru/post/ar478900/


All Articles