CodeGym /Kursus Java /All lectures for MS purposes /Senarai Semak Pembangun Java

Senarai Semak Pembangun Java

All lectures for MS purposes
Tahap , pelajaran
Tersedia

Setiap pengaturcara Java mesti mempunyai pemahaman asas tentang pembangunan perisian. Jadi mari kita lihat apa yang dianggap "asas".

1. Algoritma asas

Perkara pertama yang perlu ditangani apabila mula belajar pengaturcaraan (bukan hanya Java) ialah memahami asas-asasnya. Sebagai contoh, algoritma.

Terdapat bilangan yang tidak terhingga, dan anda tidak sepatutnya membunuh sepanjang tahun hidup anda cuba mempelajari seberapa banyak algoritma yang mungkin: kebanyakannya tidak akan berguna kepada anda. Anda boleh mendapatkan pengetahuan minimum yang diperlukan daripada buku "Grokking Algorithm". Ini sudah cukup untuk membantu anda bermula, tetapi jika anda mahu, anda boleh belajar daripada buku "Struktur dan Algoritma" atau "Algoritma di Jawa" oleh Robert Sedgewick dan Kevin Wayne.

2. Sintaks Java

Selepas mempelajari asas algoritma, kita perlu mempelajari sintaks Java. Lagipun, anda sedang belajar untuk menjadi pengaturcara Java, bukan? Kursus CodeGym sesuai untuk ini.

Semasa anda melakukan tugas yang tidak terkira banyaknya, anda akan mendapat sintaks Java dan kemudian, tanpa banyak teragak-agak, anda akan menulis/membaca kod Java seolah-olah ia adalah bahasa ibunda anda.

Di luar latihan, anda juga perlu melihat teori untuk memahami apa yang anda lakukan. Untuk melakukan ini, anda boleh membaca buku. Sebagai contoh, salah satu daripada yang berikut:

  • "Kepala Java Pertama",
  • "Java for Dummies" oleh Barry Bird;
  • "Java: A Beginner's Guide" oleh Herbert Schildt.

Selepas membaca buku ini, anda boleh pergi ke buku yang lebih sukar:

  • "Berfikir di Jawa," Bruce Eckel;
  • "Jawa Berkesan" oleh Joshua Bloch;
  • "Java: The Complete Reference" oleh Herbert Schildt.

Tiga buku terakhir bukanlah bacaan yang mudah untuk pemula, tetapi ia menyediakan asas yang kukuh dalam teori Java.

3. Corak reka bentuk

Corak reka bentuk ialah corak berulang tertentu yang menyelesaikan masalah dalam konteks yang sering ditemui. Ia termasuk corak asas dan mudah yang perlu diketahui oleh setiap pengaturcara yang menghargai diri sendiri. Untuk memahami topik ini, ambil buku "Kepala Corak Reka Bentuk Pertama".

Ia menerangkan corak reka bentuk asas dengan cara yang boleh diakses. Tetapi buku ini banyak bercakap tentang Java, jadi apabila anda menggunakan buku ini, anda juga memerlukan kefasihan dalam bahasa pengaturcaraan ini.

Untuk menyelam lebih mendalam ke dalam corak, anda juga boleh membaca "Corak Reka Bentuk: Elemen Perisian Berorientasikan Objek Boleh Digunakan Semula" daripada Geng Empat ( Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides ). Sebaik sahaja anda telah mempelajari topik ini, anda akan mula melihat corak hampir di mana-mana dalam kod anda.

Beri perhatian kepada perkara ini, terutamanya kepada corak yang digunakan dalam Spring, kerana ini adalah soalan temu bual yang popular.

4. Paradigma pengaturcaraan. Kebersihan kod

Selain corak reka bentuk standard, terdapat pelbagai prinsip dan paradigma yang perlu diketahui (SOLID, GRASP).

Anda juga perlu memastikan kod anda bersih dan boleh dibaca. Untuk segala-galanya, anda perlu tahu tentang topik ini, lihat Kod Bersih oleh Robert Martin atau lihat "Kod Lengkap" oleh Steve McConnell.

5. SQL

Langkah seterusnya kami ialah mengkaji bahasa untuk pangkalan data hubungan — SQL.

Pangkalan data adalah tempat maklumat (data) yang digunakan oleh aplikasi web disimpan. Pangkalan data terdiri daripada beberapa jadual (buku alamat pada telefon anda ialah contoh mudah).

Pembangun Java bertanggungjawab bukan sahaja untuk aplikasi Java, tetapi juga pangkalan data yang berinteraksi dengannya dan tempat ia menyimpan datanya.

Dalam pangkalan data hubungan (yang merupakan jenis yang paling biasa), semua interaksi berlaku melalui bahasa khas yang dipanggil Structured Query Language, atau SQL.

Untuk memahami topik ini, anda hanya perlu membaca salah satu daripada buku ini:

  1. "Belajar SQL" oleh Alan Beaulieu;
  2. "SQL" oleh Chris Fehily;
  3. "Kepala SQL Pertama" oleh Lynn Beighley.

Tetapi amalan tanpa teori tidak memotongnya, bukan? Dan pada temuduga anda boleh mengharapkan ujian pengetahuan anda tentang SQL. Penemuduga selalunya (hampir selalu) memberikan satu atau dua tugasan yang melibatkan penulisan pertanyaan SQL.

Akibatnya, adalah sangat penting untuk mengasah kemahiran SQL praktikal anda untuk menunjukkan diri anda dalam cahaya yang baik.

6. MySQL/PostgreSQL

Selepas mempelajari bahasa SQL, anda perlu membiasakan diri dengan pelaksanaan pangkalan data tertentu. Bergantung pada pangkalan data, beberapa arahan mungkin berbeza secara mendadak. Dan terdapat perbezaan yang agak ketara dalam keupayaan pangkalan data.

Pangkalan data hubungan yang paling biasa ialah MySQL dan PostgreSQL. MySQL jauh lebih mudah, tetapi PostgreSQL mempunyai keupayaan yang lebih luas. Membiasakan diri dengan sekurang-kurangnya salah satu daripadanya sudah cukup untuk bermula.

Anda boleh mengkaji pelaksanaan pangkalan data jika anda menggunakan kemahiran googling anda — cari artikel dan tutorial yang berkaitan di YouTube. Anda perlu memupuk keupayaan anda untuk mencipta pertanyaan carian yang betul untuk soalan yang anda perlukan dijawab. Lagipun, pengaturcara ialah seseorang yang mempunyai tali pinggang hitam dalam googling.

7. Maven/Gradle

Anda perlu mempelajari sama ada rangka kerja Gradle atau Maven. Ia adalah untuk membina projek, dan bagi anda, Java kini bukan sahaja untuk tugasan yang melibatkan beberapa kelas, tetapi juga bahasa untuk menulis aplikasi lengkap.

Anda perlu memahami cara membina projek, apakah peringkat binaan, cara memuatkan perpustakaan luaran yang diperlukan dengan kod pihak ketiga dan banyak lagi.

Walaupun fakta bahawa Gradle lebih baru dan lebih ringkas, Maven digunakan dalam kebanyakan kes. Jadi, beri perhatian khusus kepada kitaran hayat binaan Maven.

8. Git

Git ialah sistem kawalan versi teragih. Teknologi ini membolehkan pembangun bekerjasama dalam satu aplikasi tanpa mengganggu antara satu sama lain.

Sudah tentu, terdapat sistem kawalan versi lain. Contohnya, Subversion. Tetapi Git digunakan paling meluas, dan anda perlu dapat bekerja dengannya. Sebagai tambahan kepada banyak artikel tentang Git yang boleh anda temui dalam talian, YouTube mempunyai lebih daripada cukup video untuk membantu anda menguasai teknologi ini, langkah demi langkah.

Pada mulanya, adalah lebih baik untuk menggunakan Git daripada baris arahan daripada beberapa jenis pelaksanaan GUI, kerana anda akan dipaksa untuk melakukan segala-galanya menggunakan arahan. Dalam temu bual, orang selalunya suka bertanya tentang beberapa arahan Git, jadi saya syorkan anda menuliskannya dan menyimpannya di tempat yang berdekatan.

9. JDBC

Teknologi ini menghubungkan aplikasi Java anda dan pangkalan data hubungan. Untuk asas, baca mana-mana tutorial JDBC.

Terdapat banyak artikel yang menerangkan JDBC dan memberikan contoh asas, walaupun tiada siapa yang menggunakan JDBC bogel secara langsung lagi.

10. JPA. Hibernate

JPA ialah satu cara untuk mewujudkan sambungan antara aplikasi Java dan pangkalan data, sama seperti JDBC. Tetapi pada masa yang sama, JPA adalah teknologi peringkat lebih tinggi dan oleh itu lebih mudah digunakan.

Tetapi JPA hanyalah spesifikasi, bukan pelaksanaan. Ia memerlukan pelaksanaan yang konkrit. Banyak daripada mereka wujud, tetapi yang paling hampir dengan cita-cita JPA, yang paling popular dan paling maju ialah Hibernate.

Anda akan menemui teknologi ini lebih daripada sekali dalam kerjaya pembangunan perisian anda. Jadi, selain membiasakan diri dengan teknologi ini dengan membaca artikel, mungkin ada baiknya memikirkan membaca buku, contohnya, "Java Persistence API".

11. Musim bunga

Apabila anda menjadi pembangun Java, Spring bukan lagi sekadar perkataan untuk anda. Mengetahui rangka kerja ini kini sama pentingnya dengan mengetahui Sintaks Java. Anda boleh mengatakan bahawa Spring mempunyai adik beradik, iaitu Java EE. Tetapi Java EE sudah lapuk dan tidak lagi digunakan pada projek baharu.

Majoriti pembangun Java kini adalah pembangun Java-Spring, jadi mengetahui beberapa teknologi Spring asas adalah satu kemestian.

Spring bukan sekadar rangka kerja, tetapi keseluruhan rangka kerja:

Dan ini hanyalah subset rangka kerja yang disediakan oleh Spring. Bagi seorang pemula, mengetahui hanya beberapa daripada mereka adalah cukup baik:

Teras Spring

Anda harus meletakkan ini di tempat pertama, supaya anda boleh memahami apa itu Spring — semua tentang bekas Spring, kacang, DI, IoC dan sebagainya. Untuk memahami falsafah penggunaan Spring, boleh dikatakan. Kajian lanjut anda tentang rangka kerja Spring akan dibina di atas asas ini. Mungkin anda perlu mencipta aplikasi kecil anda sendiri di mana anda boleh menggabungkan semua teknologi yang baru dipelajari secara beransur-ansur.

Musim bunga JDBC

Terdahulu kami menyebut JDBC sebagai teknologi untuk mencipta sambungan pangkalan data. Secara umum, penggunaan teknologi "telanjang" tidak lagi boleh ditemui dalam projek, jadi anda boleh membuat kesimpulan bahawa pembelajaran JDBC tidak perlu. Ini bukan sikap yang betul.

Dengan meneroka penggunaan telanjang (langsung) JDBC, anda boleh melihat teknologi pada tahap yang lebih rendah dan memahami masalah dan kekurangannya. Kemudian apabila anda mula mempelajari Spring JDBC, anda akan menyedari apa sebenarnya rangka kerja ini bertambah baik, mengoptimumkan dan menyembunyikannya.

Hibernate Spring

Analogi dengan situasi dengan JDBC bogel, rangka kerja ini memanfaatkan teknologi sedia ada, dalam kes ini, Hibernate. Jika anda mempertimbangkan untuk menggunakan Hibernate tanpa Spring, anda pasti akan menyedari faedah yang ditawarkan Spring Hibernate.

JPA musim bunga

Terdahulu kita bercakap tentang JPA dan menyebut bahawa ia hanya spesifikasi, walaupun ia mempunyai pelbagai pelaksanaan. Di antara pelaksanaan ini, Hibernate datang paling hampir dengan yang ideal.

Spring mempunyai pelaksanaan JPA idealnya sendiri yang menggunakan Hibernate di bawah hud. Ia sedekat mungkin dengan ideal spesifikasi JPA.

Ia dipanggil Spring JPA. Secara ringkasnya, ia sangat memudahkan akses pangkalan data.

Anda hanya boleh mempelajari JPA tanpa mempelajari JDBC, Hibernate, Spring JDBC atau Spring Hibernate. Tetapi jika anda mengambil pendekatan ini, pengetahuan anda tentang cara menyambung ke pangkalan data akan menjadi sangat cetek.

MVC musim bunga

Teknologi ini memungkinkan untuk memaparkan antara muka web aplikasi kami kepada pengguna dan memudahkan komunikasi antara antara muka dan aplikasi yang lain. Teknologi ini juga boleh digunakan tanpa paparan apabila anda mempunyai aplikasi yang bertanggungjawab untuk mengendalikan paparan dan anda berinteraksi dengan aplikasi menggunakan teknologi RESTful.

Untuk mendapatkan maklumat tentang Spring dengan lebih baik, selain artikel dan kuliah YouTube, anda boleh membaca beberapa buku. Contohnya, "Spring in Action" oleh Craig Walls. Satu lagi buku hebat tentang Spring ialah "Spring 5 for the Professionals". Ia lebih padat. Lebih seperti rujukan yang lebih berharga untuk disimpan dekat daripada membaca dari muka ke muka.

Kasut Musim Bunga

Teknologi ini sangat memudahkan penggunaan Spring. Saya tidak meletakkannya di hujung senarai dengan sesuka hati. Sesungguhnya, ia banyak menyembunyikan di bawah tudung, dan bagi seseorang yang tidak biasa dengan Spring vanila, banyak perkara mungkin tidak jelas atau tidak dapat difahami.

Mula-mula, untuk pemahaman yang lebih baik tentang cara rangka kerja Spring berfungsi, anda harus menggunakan Spring biasa, dan kemudian mengambil semua faedah yang lebih tinggi daripada menggunakan Spring Boot.

Anda juga harus membiasakan diri dengan Spring Security dan Spring AOP. Tetapi tidak seperti teknologi di atas, pengetahuan mendalam tentang kedua-dua ini belum lagi diperlukan.

Teknologi ini bukan untuk pemula. Semasa temu duga, pembangun junior tidak akan ditanya tentang mereka (kecuali satu soalan cetek, mungkin). Baca gambaran keseluruhan tentang apakah teknologi ini dan prinsip di sebalik kerja mereka.

Lebih banyak anda tahu, lebih cepat anda akan mendapat pekerjaan pertama anda.

Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION