JavaRush /Blog Jawa /Random-JV /Jawa. Rencana tumindak

Jawa. Rencana tumindak

Diterbitake ing grup
Jawa.  Rencana Tindakan - 1

Isi:

  1. Bagian Nol - Inti Jawa
  2. piranti
  3. JDK API
  4. Apa Anyar ing Jawa 8
  5. SQL, database, JDBC
  6. Kerangka
  7. Pustaka lan kerangka kanggo testing
  8. Pustaka layanan
  9. klien API
  10. Pola Desain
  11. kawruh tambahan
Apa sing kudu dimangerteni calon Junior Java kanggo entuk kerja pertama utawa paling ora nglamar posisi Trainee ing perusahaan sing apik? Piranti apa sing bakal mbantu programmer Java tekan tingkat sabanjure? Teknologi apa sing kudu disinaoni lan apa sing kudu ditinggalake mengko? Ora ana jawaban standar kanggo pitakonan kasebut, kaya ora ana rencana tumindak sing cocog karo kabeh wong. Sawetara perusahaan ngupayakake pangembangan, terus-terusan ngenalake teknologi anyar lan nguji kemampuan versi basa anyar, dene liyane nekad nempel karo sing lawas. Ana uga opsi "tengah", lan, mbok menawa, ana luwih akeh. Nanging, kita wis nggawe peta dalan utawa peta dalan kanggo pangembang Jawa sing kepengin banget. Ing upaya kanggo nggawe iku minangka prasaja sabisa, kita wis dituduhake mung sing teknologi lan topik sing perlu kanggo akèh-akèhé saka "javistes". Sampeyan kudu eling yen ora kabeh kudu disinaoni kanthi rinci (sawetara ing ndhuwur mung bisa dikuasai kanthi makarya ing tim), nanging ora bakal ana pangerten umum babagan dheweke.

0. Bagian Nol - Inti Jawa

Kita nglebokake bagean nol ing artikel kasebut, yen ana wong sing lagi arep sinau basa Jawa lan ora ngerti arep miwiti saka ngendi. Inti Jawa minangka perkara sing kudu dingerteni para pamula. Yaiku, ngerti perkara dhasar, ngerti apa sing ditawakake basa kanggo ngrampungake masalah tartamtu, lan ing kasus sing gampang bisa ngetrapake kawruh kasebut. Sampeyan bisa latihan Java Core ing JavaRush, lan yen sampeyan durung nindakake iki, diundang kanggo njupuk kursus kasebut ! Inggih, kanggo wong liya, ayo ngelingake sampeyan babagan tonggak utama Java Core:
  • Konstruk, Operator, lan Jinis Data Dasar Jawa
  • OOP lan implementasine ing Jawa
  • Pangecualian
  • Koleksi Jawa
  • Generik
  • Multithreading

1. Piranti

IDE utawa lingkungan pangembangan terpadu

Alat utama pangembang modern yaiku IDE. Ana akeh sing ana ing pasar saiki, nanging ing pangembangan Jawa profesional biasane mung ana rong jeneng. Iki Eclipse gratis, dibangun ing plugins , sing wis nyekel palem nganti pirang-pirang taun berturut-turut, lan IntelliJ IDEA , sing wis aktif ngganti Eclipse ing taun-taun pungkasan, lan iki senadyan kasunyatan manawa langganan versi Ultimate dibutuhake dening profesional biaya dhuwit. Ayo kita ngelingake yen ing kursus JavaRush kita nggunakake edisi gratis Komunitas IntelliJ IDEA, sing duwe watesan fungsi tartamtu dibandhingake Ultimate. Ukara "Aku ngerti IDE" tegese sampeyan wis kenal karo kemampuan dhasar lingkungan pangembangan, sampeyan ngerti carane ngumpulake, mbukak, debug lan nyoba file, lan kode refactor. Nguasai tombol panas bakal dadi bantuan sing apik kanggo nyepetake karya sampeyan. Aja kesed, nglampahi sawetara jam sinau babagan fitur IDE sing durung dingerteni lan wiwiti digunakake ing praktik. Lan aja nglirwakake debugging, iku skill banget migunani. Kabeh tumindak iki bakal bantuan kanggo Ngartekno nambah kacepetan lan kualitas karya.

