ما تحتاجه لتعلم البرمجة. تعلم البرمجة من البداية: من أين تبدأ التعلم في المنزل

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

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

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

اكتساب فهم أولي للغة برمجة Python وتقنيات البرمجة العامة (يومان راحة):

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

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

الحصول على فهم أساسي لإطار عمل ويب Django (يوم عطلة واحد):

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

في المرة الثانية ، لم أكن أركز على حداثة المفهوم وتمكنت من التركيز على فهم كيفية توافق جميع القطع معًا.

الحصول على فهم أعمق لمفاهيم Python / البرمجة العامة (4-8 أيام عطلة):

  • فئة CS مقدمة من Udacity. عادةً ما يتم تقسيم دورات Udacity إلى 7 جلسات صفية (2-3 ساعات لكل جلسة) يمكنك القيام بها وفقًا لسرعتك الخاصة. (أنا من أشد المعجبين بعلم أصول التدريس في Udacity وأود أن أوصي بفصل البرمجة المتوسطة أو تطوير الويب كمتابعة لهذه الدورة التدريبية التي تستغرق شهرين.)
  • الوحدة الأولى من دورة علوم الكمبيوتر التمهيدية في معهد ماساتشوستس للتكنولوجيا. مفيد حقًا في التعلم وسهل التعلم بشكل مدهش.

تدرب على إنشاء تطبيقات ويب بسيطة (يومان إجازة):

  • قم بالتدريبات من Django في الأمثلة. هذه التمارين ليست صارمة مثل دروس Django ، لكنها تقدم طريقة جيدة لبدء تطوير تطبيقات الويب البسيطة الخاصة بك.

قم بإنشاء النموذج الأولي الخاص بك (يومان إجازة):

  • بناء نموذج أولي في يومين فقط؟ نعم ، سوف تشعر بالحيرة من مظهره (

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

10. اكتشف لماذا تريد البرمجة

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

9. اختر اللغة الصحيحة

7. جرب تطبيقات للأطفال

الآن حتى الأطفال الصغار يتعلمون البرمجة. في حين أن العديد من برامج تعلم الأطفال بسيطة ، فإن بعضها (مثل Scratch) مناسب لجميع الأعمار. لا يهم كم عمرك ، حتى تطبيقات الرسوم المتحركة للأطفال يمكنها تعليمك أساسيات الترميز (لدى edX برنامج تعليمي Scratch جديد).

6. استفد من التدريب المجاني عبر الإنترنت

يمكن أن تساعدك التدريبات والمشاريع المجانية عبر الإنترنت (Codecademy ، و Hour of Code ، وما إلى ذلك) في كتابة برنامجك الأول. دروسمن Khan Academy و Codecademy و Code.org وغيرهم سوف يقدمون لك أساسيات البرمجة وكل ما تحتاجه لإنشاء لعبة أو موقع ويب أو مشروع آخر. ابحث عن المصدر المناسب اعتمادًا على لغة البرمجة المستخدمة. هذه نقطة انطلاق جيدة ، ولكن عليك أن تأخذ المزيد من التدريب.

5. خذ دورة عبر الإنترنت

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

4. كتب برمجة مجانية

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

3. تعلم أثناء اللعب

أحيانا أفضل طريقةالتعلم من الألعاب. بينما تعلمك العديد من دروس البرمجة كيفية برمجة الألعاب البسيطة أو المعقدة ، فإن بعض مواقع البرامج التعليمية هي ألعاب بحد ذاتها: Code Combat و CodinGame هي أدوات يمكنك استخدامها للاستمتاع.

2. ابحث عن مرشد أو كن واحدًا

مجتمع البرمجة مليء بالأشخاص المستعدين لمساعدة الجيل القادم من المبرمجين. Hack.pledge () هو موقع لمساعدتك في العثور على مرشد. أو يمكنك أن تصبح مرشدًا لشخص آخر. سيساعدك تعليم ما تعلمته على تذكر المعلومات بشكل أفضل.

1. تحليل كود شخص آخر

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

خطوات

الجزء 1

اختيار لغة البرمجة

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

    • لغة C هي واحدة من أقدم لغات البرمجة. إن الإلمام بـ C سيجعل من السهل عليك تعلم C ++ و Java.
    • C ++ هي واحدة من أكثر لغات البرمجة شيوعًا هذه الأيام ، خاصة من حيث تطوير البرمجيات. صحيح أن تعلم C ++ سيستغرق وقتًا ، وسيستغرق الأمر وقتًا أطول لتعلم كيفية استخدامه ... ولكنه سيدفع ثمن نفسه!
    • Java هي لغة برمجة أخرى شائعة جدًا يمكن تشغيلها على أي نظام تشغيل تقريبًا.
    • Python هي واحدة من أبسط لغات البرمجة التي يمكن تعلم أساسياتها في غضون يومين. ومع ذلك ، فهي لغة قوية جدًا تم استخدامها لإنشاء العديد من تطبيقات الخادم والويب.
  1. جهز بيئة التطوير الخاصة بك.لا تحتاج إلى الكثير لبدء البرمجة - وهي "بيئة تطوير". ومع ذلك ، فإن المقصود بالضبط من هذا يعتمد على لغة البرمجة المختارة.

    • محرر الكود - سيكون أي مبرمج تقريبًا أكثر راحة في العمل في موقع خاص محرر النص- محرر الكود. يمكنك بالطبع العمل في برنامج "المفكرة" ، ولكن بدون إبراز واستبدال الجملة ، ستكون تجربة حزينة للغاية. تتضمن برامج تحرير الأكواد الشائعة Notepad ++ و TextMate و JEdit.
    • المترجم - عند العمل مع العديد من لغات البرمجة (C و Java وما إلى ذلك) ، يجب أولاً "تجميع" رمز البرنامج - وبعد ذلك فقط يمكن تشغيله. وفقًا لذلك ، سيتعين عليك تثبيت مترجم إذا كانت لغة البرمجة الخاصة بك لا تستطيع الاستغناء عنه. بالمناسبة ، سيساعدك معظم المترجمين على اكتشاف "الأخطاء" - أخطاء البرنامج.
    • IDE (بيئة التطوير المتكاملة ، بيئة التطوير المتكاملة) - في بعض لغات البرمجة ، يتم دمج كل من محرر الكود والمترجم ووحدة تصحيح الأخطاء في بيئة تطوير واحدة متكاملة. يمكنك عادةً تنزيل IDE من موقع ويب لغة برمجة.
  2. اقرأ الكتب المدرسية.إذا لم تكن قد برمجت على الإطلاق من قبل ، فأنت بحاجة إلى أن تبدأ صغيرًا. لذلك ، من المفيد العثور على كتب أو دورات دراسية ، على الأقل دورات عبر الإنترنت تشرح لك أساسيات اللغة المختارة ، وتخبرك عن تركيبها ومتغيراتها ووظائفها وكل شيء آخر ، بالإضافة إلى كيفية ارتباطها ببعضها البعض.

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

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

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

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

الجزء 2

تطوير البرنامج

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

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

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

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

    • ستكون الخطوة التالية في مخطط "1-2-3" هي ما يسمى "REPL" (حلقة قراءة - تنفيذ - طباعة). ببساطة ، هذه عودة إلى الخطوة الأولى من البرنامج بعد إخراج نتيجة الحساب.
    • فكر في برامج مثل "خط الأنابيب". تتميز بحقيقة أنها تحول مدخلات المستخدم وتعمل بشكل تسلسلي. هذا النوعمناسب للبرامج التي تتطلب الحد الأدنى من تفاعل المستخدم - لنقل قراء RSS. سيكون مثل هذا البرنامج عبارة عن عدة فصول ذات دورة مشتركة.

الجزء 3

النماذج

الجزء الرابع

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

    • ومع ذلك ، يستخدم الكود الكاذب نفس بناء الجملة مثل الكود العادي ، لذلك يجب كتابة الكود الكاذب بنفس طريقة كتابة البرنامج.
  2. صقل النموذج الأولي.يمكنك أن تأخذ النموذج الأولي نفسه ، يمكنك أن تأخذ الكود الزائف - في كلتا الحالتين ، الهدف هو جعل النموذج الأولي أفضل ، أفضل ، أسرع!

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

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

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

من أين نبدأ

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

إذا لم يحدث لك أي مما سبق ، فلديك خيار من بين أربعة خيارات:

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

اللغة والتكنولوجيا والاتجاه الذي تختاره

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

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

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

في أي حال ، تعلم تقنيات الويب. هذه هي لغة ترميز HTML ، أنماط المغلقمما يجعل صفحتك ديناميكية. الخطوة التالية هي تعلم لغة من جانب الخادم (Python و PHP و Ruby والمزيد) وأطر الويب المناسبة لها. استكشف قواعد البيانات: تسرد كل وظيفة مبرمج تقريبًا هذا.

كيف تحصل على الخبرة الأولية

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

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

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

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

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

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

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

لماذا تختار بايثون

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

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

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

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

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

هل اللغة الإنجليزية مهمة

مهم! لا أعلم؟ يعلم. هل تعرف؟ يحسن. تعلم القراءة والكتابة والاستماع والتحدث باللغة الإنجليزية. ركز على الأدبيات الفنية. استمع إلى المدونات الصوتية باللغة الإنجليزية. اقرأ كتب اللغة الإنجليزية عن البرمجة.

ما تحتاج إلى معرفته ، بجانب لغة البرمجة

بالطبع ، بصرف النظر عن لغة البرمجة واللغة الإنجليزية ، فأنت بحاجة إلى معرفة شيء آخر. لكن ماذا - يعتمد على الاتجاه الذي تختاره. يجب أن يعرف مبرمج الويب HTML و CSS و JavaScript. يقوم مبرمج سطح المكتب بتعليم واجهات برمجة التطبيقات لنظام التشغيل وأطر العمل المختلفة. مطور تطبيقات الهاتف الجواليعلم أطر عمل Android أو iOS أو Windows Phone.

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

الخطوات الأخيرة

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

158.7 ك

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

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

ما تحتاج إلى معرفته "إبريق الشاي"

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

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

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


لكن معظم الذين بدأوا الدراسة يتركونها بعد بضعة أسابيع. والسبب الرئيسي لذلك هو الاتجاه الخاطئ للدراسة أو المنهجية أو حتى كتاب البرمجة.

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

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

في بلدان اتحاد الجمهوريات الاشتراكية السوفياتية السابق ، كانت BASIC هي لغة البرمجة الرئيسية التي يتم تدريسها في الجامعات التقنية.

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


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

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

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

ما هي اللغة لبدء تعلم البرمجة

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


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

في أغلب الأحيان ، يقع الاختيار على لغة البرمجة C (si). يبدأ معه معظم المبتدئين في جميع أنحاء العالم تدريبهم. تم إنشاء معظم لغات البرمجة على أساس لغة C ، وهي ترث في نواحٍ عديدة هيكلها وصياغتها.

من خلال تعلم لغة C ، ستتعلم أساسيات ليس لغة برمجة واحدة فحسب ، بل أساسيات عدة لغات في وقت واحد.


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

ببساطة ، C هو المكان الذي يجب أن يبدأ فيه المبتدئ قبل تعلم كيفية البرمجة بلغات أخرى.

برامج (مجمعين) للبرمجة

لتعلم البرمجة ، لا يكفي فقط أن يكون لديك رغبة وجهاز كمبيوتر متصل بالإنترنت. لكتابة برامج بلغة C ، أنت بحاجة إلى اختصاص برمجة- مترجم.

مترجم - برنامج خاص، جار الترجمة كود البرمجةفي شكل يستطيع الكمبيوتر فهمه.

فيما يلي بعض المترجمين المتخصصين الذين يدعمون لغة سي:

  • مايكروسوفت استوديو مرئي- أداة احترافية تدعم العديد من اللغات ، بما في ذلك العديد من لغات الخادم. مناسب للمبتدئين ، إذا أخذته "للنمو":
  • يعد Borland C ++ مترجمًا مجانيًا ومثاليًا للمبتدئين. على عكس الأداة السابقة ، فإنه يحتوي على ملف واجهة واضحة. لذلك ، لن يتسبب تطويرها في أي صعوبات معينة حتى لو كنت تتقن أساسيات البرمجة بشكل مستقل:
  • Code :: Blocks هي بيئة تطوير مجانية تدعم الترميز بلغات متعددة. متوسطة من حيث تعقيد خيار التطوير:
أما بالنسبة للأدب المتخصص ، فلن نوصي بكتب لمؤلفين معينين. هنا ، كما يقولون ، اختر ما تريد. لأنه في معظم الحالات ، يكون اختيار برنامج تعليمي للبرمجة عملية فردية. استخدم المصدر الذي يناسبك.

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



تحميل...
قمة