12 تلميحًا وحيلًا لتعلم كيفية الترميز (لأن 10 كانت قصيرة جدًا)

1 - تعلم اللغة التي تحبها ، وليس اللغة التي تثير الضجة

هذه هي القاعدة الذهبية: تعلم أثناء قضاء وقت ممتع أو على الأقل أعجب بما تفعله. لا تركز على لغة اللحظة. إذا تم إيقاف تشغيلك ، فلن تصل إلى أي مكان. علاوة على ذلك ، هذا المجال يتطور بسرعة كبيرة. Javascript ، على سبيل المثال ، فقدت مصداقيتها بشكل خاص قبل ذكر HTML5 وأصبحت واحدة من أعمدة الويب. الشيء المهم هو أن اللغة التي تختارها تحفز فضولك ورغبتك في التعلم. من الممتع أيضًا أن يكون لديك مطورون ذووا جوانب متعددة أكثر من ملفات التعريف المماثلة تمامًا. علاوة على ذلك ، ستجد دائمًا حلًا لتحقيق أهدافك. على سبيل المثال ، قام زوجي PHP - MySQL بإيقاف تشغيلي دائمًا في قاعدة بيانات الأعمال. هذا لم يمنعني من التغلب عليها من خلال الاستمتاع باللغات واللغات الوصفية مثل Rebol (الآن Red) و Python و XML.

2 - ابحث عن مشروع أنت شغوف به وقم بتنفيذه بنجاح

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

3 - إلغاء التمثيل

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

4 - خطوة خطوة والقيام قليلا كل يوم

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

5 - معرفة كيفية التوقف

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

6 - تعليق ، توليف

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

7 - تدوين الملاحظات وتجميع علمك

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

8 - اختبار وتجربة

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

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

9 - النسخ الاحتياطي بانتظام واستخدام الإصدار

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

حسب الاصطلاح ، يشار إلى الإصدارات ذات المنازل العشرية بأنها "ثانوية" ، أي أن التغييرات التي تمت عليها ليست كبيرة. تُسمى الإصدارات التي تحتوي على عدد صحيح بالأحرف الرئيسية لأنها تعتبر وظيفية وتجلب ابتكارًا حقيقيًا في التقدم. إذا قارنته مع رياضة المشي لمسافات طويلة ، تشير الإصدارات 0.43 و 0.76 إلى أنك تحرز تقدماً في الطريق ، يشير الإصدار 1.0 إلى أنك وصلت إلى محطتك الأولى ، ملجأ Singing Owl on Big Thunder Mountain. الإصدار 1.0 خاص قليلاً لأنه أول إصدار وظيفي حقًا.

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

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

10 - تبسيط ، تحسين التعليمات البرمجية الخاصة بك

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

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

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

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

11 - قارن وفحص كود الآخرين

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

12 - طرح الأسئلة

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