كيف علمتني الموسيقى والرسم كيفية البرمجة



من أحد المترجمين: يتحدث شيجيانغ يانغ ، مبرمج من نيويورك ، عن كيف يساعده الفن في ممارسة الترميز.

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

توصي Skillbox بما يلي: دورة تدريبية لمدة عامين "أنا مطور ويب للمحترفين" .

نذكرك: لجميع قراء "Habr" - خصم بقيمة 10،000 روبل عند التسجيل في أي دورة تدريبية في Skillbox باستخدام الرمز الترويجي "Habr".

التركيز على الأساسيات


ماذا نعلم؟

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

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

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

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

ماذا تفعل مع المشكلة - اقتحام المكونات الصغيرة؟ ما يساعدك على تحسين مستواك؟ ما هي الاختلافات بين بعض هياكل قاعدة البيانات من الآخرين؟ المهارات الأساسية تشبه التوافقيات الرئيسية التي بنيت عليها سوناتا.

ماذا يعرف المهنيين ذوي الخبرة؟


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

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

لذلك لا يتعين على المبرمج ذي الخبرة معرفة جميع الفروق الدقيقة في React أو Vue أو Ember أو الأطر الأخرى. يعرف مبرمج ذو خبرة كيفية عمل جافا سكريبت وكيف يعمل المتصفح. يتفهم المبرمج ذو الخبرة فوائد البرمجة الوظيفية ؛ فهو يعرف السبب في أن React له أهمية قصوى في حالة معينة.

تعلم الأساسيات ، وكل شيء أعلاه سيجتمع في صورة واضحة.

اسكتشات الحياة


نسخ لصق مقابل المصدر

أصدقائي ، الفنانين الذين جادين في أعمالهم الحرفية ، يصنعون دائمًا رسومات من الحياة. ماذا يعني هذا؟ إنهم يرسمون كل ما يرونه ، وكل ما يهمهم.

لا يرسمون صورة أو نموذجًا ، لكنهم يرسمون ما يرونه بأنفسهم.

عندما يرسم شخص ما صورة من صورة شخص ما ، فإنه لا يخترعها ، لكنه ينسخها. في البرمجة ، مكافئ هذا السلوك هو قصاصات لصق النسخ مع Stack Overflow.

لن يوفر رمز النسخ واللصق الفرصة لاكتساب المعرفة الأساسية. نسخ رمز شخص آخر له معنى مماثل: سوف تحصل على حل ، ولكن ليس لك تجربة. كسب المعركة ، ولكن خسر الحرب.

المعرفة العالمية


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

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

الممارسة


التكرار المستهدف

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

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

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

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

العمل على مستوى عال


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

حدد منفذًا ، وقم بإنشاء مسار ، وإرسال طلب والرد. ثم كرر هذا.

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

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

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

التدريب والمخطط


دا فينشي سبيل المثال

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

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

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

كراسة المبرمجين

كيف يمكنني أن أتذكر هذه الوظيفة ، في أي سياق يتم استخدامها؟ هل أحتاج إلى الاتصال بـ super () في كل مكون React ، أو هل يستحق الأمر دراسة فئات ES6 قليلاً؟ كيفية دمج طلبات HTTP غير المتزامنة؟

يمكنك فهم كل هذا عن طريق فتح Repl أو JSBin. يمكن أن تعمق الدراسات الصغيرة فهم الأشياء الأكثر عمومية ، وتعلم كيفية العمل مع المشاريع الكبيرة.

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

انظر إلى أيدي الموناليزا - فهي مثالية من حيث التكنولوجيا.

صور وأشجار التبعية


التكوين

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

هناك عدة طرق لتحقيق ذلك. واحد منهم هو أن تبدأ مع طبقة مع الحد الأدنى من التبعيات. وبالفعل من هذه الطبقة الأساسية ترتفع.

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

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

طبقة على طبقة

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

التشفير - ترميز


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

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


All Articles