JavaRush /Blog Java /Random-MS /Apa yang anda perlu tahu untuk menjadi Java Junior, dan a...

Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?

Diterbitkan dalam kumpulan
Keperluan untuk pembangun Java yang berpotensi sentiasa berubah dan sukar untuk diikuti. Adakah cukup mengetahui Java Core sahaja untuk menjadi Pelatih? Sejauh manakah anda perlu memahami Spring dan Hibernate untuk mendapatkan kedudukan Java Junior? Adakah berbaloi untuk mempelajari pangkalan data dan memahami algoritma pengisihan dan carian? Dan memandangkan pelajar JavaRush sangat kerap mengambil berat tentang soalan ini, kami memutuskan untuk bertanya kepada graduan kami yang sudah bekerja sebagai Java Juniors atau sedang berlatih di syarikat sebagai Java Trainees. Ambil perhatian bahawa 13% daripada responden cukup bernasib baik untuk mendapat kedudukan Java Middle pada percubaan pertama mereka, memintas peringkat Junior. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 1Responden berkongsi maklumat tentang teknologi yang mereka perlukan untuk lulus temu duga dan yang mereka gunakan pada tahun pertama kerja Java pertama mereka.

Semua orang memerlukan Java Core

Istilah Java Core agak luas. Nama ini merujuk kepada kedua-dua sintaks asas bahasa dan topik yang kompleks seperti multithreading. Sebenarnya, kursus JavaRush terutamanya ditujukan kepada Core. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 2Sintaks Java. Asas Bahasa. Semua jenis data, pengendali, gelung dan cawangan ini. Sememangnya, 92.4% daripada mereka yang mendapat pekerjaan itu menilai pengetahuan mereka tentang sintaks sebagai "baik atau cemerlang." Walau bagaimanapun, 7.6% responden berjaya menjadi Pelatih Java dengan pengetahuan sintaks yang sederhana. Walau bagaimanapun, ini harus dinilai lebih sebagai nasib (atau membanggakan responden :)). Sudah tentu, setiap orang yang memohon kerja sebagai pengaturcara harus mengetahui sintaks bahasa tersebut. Pengaturcaraan berorientasikan objek (OOP). Segala-galanya di Jawa terdiri daripada objek, jadi OOP boleh dianggap sebagai salah satu tema bahasa yang paling penting. Pendekatan berorientasikan objek mungkin kelihatan asing pada mulanya, terutamanya jika anda hanya mempelajari bahasa prosedur sebelum ini, tetapi tidak sukar untuk beralih kepada objek. Kesukaran terbesar untuk pemula adalah tahap pengabstrakan dan pengedaran bebasnya - pengaturcara baru mesti dapat membuat hierarki objek dengan betul, memahami antara muka yang akan bertanggungjawab dan apa yang boleh dimasukkan ke dalam kelas abstrak, mencipta warisan tangga, dan sebagainya. Seperti biasa, kesukaran ini diselesaikan dengan latihan. Majoriti responden, 80.3% daripada mereka yang mendapat pekerjaan pertama, mengetahui prinsip OOP dengan baik dan menggunakannya secara berterusan. Pada tahun pertama bekerja sebagai Java Juniors dan pelatih, 78.8% responden menggunakan prinsip OOP dengan kerap, 12.1% - dari semasa ke semasa. 7.6% daripada pendengar jarang menggunakannya - mereka ini kebanyakannya sibuk dengan ujian unit dan pelbagai tugasan kecil. Iaitu, sudah tentu, mereka juga menggunakan kelas atau objek (anda tidak boleh melakukannya tanpa ini di Jawa), tetapi jarang mencipta hierarki kelas. Rangka Kerja Koleksi. Koleksi ialah koleksi objek individu yang dipersembahkan secara keseluruhan. Java mempunyai Rangka Kerja Koleksi yang sangat pintar untuk mewakili koleksi. Koleksi adalah berdasarkan struktur data popular - senarai, biasa dan bersambung, set, jadual cincang. Oleh itu, apabila meneroka koleksi, adalah idea yang baik untuk menjadi lebih biasa dengan struktur data. Kesukaran utama dalam mengkaji koleksi ialah memahami dan mengingati cara ia berfungsi. Jika anda memahami cara mereka mengakses elemen, mengekstraknya daripada koleksi dan menambahnya, kemudian anda mula memahami di mana untuk menggunakan struktur ini atau itu. Ia datang dengan amalan. Tetapi, mujurlah, tidak semua jumlah koleksi yang besar digunakan secara aktif dalam kerja sebenar. 80.3% responden menyatakan bahawa mereka mempunyai pengetahuan yang baik atau cemerlang tentang koleksi sebelum menerima tawaran kerja pertama mereka, dan hampir semua 96.9% Junior dan pelatih menggunakan koleksi dalam kerja pertama mereka. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semuanya?  - 3Pengendalian Pengecualian.Pengecualian ialah situasi luar biasa yang mungkin berlaku semasa melaksanakan program anda. Semua kelas pengecualian adalah subjenis kelas java.lang.Exception. Mekanisme pengendalian pengecualian sangat memudahkan proses mencari ralat dalam atur cara. Biasanya, pelajar mula menggunakan pengecualian agak awal, katakan, dalam JavaRush. Dalam JavaRush, topik ini dibangkitkan dalam pencarian Java Syntax yang pertama. Hampir semua graduan JavaRush yang mendapat pekerjaan pertama mereka tahu cara mengendalikan pengecualian, dan, secara semula jadi, menggunakannya semasa bekerja. I/O Streams Java. Program pertama yang ditulis dalam Java biasanya mengandungi sesuatu seperti System.out.println("Hello world"). Selalunya, pemula memahami bahawa kaedah println mencetak baris ke konsol, tetapi tidak tahu mengapa Sistem dan luar ada di sana dan cara ia berfungsi. Tidak lama kemudian ternyata Java melakukan operasi input dan output menggunakan aliran, aliran data yang berterusan. Thread bukanlah topik yang paling mudah untuk difahami dan ia tidak digunakan terlalu kerap dalam pekerjaan pemula: hanya 22.7% orang yang mendapat pekerjaan Java Junior/Pelatih pertama mereka mengatakan bahawa mereka banyak menggunakan utas I/O, 31.8% - dari semasa ke semasa masa, 25.8% - jarang. Jadi hanya di bawah 20% tidak menggunakannya sama sekali semasa tahun pertama mereka sebagai pembangun Java. Semasa pengajian mereka, 18.2% tidak mengalami sebarang kesulitan tertentu dengan aliran dan mengenalinya dengan baik, 36.4% menilai pengetahuan mereka sebagai baik, tetapi 10.6% mengabaikan topik ini. Multithreading (Java Multithreading/Concurrency). Mungkin ini adalah topik yang menyebabkan salah faham yang paling besar dalam kalangan pembangun pemula. Walaupun multithreading dalam Java dilaksanakan dengan sangat baik, ia adalah sukar untuk difahami, dan masalah boleh timbul walaupun semasa menulis program mudah (contohnya, multithreaded "Hello, world"). Ramai majikan memahami perkara ini dan tidak memerlukan pemahaman mendalam tentang multithreading daripada pemula, mengharapkan ia akan datang dengan pengalaman. Hanya 12% responden menyatakan bahawa mereka mengetahui topik itu pada tahap yang baik sebelum menerima tawaran pertama, manakala hampir 32% responden mengakui bahawa mereka tidak tahu apa-apa tentang topik itu sama sekali. Majoriti, 56.2%, berkata mereka "mempunyai sedikit pemahaman" tentang multithreading. Oleh itu, jika kesukaran bekerja dengan benang kelihatan tidak dapat diatasi kepada anda sekarang, nombor ini mungkin meyakinkan anda. Walau bagaimanapun, jika anda ingin mendapatkan kelebihan daya saing dalam temu duga, topik ini boleh menjadi titik kukuh anda. Pada projek sebenar, pemula juga jarang dibenarkan bekerja dengan benang. Oleh itu, 15.1% pengaturcara baru tidak menemui Java Multithreading sama sekali dalam kerja mereka, dan 39.4% telah menemuinya, tetapi jarang sekali. Selalunya pada tahun pertama bekerja hanya 9.1% responden terpaksa bekerja dengan multithreading. Ungkapan Lambda.Ungkapan Lambda dan pembayang pengaturcaraan berfungsi muncul dalam Java 8, tetapi pemula tidak menggunakan alat berguna ini dengan kerap. Ungkapan lambda ialah fungsi yang boleh dibuat tanpa tergolong dalam mana-mana kelas, dan anda boleh menghantarnya sebagai objek atau melaksanakannya atas permintaan. Hanya 22.7% daripada graduan yang ditinjau mengetahui ungkapan Lambda dengan baik sebelum menerima tawaran kerja pertama mereka, dan 48.5% menilai pengetahuan mereka tentang topik itu sebagai "hampir kepada sifar." Pada masa yang sama, lebih daripada 85% pengaturcara baharu berkata mereka menggunakan ungkapan lambda pada tahun pertama mereka. Untuk bersikap adil, kami menyatakan bahawa peratusan rendah mereka yang mengetahui topik ini mungkin disebabkan oleh fakta bahawa dalam JavaRush, ungkapan lambda setakat ini hanya dibentangkan dalam pencarian dan artikel Java Syntax Pro yang baharu . Oleh itu, kita boleh mengatakan dengan selamat bahawa pengetahuan tentang Java Teras untuk mana-mana Java Junior dan juga Pelatih yang berpotensi adalah perlu. Sudah tentu, beberapa topik, sebagai contoh, multithreading, boleh diterima untuk mengetahui lebih sedikit, tetapi sintaks Java, OOP dan koleksi harus tertanam kuat dalam kesedaran anda.

Algoritma dan struktur data

Terdapat perdebatan berterusan tentang kajian algoritma pengisihan dan carian. Di satu pihak, algoritma terbaik telah lama ditulis dan dimasukkan ke dalam perpustakaan semua bahasa pengaturcaraan popular, termasuk Java. Dan ia boleh digunakan secara sah tanpa perlu menulis kod anda sendiri. Walau bagaimanapun, pakar yang melatih pengaturcara masih mengesyorkan bahawa setiap pembangun pemula melatih otaknya dengan menulis semua algoritma gelembung ini, penggabungan, carian binari dan seumpamanya. Pertama, algoritma ini adalah sejenis ujian litmus kemahiran pengaturcara (iaitu, bukan pengetahuan, tetapi kemahiran) dan pemahaman seseorang tentang apa itu pengaturcaraan pada dasarnya. Jika otak anda sudah ditala dengan baik untuk kerja seperti ini, anda akan menulis algoritma dengan agak mudah. Namun, anda harus ingat: anda memerlukan algoritma dengan tepat untuk melatih otak anda... dan untuk lulus temu duga: pembangun Kanan yang menghakis yang mengendalikannya sangat gemar menyeksa pemohon dengan permintaan untuk menulis algoritma ini atau itu. Tetapi dalam kerja mereka, majoriti (48.5%) menggunakan algoritma perpustakaan standard, berkesan dan terbukti, manakala 16% responden tidak menggunakan pengisihan langsung pada tahun pertama bekerja sebagai pengaturcara. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 469.6% graduan mendakwa bahawa sebelum menerima tawaran kerja pertama mereka, mereka mempunyai pemahaman yang baik tentang algoritma pengisihan dan carian serta boleh menulisnya sendiri. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 5Kami telah menyentuh topik struktur data apabila kami bercakap tentang koleksi Java. Ya, adalah lebih baik untuk memahaminya untuk mengetahui di mana dan struktur yang akan digunakan. Mencipta struktur data anda sendiri dalam imej perpustakaan ialah latihan yang hebat yang akan membantu anda memahaminya dengan lebih baik. Anda boleh, sebagai contoh, cuba menulis versi ArrayList anda sendiri atau mencadangkan senarai pautan tunggal anda sendiri (LinkedList yang biasa di Jawa dipautkan dua kali ganda). Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 6Semasa bekerja, pengaturcara baru menggunakan terutamanya struktur data standard.Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 7

Ujian unit

Pustaka JUnit bertanggungjawab untuk ujian unit di Java. Malah, anda boleh memulakan ujian unit hampir pada permulaan latihan. Sekurang-kurangnya, apabila anda mengambil projek bebas pertama anda, walaupun yang sangat kecil, anda lebih baik sudah mahir dalam alat ini. Menulis ujian unit tidaklah begitu sukar, walaupun terdapat beberapa nuansa. Mempelajari JUnit tidak akan mengambil banyak masa, tetapi faedah mengetahuinya sangat besar. Anda akan dapat menutup kod anda sendiri dan orang lain dengan ujian. Selalunya, pemula ditugaskan untuk menulis ujian unit untuk rakan sekerja, jadi ini boleh berguna secara langsung dalam tugas baharu mereka. 57.5% responden mengatakan mereka menggunakan JUnit sebelum temu duga Java pertama mereka yang berjaya, dan lebih 83% telah menggunakan ujian unit pada tahun pertama mereka.

Perpustakaan utiliti, GUI dan komponen berguna

Kami bertanya sejauh mana graduan JavaRush biasa dengan beberapa alatan, beberapa daripadanya telah diliputi dalam kursus kami.
  • Servlet ialah komponen perisian Java yang memanjangkan keupayaan pelayan.
  • JDBC ialah piawaian bebas platform untuk saling kendali antara aplikasi Java dan pangkalan data. JDBC dilaksanakan sebagai pakej java. sql disertakan dengan Java SE (Edisi Standard).
  • log4j ialah perpustakaan pengelogan mesej yang paling terkenal. Ia membolehkan anda menulis panggilan perpustakaan dalam kod java, dan kemudian menyesuaikannya secara fleksibel tanpa mengubah kod yang telah ditulis.
  • Jackson/JSON. JSON (JavaScript Object Notation) ialah fail standard terbuka yang sangat popular dan format pertukaran data, dan Jackson ialah pemproses JSON berprestasi tinggi untuk Java.
Semua alat ini sangat berguna dan sering digunakan dalam kerja, dan kebanyakan pelajar tidak mengabaikannya semasa membuat persediaan untuk temu duga. Ini benar terutamanya untuk Jackson, yang 72.7% daripada pemohon untuk jawatan pengaturcara Java ditemui, JDBC - perpustakaan ini telah dicuba oleh lebih daripada 78% responden. Hampir semua orang menggunakan teknologi ini dalam kerja mereka. Pembangun Java tidak terlalu kerap menemui GUI. Kami bertanya soalan tentang JavaFX: hanya 18% daripada responden yang menemui teknologi ini di tempat kerja. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 8Dua pertiga daripada responden bekerja dengan servlet; bilangan responden yang sedikit lebih kecil mencubanya semasa pengajian mereka. Ternyata beberapa pengaturcara Java baharu juga telah menemui projek seperti Apache Commons (satu set perpustakaan yang memfokuskan pada semua aspek komponen Java boleh guna semula) dan Guava (satu set perpustakaan biasa sumber terbuka untuk Java, terutamanya dibangunkan oleh jurutera Google ).Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 9

Rangka kerja

Sebelum ini, tiada siapa menjangka Java Junior mengetahui Spring atau Hibernate. Tetapi masa berubah, dan hari ini ini kadang-kadang dijangka walaupun daripada Pelatih. Mempelajari teknologi ini sendiri bukanlah mudah. Walaupun segala-galanya kelihatan jelas, pelajar sering lupa apa itu dengan cepat. Kadang-kadang permohonan yang ditulis secara bebas dalam Spring bukanlah ubat penawar. Hanya kerja aktif akan membantu. Walau bagaimanapun, sebelum temu bual berjaya, satu pertiga daripada responden sudah biasa dengan Spring pada tahap yang baik, dan 45.5% mempunyai pemahaman purata mengenainya. Keadaan dengan but Spring agak lebih teruk (36.4% tidak tahu sama sekali), dan hampir 44% graduan JavaRush yang ditinjau berkata mereka mempunyai pengetahuan yang baik tentang Hibernate. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 10Pada masa yang sama, semasa bekerja, rangka kerja Java utama digunakan oleh hampir 88% pengaturcara baharu, Spring Boot - 83%, Hibernate - 81%.Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - sebelas

Bina alat Automasi dan pelayan aplikasi

Kebanyakan graduan JavaRush yang ditemu bual telah mencuba bekerja dengan pembina projek. Selalunya ia adalah Maven (40.9% mencubanya dalam amalan, 30.3% lagi menggunakannya dari semasa ke semasa, dan 12.1% menggunakannya secara berterusan semasa pengajian mereka). Semasa bekerja dengan Maven, saya menghadapi 72.7% (selalunya), 7.6% (kadang-kadang) dan 3% (jarang-jarang). Bagi Gradle, keadaannya agak teruk. Hanya 22.7% telah berlatih dengan pengumpul ini, dan kebanyakan mereka baru mencuba teknologi tersebut. Hampir separuh daripada responden menggunakan Gradle dalam kerja mereka. Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 12Ant telah lama kehilangan kedudukannya, dan ini dicerminkan dalam popularitinya di kalangan graduan kami: hanya 3% daripada responden telah bermain-main dengannya. Dan 12% daripada mereka yang menjawab soalan terpaksa bekerja dengannya. Di antara pelayan aplikasi, Tomcat adalah peneraju; lebih daripada 77% responden mengetahuinya semasa pengajian mereka, 11% mencuba GlassFish, 12% mencuba JBoss. Populariti pelayan di kalangan mereka yang sudah bekerja kelihatan serupa. Hanya 31.8% daripada mereka yang mendapat pekerjaan itu tidak mempunyai pengalaman dengan Tomcat. Selain itu, graduan JavaRush, semasa tahun pertama mereka bekerja sebagai pengaturcara, mencuba pelayan seperti WebSphere, Jetty, Netty, Wildfly, Weblogic.Apa yang anda perlu tahu untuk menjadi Java Junior, dan apa yang perlu dilakukan dengan semua itu?  - 13

Apa lagi?

Sebilangan besar responden, walaupun sebelum mendapat pekerjaan pertama mereka:
  • mempunyai pemahaman tentang HTML, CSS dan JavaScript;
  • bekerja dengan pangkalan data, tahu SQL;
  • hampir semua orang menggunakan Git dan GitHub;
  • cuba bekerja dengan XML tulen.
Semua teknologi ini berguna kepada mereka dalam kerja mereka selanjutnya. Pengaturcara Java, atau sesiapa sahaja dalam perkara itu, dijangka secara lalai akan biasa dengan semua perkara di atas. Ia adalah kenalan, bukan pengetahuan yang mendalam. Oleh itu, kami mengesyorkan berehat dari Java kadangkala dan meluaskan ufuk anda dengan mempelajari teknologi ini. Selain itu, sebahagian daripada mereka yang menjawab soalan menyatakan bahawa semasa temu duga mereka dijangka mempunyai pengetahuan, sekurang-kurangnya secara teori, tentang corak reka bentuk, corak seni bina, serta adab yang baik dalam pengaturcaraan (semuanya KISS, DRY, SOLID). Walau bagaimanapun, selalunya semasa temu bual, hanya definisi yang mencukupi: mereka yang menjalankan temu bual sedar bahawa pemahaman sebenar tentang perkara sedemikian hanya datang dengan latihan berterusan. Adakah mereka berguna dalam kerja anda? Sudah tentu mereka berguna.

kesimpulan

Kami harap kami tidak terlalu menakutkan anda dengan bilangan teknologi yang perlu anda pelajari. Tidak semua ini perlu diketahui secara menyeluruh, dan selain itu, memikirkan semuanya agak menarik. Bukan sia-sia anda memutuskan untuk menjadi seorang pengaturcara, bukan? Jadi teruskan belajar Java dan kekal bermotivasi. Semoga berjaya! PS Jika anda telah mendapat pekerjaan dan ingin bercakap tentang pengalaman anda, selamat datang ke komen!
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION