CodeGym /مدونة جافا /Random-AR /قائمة مرجعية لمطوري جافا. ما يجب أن يعرفه المطور
John Squirrels
مستوى
San Francisco

قائمة مرجعية لمطوري جافا. ما يجب أن يعرفه المطور

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

1. الخوارزميات الأساسية

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

2. بناء جملة جافا

بعد تعلم أساسيات الخوارزميات، نحتاج إلى تعلم بناء جملة Java. بعد كل شيء، نحن جميعًا ندرس لنصبح مبرمجي جافا هنا، أليس كذلك؟ دورة CodeGym مثالية لهذا الغرض. أثناء قيامك بمهام لا تعد ولا تحصى، سوف تضع يديك على بناء جملة Java وبعد ذلك، دون الكثير من التردد، ستكتب/تقرأ كود Java كما لو كانت لغتك الأم. CodeGym عبارة عن ممارسة، ولكن أبعد من ذلك، تحتاج أيضًا إلى إلقاء نظرة على النظرية لفهم ما تفعله. للقيام بذلك، يمكنك قراءة الكتب. على سبيل المثال، أحد الإجراءات التالية:
  • "رأس جافا الأول"،
  • "Java for Dummies" بقلم باري بيرد؛
  • "جافا: دليل المبتدئين" بقلم هربرت شيلدت.
بعد قراءة هذه الكتب، يمكنك الانتقال إلى الكتب الأكثر صعوبة:
  • "التفكير في جافا"، بروس إيكل؛
  • "جافا الفعالة" بقلم جوشوا بلوخ؛
  • "جافا: المرجع الكامل" بقلم هربرت شيلدت.
الكتب الثلاثة الأخيرة ليست سهلة القراءة للمبتدئين، لكنها توفر أساسًا متينًا في نظرية Java. ولا تنس أيضًا مقالات CodeGym، فهي تقدم شروحات لأغلب المواضيع التي قد تهمك. يمكنك العثور على مقالة ذات صلة عن طريق كتابة الموضوع الذي يثير اهتمامك في شريط البحث: قائمة مرجعية لمطوري جافا.  ما يجب أن يعرفه المطور - 2كما أوصي بشدة بالبحث عن أسئلة من مقابلات Java. سيساعدك هذا على فهم ما تحتاج إلى تعلمه بالضبط والأسئلة التي يجب الاستعداد لها.

3. أنماط التصميم

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

4. نماذج البرمجة. نظافة الكود

إلى جانب أنماط التصميم القياسية، هناك العديد من المبادئ والنماذج التي يجب أن تكون على دراية بها ( SOLID ، GRASP ). تحتاج أيضًا إلى الحفاظ على التعليمات البرمجية الخاصة بك نظيفة وقابلة للقراءة. لمعرفة كل شيء، تحتاج إلى معرفته حول هذا الموضوع، راجع Clean Code بقلم Robert Martin، أو راجع "Code Complete" بقلم Steve McConnell.

5. إس كيو إل

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

6. ماي إس كيو إل/بوستجري إس كيو إل

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

7. مخضرم/جردل

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

8. جيت

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

9. جي دي بي سي

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

10. جي بي ايه. بيات شتوى

JPA هي طريقة لإنشاء اتصال بين تطبيق Java وقاعدة البيانات، تمامًا مثل JDBC. ولكن في الوقت نفسه، تعد JPA تقنية عالية المستوى وبالتالي أسهل في الاستخدام. لكن JPA مجرد مواصفات وليست تنفيذًا. إنها تحتاج إلى تنفيذ ملموس. يوجد العديد منها، ولكن الأقرب إلى مُثُل JPA والأكثر شيوعًا والأكثر تطورًا هو Hibernate. سوف تصادف هذه التكنولوجيا أكثر من مرة خلال مسيرتك المهنية في مجال تطوير البرمجيات. لذلك، بالإضافة إلى التعرف على هذه التكنولوجيا من خلال قراءة المقالات، قد يكون من المفيد التفكير في قراءة كتاب، على سبيل المثال، "Java Persistence API".

11. الربيع

عندما تصبح مطور جافا، لم يعد الربيع مجرد كلمة بالنسبة لك. قائمة مرجعية لمطوري جافا.  ما يجب أن يعرفه المطور - 5أصبحت معرفة هذا الإطار الآن بنفس أهمية معرفة بناء جملة Java. يمكنك القول أن Spring لديه شقيق، أي Java EE. لكن Java EE قديم ولم يعد يُستخدم في المشاريع الجديدة. الغالبية العظمى من مطوري Java هم الآن مطورو Java-Spring، لذا فإن معرفة بعض تقنيات Spring الأساسية أمر لا بد منه. الربيع ليس مجرد إطار عمل، ولكنه إطار كامل من الأطر: قائمة مرجعية لمطوري جافا.  ما يجب أن يعرفه المطور - 6وهذا مجرد مجموعة فرعية من الأطر التي يوفرها الربيع. بالنسبة للمبتدئين، فإن معرفة عدد قليل منهم فقط أمر جيد بما فيه الكفاية:

  • جوهر الربيع

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

  • ربيع JDBC

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

  • سبات الربيع

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

  • الربيع JPA

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

  • الربيع MVC

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

  • التمهيد الربيع

هذه التكنولوجيا تبسط إلى حد كبير استخدام الربيع. لم أضعه في نهاية القائمة لمجرد نزوة. في الواقع، إنه يخفي الكثير تحت غطاء المحرك، وبالنسبة لشخص غير مطلع على ربيع الفانيليا، قد تكون العديد من النقاط غير واضحة أو غير مفهومة. أولاً، لفهم أفضل لكيفية عمل أطر عمل Spring، يجب عليك استخدام Spring العادي، ثم الحصول على جميع المزايا الأعلى لاستخدام Spring Boot. أوصي أيضًا بالتعرف على Spring Security و Spring AOP. ولكن على عكس التقنيات المذكورة أعلاه، ليست هناك حاجة إلى معرفة عميقة بهذين الاثنين حتى الآن. هذه التكنولوجيا ليست للمبتدئين. في المقابلات، لن يتم سؤال المطورين المبتدئين عنهم (باستثناء سؤال سطحي واحد، ربما). اقرأ نظرة عامة على ماهية هذه التقنيات والمبادئ الكامنة وراء عملها. في هذه المقالة، ذكرت مرارا وتكرارا قراءة الكتب. من ناحية، هذا ليس إلزاميا. يمكنك أن تصبح مبرمجًا دون قراءة كتاب واحد، واكتساب كل المعرفة المطلوبة من المقالات عبر الإنترنت ومقاطع الفيديو التدريبية. من ناحية أخرى، في سوق العمل، ترتفع المنافسة بين المطورين المبتدئين في الوقت الحالي، مما يرفع مستوى ما يحتاج المبتدئ إلى معرفته. لذلك، كلما زادت معرفتك، كلما تمكنت من العثور على وظيفتك الأولى بشكل أسرع من خلال إقناع الشخص الذي يجري معك المقابلة بمستوى معرفتك. شكرا للجميع، وقد تكون جافا معك.
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION