- Mhoroi mose, zita rangu ndiMisha. Ini ndiri mugadziri kubva kuYandex.Market, uye nhasi ini ndichakuudza chikonzero nei kudzidza Java uye kuti ungazviita sei zvinobudirira. Unogona kubvunza mubvunzo une musoro: sei ndichange ndichitaura nyaya iyi, uye kwete imwe yakasimba mugadziri ane makore mazhinji echiitiko? Chokwadi ndechekuti ini pachangu ndakadzidza Java nguva pfupi yadarika, rinenge gore nehafu rapfuura, saka ndichiri kurangarira kuti yaive yakaita sei uye kuti ndeapi misungo iripo.
Gore rakapfuura ndakawana internship paYandex.Market. Ini ndakagadzira backend yeBeru, yeMusika pachayo, pamwe wakaishandisa. Iye zvino ndinoramba ndichishanda ikoko, muboka rakasiyana. Isu tinogadzira chikuva chekuongorora cheYandex.Market yevashandi vebhizinesi.
Ngatitangei. Sei uchidzidzira Java kubva pamaonero anoshanda? Icho chokwadi ndechekuti Java ndiyo ine mukurumbira dhizaini mutauro. Ine nharaunda yakakura kwazvo.
Isu tinoteerera zvakanyanya kune zvitsva zvakadai seStream API, var, etc. Vanobvunzwa panguva yekubvunzurudza uye vanogara vachishandiswa mukugadzira. Ndokunge, iyo Stream API inotonhorera zvakanyanya pane zvishwe, kazhinji, chinhu chinotonhorera. Iva nechokwadi chekuteerera.
Uye kune marudzi ese ezvinhu senge iterators, Exceptions uye zvichingodaro. Zvinhu zvinoita sezvisina kukosha kwauri chero iwe uchinyora imwe diki kodhi iwe pachako. Iwe haudi maExceptions aya, ndiani anoada zvakadaro? Asi ivo vanozonyatso kubvunzwa kubvunzurudzo, ivo vanozonyatso kukubatsira iwe mukugadzira. Kazhinji, iwe unofanirwa kuterera kune Exceptions, iterators uye zvimwe zvinhu.
Data zvimiro. Iwe haugone kuenda usina zvimiro, asi zvichave zvakanaka kana iwe usingangoziva kuti kune seti, maduramazwi, uye mapepa. Uyewo kushandiswa kwakasiyana kwezvivakwa. Semuenzaniso, iro duramazwi rimwe chete muJava rine zvakawanda zvekushandisa, kusanganisira HashMap uye TreeMap. Vane akasiyana asymptotics, ivo vakagadzirirwa zvakasiyana mukati. Iwe unofanirwa kuziva kuti dzakasiyana sei uye nguva yekushandisa ipi.
Izvo zvakare zvichanyanya kutonhorera kana iwe uchiziva mashandiro aya data zvimiro zvinoshanda mukati. Kureva kuti, hazvisi nyore kuziva asymptotics yavo - kuti bheti inoshanda sei, inguva yakareba sei iyo pass inoshanda, asi kuti chimiro chinoshanda sei mukati - semuenzaniso, chii bhaketi muHashMap.
Izvo zvakakodzerawo kubhadhara kune miti uye magirafu. Izvi zvinhu izvo zvisina kunyanya kuwanda mukodhi yekugadzira, asi zvinozivikanwa mubvunzurudzo. Saizvozvo, iwe unofanirwa kukwanisa kuyambuka miti, magirafu muhupamhi nekudzika. Aya ese ari nyore algorithms.
Spring Boot chidimbu cheChirimo chinokutendera kuti umhanye server yako application nebhatani rimwe. Iwe unoenda kuTHID, dzvanya akati wandei mabhatani, uye ikozvino une server yako application kumusoro uye inoshanda pane localhost 8080. Ndiko kuti, hausati wanyora mutsara mumwe chete wekodhi, asi iri kutoshanda. Chinhu chakanaka kwazvo. Kana iwe ukanyora chimwe chinhu chako pachako, moto!
Chitubu chimiro chikuru kwazvo. Haisi kungotora server yako application uye inogadzirisa Dependency Injection. Iyo inokutendera iwe kuita boka rezvinhu, kusanganisira kugadzira REST API nzira. Kureva kuti, iwe wakanyora imwe nzira uye wakanamatira Tora mepu chirevo pairi. Uye ikozvino watova neimwe nzira pane localhost inonyora Hello world kwauri. Mitsara miviri yekodhi uye inoshanda. Cool stuff.
Spring inoitawo kuti bvunzo dzekunyora dzive nyore. Hapana nzira pasina kuyedza mukukura kukuru. Kodhi inoda kuongororwa. Nechinangwa ichi, Java ine inotonhorera raibhurari JUnit 5. Uye JUnit kazhinji, asi yazvino vhezheni ndeyechishanu. Kune zvese zvekuyedzwa, marudzi ese ekusimbisa uye zvimwe zvinhu.
Uye kune inotyisa Mockito chimiro. Fungidzira kuti une mamwe maitiro aunoda kuedza. Iko kushanda kunoita zvinhu zvakawanda, kusanganisira, pane imwe nzvimbo pakati, inopinda muVKontakte neChitupa chako, semuenzaniso, uye inogamuchira zita rekutanga uye rekupedzisira remushandisi weVKontakte kubva kuID. Iwe unogona kunge usingasanganisi VKontakte mumiedzo, izvo zvinoshamisa. Asi iwe unofanirwa kuyedza mashandiro, saka wakagadzira kirasi iyi, uchishandisa Mockito, mok it, kuitevedzera.
Iwe uchati kana chikumbiro chikauya kukirasi iyi ine ID yakadaro uye yakadaro, inodzorera rimwe zita rekupedzisira, semuenzaniso, Vasya Pupkin. Uye zvichashanda. Ndokunge, iwe unoyedza ese mashandiro e mok one kirasi. Chinhu chakanaka kwazvo.
Kune webhusaiti ine anonyanya kufarirwa mapatani - refactoring.guru, unogona kuiverenga, tsvaga kuti ndeapi mapatani aripo, verenga boka redzidziso. Dambudziko nderekuti hazvibatsiri. Kutaura zvazviri, maitiro asina maitiro haasi kunyanya kubatsira.
Iwe uchanzwa nezve mamwe mapatani seSingletone kana Muvaki. Ndiani akanzwa mashoko aya? Vanhu vazhinji. Kune maitiro akareruka akadaro aunogona kuita iwe pachako. Asi mazhinji emapateni: zano, fekitori, facade - hazvina kujeka kwekushandisa.
Uye kusvikira iwe waona mukuita mune imwe kodhi yemumwe munhu nzvimbo iyo iyi patani inoshandiswa, haugone kuishandisa iwe pachako. Nokudaro, kudzidzira kunokosha zvikuru nemaitiro. Uye kungoverenga nezvavo pa refactoring.guru hakuna zvakunobatsira, asi zvine basa nazvo.
Sei mapatani achidiwa? Ngatitii une imwe Mushandisi kirasi. Ine Id uye Zita. Mumwe nemumwe Mushandisi anofanira kunge aine zvese Id uye Zita. Pamusoro kuruboshwe ikirasi.