Piranti kanggo perakitan otomatis

Saiki, proyek Java paling kerep nggunakake alat kayata Maven lan Gradle. Sampeyan ora perlu kanggo sinau wong sak tenane, nanging bakal migunani kanggo ngerti carane padha beda-beda saka saben liyane, apa padha adhedhasar, apa tugas (ing Gradle) lan fase karo gol ing Maven. Bakal cukup kanggo maca babagan sistem lan masang sawetara proyek cilik. Iki cukup prasaja kanggo nindakake, lan sampeyan bakal ngerti rincian ing kahanan kerja nyata.

Sistem kontrol versi lan layanan hosting online

Sistem kontrol versi yaiku sing mbantu programer bisa kerja ing tim ing proyek umum tanpa "rusak", nyinkronake potongan kode sing beda-beda sing digawe dening wong sing beda-beda, mbaleni nganyari sing ora sukses lan nambah sing anyar. Sing paling umum yaiku rong sistem kontrol versi. Salah sijine disebarake lan diarani Git, sing kapindho dipusatake, diarani SVN (alias Subversion). Dina iki, Git minangka standar de facto. Nggarap sistem iki luwih trep lan luwih gampang; didhukung kabeh IDE (uga SVN). Nggarap Git bisa dicoba kanthi cepet lan gampang; untunge, ana akeh informasi babagan topik iki ing Internet. Contone, buku teks interaktif GitHowTo, kasedhiya ing basa Rusia (cepet banget). Penting banget kanggo pangembang pemula kanggo nguwasani layanan hosting online kanggo sistem kontrol versi. Paling asring adhedhasar Git lan diarani platform Git (sanajan sawetara bisa digunakake karo sistem kontrol versi sing beda). Sing paling populer yaiku GitHub. BitBucket lan GitLab uga cukup umum. Sistem kasebut mbantu sampeyan nyimpen lan njupuk kode, lan uga nindakake apa sing bisa ditindakake Git, mung ora liwat baris perintah, nanging liwat antarmuka. GitHub uga ngidini sampeyan mriksa kode lan menehi solusi kanggo masalah langsung ing situs kasebut. Ing kana sampeyan uga bisa nemokake proyek sumber terbuka wong liya lan nyoba menehi solusi dhewe kanggo nambah. Ateges, GitHub minangka jinis jaringan sosial kanggo pangembang. Dadi yen sampeyan durung nindakake, priksa manawa sampeyan nggawe akun ing GitHub lan dadi tuan rumah proyek sampeyan ing kana. Uga maca babagan GitLab lan BitBucket, lan yen sampeyan duwe wektu, sampeyan bisa nyoba, dheweke duwe versi gratis. Miturut cara, kabeh platform kasebut digabungake kanthi IDE modern. Jawa.  Rencana Tindakan - 2

2. JDK API

Bagean iki nyorot API JDK sing kudu dingerteni pangembang Jawa modern kanthi yakin. Iku ora bakal babras kanggo programmer kanggo ndeleng menyang kode sumber saka perpustakaan iki saka wektu kanggo wektu, navigasi, lan ngerti nalika padha kudu digunakake lan apa. Efek sisih: yen sampeyan wis ngerti API iki, sampeyan bakal duwe wektu luwih gampang kanggo ngrampungake wawancara.

Kerangka Koleksi Jawa

Java Collection Framework minangka salah sawijining API sing paling penting ing basa Jawa lan saben pangembang kudu ngerti. Iki minangka hierarki antarmuka lan implementasi struktur data standar ing Jawa kayata dhaptar, dhaptar sing disambung, set, tumpukan, antrian, tabel hash, lan liya-liyane. Pangembang kudu duwe pangerten sing apik babagan kelas ArrayList, HashMap, HashSet, LinkedHashSet, TreeSet lan liya-liyane, lan ngerti babagan properti kasebut. Utamane, sampeyan kudu ngerti biaya wektu lan memori koleksi tartamtu kanggo operasi standar (indeks, telusuran, sisipan, pambusakan) lan, adhedhasar iki, aplikasi kasebut kanthi bener ing proyek sampeyan. Koleksi ing Jawa ditindakake kanthi apik, nanging yen ana kabutuhan, pangembang bisa menehi implementasine dhewe. A programmer sing uga versed ing koleksi bisa ngluwihi utawa redefine logika ing kelas wis ditulis, utawa ngleksanakake kabeh saka ngeruk.

