أهلا بالجميع. اسمحوا لي بأن أعرفكم بنفسي. أنا يوجين. وأنا أعمل كمطور Java منذ نصف عام :-) استغرق مسيرتي بالكامل من المستوى 0 إلى التوظيف ما يقرب من 3 أشهر، وها أنا هنا. لقد شاركت في حوالي 50 مقابلة عمل حتى عندما كنت موظفًا بالفعل وتمكنت من اجتياز اختبار شهادة Java OCA (المعروف الآن باسم Java Programmer)، لذلك لدي قصص لأرويها.
هذه المقالة القصيرة مخصصة لأولئك الذين "تعلموا" Core Java على ما يبدو وفهموا بعض الأساسيات، ولكن لا يعرفون ما يجب وضعه على GitHub (حسنًا، أنت لا تريد نشر مهام CodeGym، أليس كذلك؟) ولا تعرف أين ننظر بعد ذلك. هذا يصفني عندما وصلت إلى المستوى 18. بالطبع، إذا كنت تعرف "الأساسية" (لا أحب هذا المصطلح)، فيمكنك الحصول على وظيفة، أو إنشاء نماذج في Swing، أو كتابة منطق لبعض وحدات التحكم الدقيقة للخبازين أو المصنع ، ولكن جوهر تطبيق Java، بالطبع، موجود في تطوير الويب. وهنا تكمن المشكلة... اه... من أين نبدأ؟ سأخبركم عن رحلتي القصيرة التي قادتني إلى وظيفتي الأولى. هذا هو طريقي وحدي :-) يمكنك مشاركة طريقك.
أساسيات بنية الشبكة
أولاً، شاهد مقطعين فيديو حول بنية الشبكة. نصيحتي لك، وفر لنفسك الكثير من الوقت من خلال فهم المادة المستقبلية. بروتوكولات نقل البيانات، وكيفية انتقال هذه البيانات عبر الشبكة. على الأقل ما هو HTTP، وما هي بنية الخادم والعميل، وما شابه ذلك. سيستغرق الأمر يومًا أو يومين، لكن الأساس سيكون موجودًا. هذا هو التحويل. استطراد صغير: الربيع مطلوب لـ 90٪ من فرص العمل، لكنني أوصي بالبدء من الأساسيات ذاتها. ثم سوف تفهم ما هو تحت غطاء محرك السيارة، وسوف تكون قادرة على السباحة بشكل أفضل. هذا فقط ما فعلته.
SQL وقواعد البيانات
في البداية، أوصي بدراسة SQL وقواعد البيانات. يوجد كتاب ممتاز من Head First، وهناك مقاطع فيديو، وهناك الكثير من محتوى الويب حول SQL. ماذا تحتاج أن تفهم؟ من وجهة نظري، أنت بحاجة إلى معرفة ما هي قاعدة البيانات، وكيف يتم تخزين البيانات هناك، وكيفية الحصول عليها، وكيفية إنشائها، أي استعلامات SQL بسيطة تصل إلى مستوى عبارات الربط، وكيفية إنشاء قاعدتي بيانات ومعالجتهما هم. ماذا تختار هنا؟ حسنًا، MySql وMySql Workbench أجمل وأبسط إلى حدٍ ما، لكنني ما زلت أواجه PostgreSQL في 80٪ من المقابلات ومن الأفضل التعود عليها على الفور.
الاتصال بين جافا وقواعد البيانات
بعد ذلك، سوف نتعمق في JDBC. هذه مكتبة تتيح لنا ربط Java المحبوب لدينا بقاعدة بيانات، كما تحتوي أيضًا على مجموعة من الواجهات (الجاهزة) للعمل مع قواعد البيانات. ستكون مهمتك هنا هي إنشاء قاعدة بيانات ثم كتابة التعليمات البرمجية للاتصال بها والعمل معها :-) تطبيق وحدة تحكم بسيط يضيف البيانات ويجلبها. بعد ذلك، أود أن أكمل هذا مع السبات. هذا أمر اختياري، لكن رأيي هو أنه لا يوجد وقت أفضل من الوقت الحاضر لفهم كيفية عمل ORM. أعد كتابة الكود للعمل مع هذا الإطار.
ترقية سيرتك الذاتية
ثم أضف الأسطر التالية إلى سيرتك الذاتية: SQL، وHibernate، وJDBC، وJPA، حسنًا، وMaven/Gradle (على الأرجح "Maven"، لأن جميع الأمثلة تستخدمه)، والتي بدونها لن تتمكن من المتابعة (أنا يعني عندما يحين وقت ربط التبعيات).
وأيضا الجهاز الهضمي!
تأكد من أخذ الدورات. عليك أن تفهم ذلك على الأقل على مستوى بدائي. سيجعل عملك مناسبًا :) وسوف تفهم الالتزامات وتغيير السجل والمزيد. أوه، ويمكن التباهي بمشروعك الأول على حساب GitHub الخاص بك. دعونا نضيف Git إلى سيرتك الذاتية.
التعمق في تطوير الويب
بعد ذلك، ابدأ في العمل على تطوير الويب. ما زلت أوصي بالبدء بـ servlets، مع فهم مبادئ بنية REST (وهذا ليس بالأمر الصعب). في هذه العملية، سأكتب تطبيقًا بسيطًا (أكثر من تطبيق بالطبع) يستخدم servlets لإجراء عمليات CRUD مع قاعدة بيانات. من خلال القيام بذلك، ستفهم بشكل أعمق كيف يرتعش كل شيء ويرتعش، وكيف يتم إرسال البيانات إلى العميل، وبأي شكل (JSON، على سبيل المثال)، وكيفية استلامها وإرسالها مرة أخرى إلى العميل. ثم أضف servlets وJSON وربما بعض التقنيات الإضافية ذات الصلة إلى سيرتك الذاتية.
تعلم الربيع
أنت الآن مسلح بالكامل، ويمكنك الانتقال إلى الربيع. ابدأ بـ Spring Core وSpring Data. هذا في الواقع موضوع صعب بالنسبة للكثيرين، لأن الإطار نفسه يتضمن الكثير من السحر، والمربعات السوداء، والقوالب المتنوعة، ولكن سيكون لديك بالفعل أساس جيد. في الواقع، لقد واجهت بالفعل مجموعة من الوظائف الشاغرة حيث يمكنك البدء في العمل دون معرفة الربيع. على سبيل المثال، عرضت علي إحدى الشركات راتبًا كبيرًا مقابل معرفة تقنيات هذا "المشروع الدموي" بالتحديد. وهناك بالفعل الكثير من فرص العمل المشابهة، لذا ابدأ بإجراء المقابلات واكتسب الخبرة! لا ترضى أبدًا، هههه. لقد أجريت ذات مرة مقابلة لشغل منصب مطور كبير ونجحت في رواية الحكاية:D بالطبع، من الأفضل عدم القيام بذلك، لكنني تعلمت الكثير في النهاية.
ملخص
الآن، عد إلى التعلم، حسنًا؟ حصلت على وظيفة خلال 3 أشهر فقط لأنني قضيت ما يصل إلى 5 ساعات يوميًا في العمل عليها. والأهم من ذلك، لا تغرق في النظرية. اقرأها ثم جربها! لا تخافوا من كتابة التعليمات البرمجية! حظا موفقا للجميع!
GO TO FULL VERSION