كيف تتعلم تطوير جافا؟ تجربة طالب GeekUniversity نيكيتا Chernetsov


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


الدورات على الانترنت


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


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


لقد بحثت في الكثير من الدورات ، وهنا هي الدورات التي أعجبتني أكثر:


  • جافا راش - مريحة وبديهية.
  • Stepik هو برنامج سنوي مع دورات في Java و Python و Haskell و C ++ والبرمجة الوظيفية والتحليل الرياضي والإحصاء.
  • Otus هي دورة متقدمة في Java و Spring و Machine Learning.
  • كلية تطوير جافا في GeekUniversity (GeekBrains) - أنا هنا الآن في الربع الأخير.

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


الممارسة


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


في Glosav ، صنعت نظامًا لمراقبة النقل. تم خلط لغات مختلفة هناك ، وعمل إرلانج على أعلى مستوى من استقبال البيانات ، ثم ناقل النظام في كافكا ، وخلفه - جافا الصلبة. شخصيا ، كتبت معالجات الدفق. عند بدء التشغيل ، كانت iVoice تقوم بتطوير مركز اتصال تلقائي ، باستخدام Kafka بنشاط. لقد أصبحت مؤخرًا مطورًا في Luxoft ، فهناك الكثير من الميزات الجديدة بالنسبة لي - نحن نقوم بتنفيذ نظام معلومات ومرجع لمجموعة من بنوك VTB ، في المشروع أقوم بتطوير بنية خدمات ميكروية على وحدة Spring Cloud.


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


كود أجنبي على جيثب


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


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


بالطبع ، تم كتابة معظم الكود "مختلس النظر" من قبل المطورين الغربيين ، ببساطة بسبب شعبية GitHub. جميعهم منفتحون ، لذلك إذا لم تتمكن من تحديد ذلك بمفردك في مكان ما ، فيمكنك الكتابة إليهم والسؤال عن بعض النقاط ، وسوف يجيبون بكل سرور.


عندما عملت في Glosav ، استخدمت مكتبة GraphHopper. غالبًا ما ذهبت إلى منتدى حيث أجاب مؤسس المنتج في سلسلة رسائل منفصلة عن أسئلة المبرمجين الآخرين.


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


الكتب الورقية


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


إذا كنت أحد مطوري Java المبتدئين ، فإليك كتابي المفضل الذي يجب قراءته:



من المنتجات الجديدة يمكنني أن أنصح بها:


  • Gwen Shapaira و Neha Narkhead و Todd Palino "كافكا: الدليل النهائي" - كان علي شخصياً أن أعمل كثيرًا مع هذا البرنامج ، لذلك كنت سعيدًا جدًا بوجود هذا الكتاب. بشكل عام ، من دار النشر O'Reilly - غالبًا ما أذهب إلى موقعهم ومتابعة الأخبار.
  • Laaxonen Antti "برمجة أوليمبياد" - لا توجد مهام عمل عاجلة هنا ، ولكن من وجهة نظر الاحماء في الدماغ ، فهي مناسبة تمامًا. بالمناسبة ، دار النشر DMK Press ، يرجى ملاحظة ، تقوم بترجمة جيدة وسريعة حول مواضيع المبرمج.

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

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


All Articles