Java Concurrency API

Java wiwitane dirancang kanggo ndhukung program paralel, lan wiwit versi 5.0, basa kasebut kalebu API tingkat dhuwur kanggo benang paralel. Dadi pangembang Java sing kompeten mung kudu duwe pangerten sing apik babagan multithreading lan duwe pangerten babagan API utama saka paket java.util.concurrent.* . Paling ora, sampeyan kudu ngerti lan ngerti kanthi jelas apa Thread, Runnable, ngunci obyek lan sinkronisasi. Priksa manawa sampeyan ngerti konsep deadlock, livelock, kahanan balapan, lan apa sing kudu ditindakake. Kanggo yakin, sinau sinkronisasi saka java.util.concurrent.*, kayata Semaphore, CyclicBarrier, CountDownLatch, Phaser, Exchanger<V>, CompleteableFuture lan liya-liyane. Lan uga antarmuka Callable lan Future.

Java I/O API

Pangembang novice asring nglirwakake sinau sing jero babagan Java I/O lan Java Non-blocking I/O . Nanging muspra: API Java iki nggawe nggarap benang luwih gampang lan asring digunakake ing aplikasi nyata. Utamane kelas kaya File, InputStream, OutputStream, Reader lan Writer saka paket java.io, sing dadi inti saka Java IO API. Java Non-blocking I / O (java.nio) minangka kumpulan antarmuka program aplikasi sing dirancang kanggo ngleksanakake operasi I / O kanthi kinerja dhuwur. Iki kalebu, utamane, ByteBuffer, FileChannel lan Selector, antara liya. Njupuk alangan kanggo mangerteni API iki, sampeyan ora bakal Getun iku.

Obyek kelas piranti

Sawise sampeyan ngerti superclass Obyek, ing pangertèn sing dadi "native Java speaker", luwih ngerti struktur OOP lan akeh pangolahan. Kelas java.lang.Object dumunung ing ndhuwur hirarki kelas. Saliyane pangerten sing luwih apik babagan apa sing kedadeyan, ngerti metode kelas bakal nggawe wawancara luwih gampang-pewawancara mung seneng nguji calon karo kelas Obyek lan obyek.

3. Fitur anyar ing Jawa 8

Sanajan kasunyatane wektu wis liwati wiwit rilis Java 8, lan nganyari nomer liyane wis muncul, versi kaping wolu sing dadi apik. Iki ngenalake inovasi penting sing nyederhanakake, lan sawetara owah-owahan, pendekatan kanggo program ing Jawa. Sampeyan kudu ngerti carane nggunakake ekspresi lambda, uga Stream API ing Jawa 8 lan tanggal lan wektu API anyar.

4. SQL, database, JDBC

Sawetara pangembang Java ora nemoni pitakon lan database SQL ing karyane. Mulane, penting kanggo ngerti apa SQL lan database relasional, cara kerjane, lan bisa nulis pitakon prasaja kanggo nggabungake rong tabel. Kanggo latihan, sampeyan bisa nyoba nggarap salah sawijining DBMS, contone, PostgreSQL utawa MySQL . Iku uga becik kanggo entuk kawruh dhasar babagan basis data non-relasional, pendekatan noSQL lan akrab banget karo DBMS MongoDB sing berorientasi dokumen . Kanggo nggarap database ing Jawa murni, sampeyan bisa nggunakake standar JDBC bebarengan karo API saka jeneng sing padha. Iki dileksanakake minangka paket java.sql, sing kalebu ing JDK. Dina iki arang digunakake ing wangun murni, nanging asring bisa ditemokaké ing aplikasi support lawas, lan pribadi liyane modern lan umum ditampa asring adhedhasar standar iki.

5. Rangka

Antarane syarat kanggo Junior Java Developer saiki sampeyan bisa nemokake "kawruh Spring, Hibernate, Spring Boot". Sinau teknologi kasebut dhewe minangka tugas sing angel banget, nanging bisa uga, utamane ing tingkat sing entheng. Pangerten sing luwih jero bakal teka nalika sampeyan kerja. Dadi.

Spring Framework

Meh saben aplikasi sing dibangun ing Jawa saiki nggunakake Spring Framework. Kerangka kuat iki nyedhiyakake sistem koordinat tartamtu, balung mburi sing dibangun aplikasi kasebut. A aplikasi Spring luwih gampang kanggo nyoba lan njaga. Lan kabeh thanks kanggo injeksi ketergantungan.

Hibernate

Kerangka liyane sing paling penting kanggo pangembang Java yaiku Hibernate. Iki ngetrapake spesifikasi JPA (Java Persistence API), sing ngrampungake masalah pemetaan obyek-relasional (ORM). Umume aplikasi Java sesambungan karo database, lan yen kita ngomong babagan database relasional, nggarap tanpa Hibernate ora trep. Kerangka iki nyedhiyakake pangembang kanthi sawetara fitur penting, utamane, caching lan transaksi metu saka kothak, sing ngidini dheweke fokus usaha kanggo ngembangake logika aplikasi lan mbebasake programmer saka akeh tugas tingkat rendah nalika nggarap database relasional. . Iki kanthi signifikan nambah produktivitas pangembang.

Spring MVC

Kerangka iki njamin pangembangan aplikasi miturut pola Model - View - Controller, nggunakake komponen sing wis digabungake kanthi longgar. Sinau pola iki (pola desain dibahas ing ngisor iki) lan logika Spring MVC. Ing laku digunakake cukup asring.

Boot Spring

Kanthi katrampilan sing tepat, Spring nggampangake nggawe aplikasi Java. Sabanjure, Spring Boot nggampangake nggawe aplikasi Java adhedhasar Spring. Spring Boot ngijini sampeyan kanggo gampang nggawe aplikasi Enterprise Spring lengkap sing bisa dibukak karo minimal gaweyan: otomatis konfigurasi ngilangake paling saka alangan gadhah configuring aplikasi Spring.

6. Pustaka lan kerangka kanggo testing

Sawetara pangembang mbesuk yakin yen kode uji coba dudu masalahe, nanging wong khusus sing diarani penguji. Ing laku, iki ora cukup cilik. Testing, utamané testing unit (paling asring disebut testing unit), iku skill penting banget kanggo saben programmer. Kajaba iku, wong anyar sing lagi wae miwiti tugas asring ditugasake kanggo nutupi kode wong kanthi tes unit. Dadi, kita nyaranake sinau perpustakaan JUnit lan ngembangake kebiasaan nulis tes unit kanggo kode sampeyan. Priksa uga kerangka Mockito, sing bisa digunakake karo JUnit kanggo nggawe kelas dependensi mock.

7. Pustaka Layanan

Jawa nduweni perpustakaan layanan akeh banget sing mbantu ngrampungake meh kabeh masalah sing diadhepi pangembang. Ora mungkin sinau kabeh, lan ora ana titik tartamtu kanggo nindakake. Nanging navigasi liwat wong-wong mau minangka ide sing apik. Ing kene kita bakal nyorot sawetara sing asring digunakake ing praktik.

Pustaka kanggo logging

Kaping pisanan, kita bisa sebutno log4j lan Slf4j . Pustaka iki dirancang kanggo ndhelikake implementasine operasi logging rutin sing kedadeyan nalika aplikasi Java lagi mlaku.

Pustaka kanggo JSON

JSON, format kanggo nransfer informasi saka klien menyang server, minangka format sing paling umum digunakake saiki. Ana sawetara perpustakaan apik sing bisa digunakake karo JSON, sing paling populer yaiku Jackson lan google-gson .

Google Jambu

Guava minangka proyek kanthi perpustakaan inti Jawa sing dikembangake dening Google. Ing kene sampeyan bisa nemokake jinis koleksi anyar (multimap, multiset lan liya-liyane), koleksi sing ora bisa diganti, grafik, fungsional, utilitas kanggo paralelisme, I / O, hashing, pangolahan senar lan liya-liyane.

Apache Commons

Commons minangka proyek gedhe sing ngemot akeh utilitas Java sing migunani kanggo macem-macem tujuan. Dadi, perpustakaan Apache Commons ndasari Tomcat, Hibernate lan sawetara proyek gedhe liyane. Ana akeh perpustakaan ing Apache Commons. Ayo sebutno Commons IO, kang simplifies I / O operasi, Commons CSV kanggo nggarap file csv, Commons Math kanggo nggarap operasi lan petungan matematika lan statistik Komplek, Commons CLI kanggo nganalisa bantahan baris printah.

8. klien API

REST minangka gaya jeneng kanggo titik pungkasan kanggo ngakses sumber daya liwat jaringan ing format sing bisa diwaca manungsa. Iku luwih apik kanggo pangembang Jawa modern mangertos ideologi REST lan uga ngerti Spring RestTemplate , perpustakaan banget migunani kanggo nggawe klien REST.

9. Pola Desain

Yen pangembang pemula wis kenal karo pola desain, yaiku aturan tata krama ing program Jawa, lan malah ngerti carane ngetrapake ing praktik, dheweke bakal langsung nambah regane ing pasar tenaga kerja. Pamula asring ngremehake pola amarga arang nggawe aplikasi rumit nalika sinau. Nanging, yen pola ora ditrapake kanggo proyek serius, njaga lan adaptasi kode dadi tugas sing angel banget. Dadi aja kesed, sinau pola lan aplikasi ing proyek pribadi. Majikan mbesuk bakal ngucapke matur nuwun banget kanggo iki.

10. Kawruh tambahan

Algoritma lan struktur data

"Algoritma lan Struktur Data" minangka jeneng kabeh kursus sing diwulang ing universitas teknis. Iki nuduhake basis teoritis kanggo mbangun macem-macem struktur data. Lan ing kelas praktis, dheweke sinau nggarap - nglebokake lan njupuk data, nggoleki lan ngurutake. Bener, "Algoritma" ing frasa iki tegese ngurutake lan nggoleki. Sajrone pirang-pirang taun, para ilmuwan komputer wis ngembangake akeh algoritma. Sawetara iku pendidikan ing alam, amarga senadyan ease relatif saka implementasine, padha ora banget efektif ing operasi. Contone, padha bisa alon-alon, kang bisa katon ing pools data gedhe. Utawa padha nggunakake akèh memori. Algoritma liyane wis kabukten efektif banget. Dadi akeh supaya padha wis klebu ing perpustakaan resmi paling basa program. Mulane, dina iki ora perlu ngembangake algoritma kasebut kanthi mandiri. Iku cukup kanggo ngerti ngendi padha. Nanging, pangembang sing paling berpengalaman nyaranake supaya para pamula ngliwati "sekolah algoritma" -nerapake dhewe nalika sinau. Iki ngembangake pamikiran programer. Iku uga mbantu karo wawancara; padha seneng takon ngurutake lan nggoleki masalah.

Servlet

Servlet minangka cara kanggo nangani panjaluk pangguna. Dina iki ora digunakake ing endi wae lan ora mesthi, nanging bakal migunani kanggo entuk ide babagan dheweke.

HTML lan CSS

Saben uwong kudu ngerti dhasar tata letak. Kawruh iki cukup gampang dipikolehi, lan yen sampeyan durung rampung, gunakake sawetara dina kanggo pelajaran iki. Ing wektu sing padha, sampeyan bakal ngaso saka topik sing luwih rumit.

XML

Extensible Markup Language biyen ana ing ngendi-endi ing pangembangan Jawa. Iku mboko sithik diganti dening JSON, nanging XML isih digunakake dina. Ora angel sinau, mula sampeyan bisa menehi perhatian sethithik babagan basa iki.

JavaScript

Survei pangembang nuduhake yen malah wong-wong sing ora ana hubungane karo pembangunan ngarep-mburi nulis skrip ing JavaScript saka wektu kanggo wektu. Ngerti dhasar basa iki bisa dianggep minangka aturan sopan santun, mula aja nganti kesed, maca babagan iki lan nggawe naskah sepuluh utawa loro. Ora bakal keluwih.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION