Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Java e fapane jwang le dipuo tse ding tse tsebahalang? Ke hobane'ng ha Java e lokela ho ba puo ea pele ea ho ithuta? Ha re theheng moralo o tla o thusa ho ithuta Java ho tloha qalong le ka ho sebelisa tsebo ea ho etsa mananeo ka lipuo tse ling. Ha re thathamiseng phapang lipakeng tsa ho theha khoutu ea tlhahiso ho Java le ho nts'etsapele ka lipuo tse ling. Mikhail Zatepyakin o ile a bala tlaleho ena sebokeng sa barupeluoa ba nakong e tlang lithupelo Yandex le bahlahisi ba bang ba qalang - Kopano ea Java Junior.


- Lumelang bohle, lebitso la ka ke Misha. Ke moqapi oa Yandex.Market, 'me kajeno ke tla u bolella hore na ke hobane'ng ha u lokela ho ithuta Java le hore na u ka e etsa joang ka katleho. U ka botsa potso e utloahalang: hobaneng ke tla be ke pheta pale ee, eseng moqapi ea matla ea nang le boiphihlelo ba lilemo tse ngata? 'Nete ke hore le 'na ke ithutile Java haufinyane, hoo e ka bang selemo le halofo e fetileng, kahoo ke ntse ke hopola hore na e ne e le joang le hore na ho na le maraba afe.

Selemong se fetileng ke ile ka fumana internship ho Yandex.Market. Ke ntlafalitse backend bakeng sa Beru, bakeng sa Maraka ka boeona, mohlomong u e sebelisitse. Hona joale ke tsoela pele ho sebetsa moo, sehlopheng se fapaneng. Re theha sethala sa tlhahlobo bakeng sa Yandex.Market bakeng sa balekane ba khoebo.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Ha re qaleng. Ke hobane'ng ha u lokela ho ithuta Java ka tsela e sebetsang? 'Nete ke hore Java ke puo e tsebahalang haholo ea mananeo. E na le sechaba se seholo haholo.

Ka mohlala, ho na le letšoao le joalo la TIOBE, index e tummeng ea ho tsebahala ha lipuo tsa lenaneo, 'me Java e qala pele. Hape, libakeng tsa mesebetsi, mohlomong u tla hlokomela hore boholo ba likheo li mabapi le Java, ke hore, ka ho ntlafatsa Java, u ka fumana mosebetsi kamehla.

Kaha sechaba se seholo haholo, potso efe kapa efe eo u nang le eona u tla fumana karabo ho tse ling tsa Stack Overflow kapa libaka tse ling. Hape, ha u nts'etsapele Java, u ntse u ngola khoutu ho JVM, kahoo u ka fetohela ho Kotlin, Scala le lipuo tse ling tse sebelisang JVM.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Ke eng e ntle ka Java ho latela maikutlo a maikutlo? Ho na le lipuo tse fapaneng tsa mananeo. Ba rarolla mathata a fapaneng, ua tseba seo. Mohlala, Python e ntle bakeng sa ho ngola mongolo oa mola o le mong ho rarolla mathata a potlakileng.

Ka lehlakoreng le letle, o ka laola ka botlalo khoutu e sebetsang. Ka mohlala, re na le likoloi, likoloi tsa Yandex tse se nang mokhanni, khoutu ea tsona e ngotsoe ka li-pluses. Hobaneng? Java e na le ntho e joalo - Moqokelli oa Lithōle. E hlakola RAM ea lintho tse sa hlokahaleng. Ntho ena e qala ka boithaopo 'me e emisa-lefatše, ke hore, e emisa karolo e setseng ea lenaneo ebe e ea ho bala lintho, ho hopola lintho tse hlakileng. Haeba ntho e joalo e sebetsa ka drone, ha e monate. Drone ea hau e tla khanna e otlolohile, hajoale e hlakola mohopolo oa eona mme e se shebe tsela ho hang. Ka hona, drone e ngotsoe ho melemo.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Java e rarolla mathata afe? Haholo-holo ke puo ea ho etsa mananeo a maholo a ngotsoeng ka lilemo tse ngata, ke batho ba bangata kapa ba makholo. Ka ho khetheha, li-backend tse ngata tsa Yandex.Market li ngotsoe Java. Re na le sehlopha se ajoang metseng e mengata, batho ba leshome ho o mong le o mong. 'Me khoutu e bonolo ho e boloka, e tšehelitsoe ka lilemo tse leshome kapa ho feta,' me ka nako e ts'oanang batho ba bacha ba kena 'me ba utloisisa khoutu ena.

Ke litšobotsi life tseo puo e lokelang ho ba le tsona e le hore khoutu e ho eona e tšehetsoe habonolo le hore e ka ntlafatsoa habonolo ka lihlopha tse kholo. Pele ho tsohle, e lokela ho ba khoutu e baloang, 'me e lokela ho ba bonolo ho kenya ts'ebetsong litharollo tse rarahaneng tsa meralo. Ke hore, ho lokela ho ba bonolo ho ngola lintlha tsa maemo a holimo, joalo-joalo. Sena sohle ke seo Java e re fang sona. Ena ke puo e shebaneng le ntho e itseng. Ho bonolo haholo ho kenya ts'ebetsong lintlha tsa maemo a holimo le meaho e rarahaneng.

Ho boetse ho na le meralo le lilaebrari tse ngata tsa Java, hobane puo e feta lilemo tse 15. Nakong ena, ntho e 'ngoe le e' ngoe e neng e ka ngoloa e ne e ngotsoe ho eona, kahoo ho na le lithane tsa lilaebrari bakeng sa ntho e 'ngoe le e' ngoe eo u ka e hlokang.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Ke litsebo life tsa mantlha, ka maikutlo a ka, sebapali sa JA se lokelang ho ba le sona? Pele ho tsohle, sena ke tsebo ea puo ea mantlha ea Java. E latelang ke mofuta o mong oa moralo oa Injection ea Dependency. Sebui se latelang, Kirill, se tla bua ka sena ka botlalo. Nke ke ka teba haholo. E latelang ke mekhoa ea meralo le ea meralo. Re hloka ho tseba ho ngola khoutu e ntle ea meralo e le hore re ngole lits'ebetso tse kholo. 'Me ona ke mofuta oa SQL kapa ORM bakeng sa mesebetsi ea ho sebetsa le database. 'Me sena se sebetsa haholoanyane ho backend.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Tsamaea! Java core. Ha ke na ho fumana Amerika mona - o hloka ho tseba puo ka boeona. Seo u lokelang ho se ela hloko. Taba ea pele, Java e lokolotse liphetolelo tse ngata lilemong tsa morao tjena, ke hore, ka 2014-2015 ea bosupa e ile ea lokolloa, joale ea borobeli, ea borobong, ea leshome, ea liphetolelo tse ngata tse ncha, 'me ho ile ha hlahisoa lintho tse ngata tse pholileng ho tsona. , mohlala, Java Stream API , lambda, joalo-joalo Lintho tse pholileng haholo, tse ncha, tse pholileng tse sebelisoang ka khoutu ea tlhahiso, seo ba se botsang ka lipuisano le tseo u lokelang ho li tseba. Ka hona, ha ua lokela ho nka buka ho tloha shelefong ea laebrari ea Java-4 ebe u ea ithuta eona. Ona ke moralo oa rona: re ithuta Java-8 kapa ho feta.

Re ela hloko ka hloko mekhoa e mecha e kang Stream API, var, joalo-joalo Li botsoa nakong ea lipuisano 'me li sebelisoa kamehla tlhahiso. Ke hore, Stream API e pholile haholo ho feta loops, ka kakaretso, ntho e pholileng haholo. Etsa bonnete ba hore u ele hloko.

'Me ho na le mefuta eohle ea lintho tse kang li-iterators, Exceptions joalo-joalo. Lintho tse bonahalang li se bohlokoa ho uena ha feela u ngola khoutu e nyane ka bouena. Ha u hloke Mekhelo ena, ke mang ea e hlokang? Empa ka sebele li tla botsoa lipuisanong, ka sebele li tla u tsoela molemo tlhahisong. Ka kakaretso, o lokela ho ela hloko Mekhelo, li-iterators le lintho tse ling.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Mehaho ea data. U ke ke ua tsamaea ntle le meaho, empa ho tla ba monate haeba u sa tsebe feela hore ho na le lihlopha, lidikishinari le lishiti. Hape le ts'ebetsong e fapaneng ea meaho. Mohlala, bukantswe e le nngwe ho Java e na le dikeletso tse ngata, ho kenyeletswa HashMap le TreeMap. Li na le li-asymptotics tse fapaneng, li hlophisitsoe ka tsela e fapaneng ka hare. U hloka ho tseba hore na li fapane joang le hore na u ka sebelisa efe.

Hape ho tla ba monate haholo haeba u tseba hore na libopeho tsena tsa data li sebetsa joang ka hare. Ke hore, ha ho bonolo ho tseba li-asymptotics tsa bona - hore na bethe e sebetsa hakae, hore na pase e sebetsa nako e kae, empa hore na mohaho o sebetsa joang ka hare - ka mohlala, nkho ke efe ho HashMap.

Hape ke habohlokoa ho ela hloko lifate le li-graph. Tsena ke lintho tse sa tloaelehang haholo khoutu ea tlhahiso, empa li tumme lipuisanong. Ka hona, o hloka ho khona ho tšela lifate, li-graph ka bophara le botebo. Tsena kaofela ke li-algorithms tse bonolo.

Hang ha u qala ho ngola khoutu leha e le efe e kholo, e rarahaneng, e sebelisang lilaebrari, khoutu ea lihlopha tse ngata, u tla hlokomela hore ho thata ho uena ntle le mekhoa ea ho haha ​​​​le ho rarolla ho itšetleha. Tsena ke Maven le Gradle. Li u lumella ho kenya lilaebrari ho projeke ea hau ka mola o le mong. Ke hore, o ngola xml ea mola o le mong ebe o kenya lilaebrari ho projeke. Litsamaiso tse kholo. Li batla li tšoana, sebelisa e 'ngoe - Maven kapa Gradle.

E latelang - mofuta o mong oa sistimi ea taolo ea mofuta. Ke khothaletsa Git hobane e tumme ebile ho na le lithuto tse ngata. Hoo e batlang e le motho e mong le e mong o sebelisa Git, ke ntho e ntle, o ka se phele ntle le eona.

Le mofuta o mong oa tikoloho ea ntlafatso. Ke khothaletsa IntelliJ Idea. E potlakisa haholo ts'ebetso ea nts'etsopele, e u thusa haholo, e u ngolla khoutu eohle ea boilerplate bakeng sa hau, ka kakaretso, e pholile.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Lihokelo tse tsoang selaeteng: SQLZOO, habrapost

SQL. Hanyenyane ka batho ba khutlelang morao. Ho ne ho hlile ho na le taba e qabolang mona. Matsatsi a mabeli pele ho puisano ea ka ea bobeli ea koetliso, ngoanana oa HR o ile a mpitsa 'me a re ka mor'a matsatsi a mabeli ba tla mpotsa ka SQL le HTTP, ke hloka ho ithuta eona. 'Me ke ne ke sa tsebe letho ka SQL kapa HTTP. Mme ke fumane sebaka sena se setle - SQLZOO. Ke ithutile SQL ho eona ka lihora tsa 12, ke bolela, syntax ea SQL, mokhoa oa ho ngola KHETHA lipotso, JOIN, joalo-joalo Sebaka se pholileng haholo, ke se khothaletsa haholo. Ha e le hantle, ka lihora tsa 12 ke ithutile 90% ea seo ke se tsebang hona joale.

Hape ho monate ho tseba meralo ea database. Tsena ke mefuta eohle ea linotlolo, li-index, normalization. Ho na le letoto la litaba tse mabapi le sena ho Habré.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Java, ho phaella ho SQL, ho na le mefuta eohle ea mekhoa ea 'mapa ea Object-relational e kang JPA. Ho na le khoutu e itseng. Mokhoeng oa pele ho na le khoutu ea SQL - KHETHA lebitso la id HO TSOA info.users WHERE id IN userIds. Ho tsoa ho database ea basebelisi, tafoleng, li-ID tsa bona le mabitso a fumanoa.

Ka mor'a moo, ho na le 'mapa ea itseng ea fetolang ntho ho tloha botlaaseng ho ea ntho ea Java. 'Me ho na le mokhoa oa boraro ka tlase o hlileng o phethahatsang khoutu ena. Sena sohle se ka nkeloa sebaka ho sebelisoa JPA ka mola o le mong, o ngotsoeng ka tlase. E etsa ntho e tšoanang - fumana All ByIdIn. Ke hore, ho latela lebitso la mokhoa, e hlahisa potso ea SQL bakeng sa hau.

Ntho e ntle haholo. 'Na, ha ke ne ke sa tsebe SQL, ke ne ke sebelisa JPA. Ka kakaretso, ela hloko. Haeba u botsoa haholo ho ithuta SQL, ke koluoa. 'Me, ka kakaretso, mollo!

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Selemo. Ke mang ea utloileng ka ntho e kang moralo oa Selemo? O ya bona hore na le ba bakae ba lona? Eseng ntle le lebaka. Selemo se kenyellelitsoe litlhoko tsa sebaka se seng le se seng sa bobeli sa Java backend. Ntle le eona, ha ho moo ho hlileng ho leng teng tsoelo-peleng e kholo. Selemo ke eng? Pele ho tsohle, sena ke moralo oa Injection ea Dependency. Mabapi le sena hape tla bolela sebui se latelang. Empa ka bokhutšoane, sena ke ntho e u lumellang ho etsa hore ho be bonolo ho kenya litšepe tsa lihlopha tse ling ho tse ling. Ke hore, tsebo ea ho itšetleha e nolofalitsoe.

Spring Boot ke sengoathoana sa Selemo se u lumellang hore u tsamaise sesebelisoa sa hau sa seva ka konopo e le 'ngoe. U ea ho THID, tobetsa likonopo tse 'maloa,' me joale u na le sesebelisoa sa hau sa seva se ntseng se sebetsa ho localhost 8080. Ke hore, ha u so ngole mola o le mong oa khoutu, empa e se e ntse e sebetsa. Ntho e ntle haholo. Haeba u ngola ntho ea hau, chesa!

Selemo ke moralo o moholo haholo. Ha e nke kopo ea hau ea seva feela mme e rarolla Injection ea Dependency. E u lumella ho etsa lintho tse ngata, ho kenyelletsa le ho theha mekhoa ea REST API. Ka mantsoe a mang, u ngotse mokhoa o itseng 'me ua hokela tlhaloso ea Fumana 'mapa ho eona. 'Me joale u se u ntse u e-na le mokhoa o itseng ho localhost o u ngollang Hello world. Mela e 'meli ea khoutu mme e ea sebetsa. Lintho tse monate.

Selemo se boetse se nolofalletsa ho ngola liteko. Ha ho na mokhoa ntle le teko ho ntshetsopele e kholo. Khoutu e hloka ho lekoa. Bakeng sa morero ona, Java e na le laebrari e pholileng ea JUnit 5. Le JUnit ka kakaretso, empa phetolelo ea morao-rao ke ea bohlano. Ho na le ntho e 'ngoe le e' ngoe bakeng sa liteko, mefuta eohle ea lipolelo le lintho tse ling.

Mme ho na le moralo o makatsang oa Mockito. Nka hore u na le ts'ebetso e itseng eo u batlang ho e hlahloba. Ts'ebetso e etsa lintho tse ngata, ho kenyelletsa, kae-kae bohareng, e kena VKontakte ka ID ea hau, mohlala, 'me e amohela lebitso la pele le la ho qetela la mosebelisi oa VKontakte ho tsoa ho ID. Mohlomong u ke ke ua kenyelletsa VKontakte litekong, hoa makatsa. Empa o hloka ho lekola ts'ebetso, kahoo o entse sehlopha sena, ho sebelisa Mockito, mok, ho e etsisa.

U tla re ha kopo e fihla sehlopheng sena ka ID e joalo le joalo, e khutlisetsa lebitso la ho qetela, mohlala, Vasya Pupkin. 'Me e tla sebetsa. Ke hore, o tla leka ts'ebetso eohle ea mok sehlopha se le seng. Ntho e ntle haholo.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Khokahano ho tsoa selaeteng

Mekhoa ea moralo. Ke eng? Tsena ke litempele tsa ho rarolla mathata a tloaelehileng a hlahang nts'etsopele. Ho nts'etsopele, mathata a ts'oanang kapa a ts'oanang a hlaha hangata hoo e ka bang ntho e ntle ho rarolla ka tsela e itseng hantle. Ka hona, batho ba ile ba tla le mekhoa e metle, litempele tse itseng, mabapi le mokhoa oa ho rarolla mathata ana.

Ho na le sebaka sa marang-rang se nang le lipaterone tse tsebahalang haholo - refactoring.guru, u ka e bala, fumana hore na ho na le lipaterone life, bala letoto la likhopolo. Bothata ke hore ha e na thuso. Ha e le hantle, mekhoa e se nang boithuto ha e na thuso ka ho khetheha.

U tla utloa ka mekhoa e meng e kang Singletone kapa Builder. Ke mang ea utloileng mantsoe aa? Batho ba bangata. Ho na le mekhoa e bonolo joalo eo u ka e sebelisang u le mong. Empa boholo ba mekhoa: leano, fektheri, facade - ha e hlake hore na e ka e sebelisa hokae.

Mme ho fihlela o bona ts'ebetsong khoutu ea motho e mong sebaka seo paterone ena e sebelisoang ho eona, u ke ke ua khona ho e sebelisa ka bouena. Ka hona, boikoetliso bo bohlokoa haholo ka mekhoa. 'Me ho bala ka tsona ho refactoring.guru ha ho na thuso, empa ho bohlokoa ho etsa joalo.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Ke hobane'ng ha lipaterone li hlokahala? Ha re re u na le sehlopha se itseng sa Mosebelisi. E na le Id le Lebitso. Mosebelisi e mong le e mong o tlameha ho ba le Id le Lebitso. Ka holimo ka ho le letšehali ke phaposi ea ho rutela.

Mekhoa ea ho qala mosebelisi ke efe? Ho na le likhetho tse peli - ebang ke sehahi kapa setter. Mefokolo ea mekhoa e 'meli ke efe?

Moetsi oa thepa. Mosebelisi e mocha (7, "Bond"), ho lokile. Joale ha re re ha re na sehlopha sa Basebelisi, empa se seng, se nang le likarolo tse supileng tsa linomoro. U tla ba le sehahi se nang le linomoro tse supileng tse latellanang. Ha ho hlake hore na linomoro tsena ke life le hore na ke tsa thepa efe. Moqapi ha a moholo.

Khetho ea bobeli ke setter. U ngola ka ho hlaka: setId(7), setName("Bond"). Ua utloisisa hore na thepa ke ea tšimo efe. Empa setter e na le bothata. Taba ea pele, u ka lebala ho fana ka ntho e itseng, 'me ea bobeli, ntho ea hau e fetoha e ka fetohang. Sena ha se khoele e bolokehileng mme e fokotsa ho baloa ha khoutu hanyane. Ke kahoo batho ba ileng ba tla ka mokhoa o pholileng - Sehahi.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

See se bua ka eng? A re ke re leke ho kopanya melemo ea mekhoa e 'meli-setter le moetsi-ka e le' ngoe. Re etsa ntho e itseng, Sehahi, se tla boela se be le libaka tsa Id le Name, tseo ka boeona li tla hahoa ho itšetlehile ka setter, 'me e tla ba le mokhoa oa Haha o khutlisetsang Mosebelisi e mocha ka li-parameter tsohle. Re fumana ntho e sa fetoheng le setter. Ho pholile!

Mathata ke afe? Mona re na le Sehahi sa khale. Bothata ke hore re ntse re ka lebala ho hlahloba tšimo e itseng. 'Me haeba re lebetse ho etela ID, tabeng ena ho Builder e qalisoa ho ea ho zero, hobane mofuta oa int ha o khonehe. 'Me haeba re etsa Lebitso "Bond"' me re lebala ho etela ofisi ea ID, re tla ba le Mosebelisi e mocha ea nang le id "0" le lebitso "Bond". Ha ho pholile.

Ha re lekeng ho lwantsha taba ena. Ho Builder re tla fetola int ho int e le hore e ka ba lefeela. Hona joale tsohle li ntle.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Haeba re leka ho theha Mosebelisi ka lebitso "Bond", re lebala ho beha ID ea hae, re tla fumana mokhelo oa null pointer, hobane ID ha e na letho, 'me Sehahi se na le mokhelo, ka ho khetheha pointer.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Empa re ntse re ka lebala ho beha lebitso, kahoo re beha replay ea ntho e se nang letho. Hona joale, ha re haha ​​​​ntho ea rona ho tswa ho Builder, e hlahloba hore na tšimo ha e na letho. Mme ha se phetho.

A re shebeng mohlala oa ho qetela. Tabeng ena, haeba ka tsela e itseng re ka beha lefeela nakong ea ID, ho ka ba monate ho tseba hang-hang hore u e entse 'me ha ho monate hore ebe u etsa phoso hona joale.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

U hloka ho lahlela phoso eseng motsotsong oa ho theha mosebelisi, empa ha u seta ID. Ka hona, ho Builder re tla fetola setter Integer ho int, 'me hang-hang o tla hlapanya hore ba lahlile lefeela.

Ka bokhutšoanyane, ntlha ea bohlokoa ke efe? Ho na le mokhoa o bonolo oa Mohahi, empa esita le ts'ebetsong ea oona o na le lintlha tse poteletseng, kahoo ho pholile haholo ho sheba mekhoa e fapaneng ea ts'ebetsong ea mekhoa. Mokhoa o mong le o mong o na le ts'ebetsong e mengata. Sena sohle se khahla haholo.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Re ngola joang Sehahi ka khoutu ea tlhahiso? Mona ke Mosebelisi oa rona. Re hokela ho potoloha ha Sehahi ho tsoa laeboraring ea Lombok ho eona, 'me ka boeona e re hlahisetsa Sehahi. Ke hore, ha re ngole khoutu leha e le efe, empa Java e se e ntse e nahana hore sehlopha sena se na le Sehahi, 'me re ka se bitsa tjena.

Ke se ke boletse hore Java e na le lilaebrari bakeng sa hoo e batlang e le ntho e 'ngoe le e' ngoe, ho akarelletsa le Lombok, laebrari e pholileng e u lumellang ho qoba ho ngola li-boilerplate. Seakhi, FUMANA.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Mekhoa e ka ba ea meralo - ha e amane feela le sehlopha se le seng, empa le tsamaiso ka kakaretso. Ho na le molao-motheo o motle hakana moralong oa sistimi: Molao-motheo oa Boikarabello bo le Mong. O bua ka eng? Taba ea hore sehlopha ka seng se tlameha ho ikarabella bakeng sa ts'ebetso e 'ngoe ea sona. Tabeng ena, re na le Molaoli ea buisanang le basebelisi, lintho tsa JSON. Ho na le Facade, e fetolang lintho tsa JSON hore e be mehlala eo ts'ebeliso ea Java e tla sebetsa ka eona. Ho na le Tšebeletso e nang le logic e rarahaneng e sebetsang le mehlala ena. Ho na le Ntho ea ho Fumana Boitsebiso e kenyang mefuta ena polokelong ea boitsebiso le ho e fumana ho tswa ho database. Mme ho na le database ka boeona. Ka mantsoe a mang, ha se bohle sehlopheng se le seng, empa re etsa lihlopha tse hlano tse fapaneng, 'me ke mohlala o mong.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Ha u se u ithutile Java ho feta kapa hanyenyane, ho monate ho ngola morero oa hau o tla ba le database, sebetsa le li-API tse ling, 'me u pepese kopo ea hau ea seva ho bareki ba REST API. Ena e ka ba ntho e ntle ho eketsa tlhahiso ea hau, e tla ba qetello e pholileng ea thuto ea hau. Ka sena u ka ea fumana mosebetsi.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Mona ke mohlala oa ts'ebeliso ea seva ea ka. Selemong sa ka sa bobeli, ke ile ka ngola pampiri ea nako le bashanyana. Ba ne ba ngola app mobile bakeng sa ho hlophisa liketsahalo. Ha ba le moo, basebelisi ba ka kena ka VKontakte, ba beha lintlha 'mapeng, ba etsa liketsahalo, ba memela metsoalle ea bona, ba boloka litšoantšo tsa liketsahalo, joalo-joalo.

Ke entseng morerong oo? O ngotse sesebelisoa sa seva ho Spring Boot ntle le ho sebelisa SQL. Ke ne ke sa mo tsebe, ke ne ke sebelisa JPA. E ne e ka etsa’ng? Kena ho VK ka OAuth-2. Nka lets'oao la mosebelisi, e-ea VK le eona, hlahloba hore na ke mosebelisi oa 'nete. Fumana tlhahisoleseling mabapi le basebelisi ka VKontakte. E khonne ho boloka tlhaiso-leseling, hape ka JPA. Boloka linepe le lifaele tse ling mohopolong oa khomphutha ka boqhetseke, 'me u boloke lihokelo ho tsona polokelong ea boitsebiso. Ka nako eo ke ne ke sa tsebe hore ho na le lintho tsa CLOB polokelong ea litaba, kahoo ke ile ka e etsa ka tsela ena. Ho ne ho na le REST API bakeng sa basebelisi, lits'ebetso tsa bareki. 'Me ho bile le liteko tsa yuniti bakeng sa ts'ebetso ea mantlha.

[…] Mohlala o monyane oa ho ithuta ha ka Java ka katleho. Selemong sa ka sa pele univesithing, ke ile ka rutoa C# 'me ka fuoa kutloisiso ea lenaneo la OOP - hore na ke lihlopha life, li-interfaces, li-abstraction, le hore na ke hobane'ng ha li hlokahala. E nthusitse haholo. Ntle le sena, ho ithuta Java ho thata haholo; ha ho hlake hore na hobaneng litlelase li hlokahala.

Hobaneng u ithute Java le mokhoa oa ho e etsa ka katleho. Tlaleho ea Yandex

Selemong sa ka sa bobeli univesithing, ba ile ba boela ba ruta Java core, empa ha kea ka ka emisa moo, ke ile ka ea ho ithuta Spring ka boeena 'me ka ngola pampiri ea thupelo, morero oa ka, oo ke o boletseng ka holimo. 'Me ka sena sohle, ke ile ka ea internship ho Yandex, ka feta lipuisano,' me ka kena Yandex.Market. Ha ke le moo ke ngotse backend bakeng sa Beru, ena ke 'maraka oa rona, le bakeng sa Yandex.Market ka boeona.

Ka mor'a moo, likhoeling tse tšeletseng tse fetileng, ke ile ka fallela sehlopheng se seng ka har'a Maraka a tšoanang. Re etsa analytics bakeng sa balekane ba khoebo. Re sethaleng sa ho hlahloba, ho na le ba bararo ba rona ka morao, kahoo ke na le karolo e kholo haholo ea tšusumetso morerong. E khahla haholo, ka 'nete. Ke hore, ha e le hantle re fana ka lintlha tsa 'marakeng - hore na thekiso ke efe, ka mekhahlelo efe, ka mehlala efe, bakeng sa balekane ba khoebo, lik'hamphani tse kholo tse tsebahalang. 'Me re ba bararo feela, re ngola khoutu ena,' me e monate haholo.

Kea leboha! Lihokelo tse sebetsang:
- "Java 8. Tataiso ea ba qalang".
- Mehaho ea Boitsebiso.
- SQLZOO.
- Ho tloaeleha ha database.
- Meetso ea Moqapi.
- Mekhoa ea Moralo.
- Khoutu e Hloekileng.
- Java e sebetsang.

Source: www.habr.com

Eketsa ka tlhaloso