Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Sidee Java uga duwan yahay luqadaha kale ee caanka ah? Maxay Java u noqon kartaa luqadda koowaad ee la barto? Aynu samayno qorshe kaa caawin doona inaad Java ka barato meel eber ah iyo adoo adeegsanaya xirfadaha barnaamijyada luuqadaha kale. Aynu taxno farqiga u dhexeeya abuurista code-soo-saarka Java iyo horumarinta luqadaha kale. Mikhail Zatepyakin ayaa warbixintan ka akhriyay kulanka ka qaybgalayaasha mustaqbalka layliyo Yandex iyo horumariyeyaasha kale ee bilowga ah - Kulanka Junior Java.


- Waad salaaman tihiin dhammaan, magacaygu waa Misha. Anigu waxaan ahay horumariye ka socda Yandex.Market, maantana waxaan kuu sheegi doonaa sababta loo barto Java iyo sida loo sameeyo si wax ku ool ah. Waxaa laga yaabaa inaad waydiiso su'aal macquul ah: maxaan uga sheekayn doonaa sheekadan, oo aan u sheegi doonin horumariye xooggan oo leh khibrad sannado badan? Xaqiiqdu waxay tahay in aan aniga qudhaydu bartay Java dhawaan, qiyaastii sannad iyo badh ka hor, sidaas darteed waxaan weli xusuustaa sidii ay ahayd iyo wixii godad ah ee jira.

Sanad ka hor waxaan ka helay internship Yandex.Market. Waxaan u horumariyay dhabarka dambe ee Beru, Suuqa laftiisa, malaha waad isticmaashay. Hadda waxaan sii wadaa inaan ka shaqeeyo halkaas, koox ka duwan. Waxaan u abuurnaa madal falanqayn ah Yandex.Market shuraakada ganacsiga.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Aan bilowno. Maxaad Java uga barataa aragti wax ku ool ah? Xaqiiqdu waxay tahay in Java uu yahay luuqad barnaamijeed aad caan u ah. Waxay leedahay bulsho aad u ballaaran.

Tusaale ahaan, waxaa jira tilmaanta TIOBE oo kale ah, oo ah tilmaame caan ah oo ku saabsan caannimada luuqadaha barnaamijyada, Java ayaa ugu horreeya halkaas. Sidoo kale, goobaha shaqada, waxaad u badan tahay inaad ogaan doonto in inta badan boosaska bannaan ay ku saabsan yihiin Java, taas oo ah, horumarinta Java, waxaad mar walba heli kartaa shaqo.

Maadaama ay bulshadu aad u badan tahay, su'aal kasta oo aad qabto waxay jawaab ka heli doontaa qaar ka mid ah qulqulka qulqulka ama goobaha kale. Sidoo kale, markaad ku horumarinayso Java, waxaad dhab ahaantii ku qoraysaa koodka JVM, si aad si fudud ugu beddeli karto Kotlin, Scala iyo luqadaha kale ee isticmaala JVM.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Maxaa u wanaagsan Java marka laga eego dhanka fikirka? Waxaa jira luuqado barnaamijyo kala duwan ah. Waxay xalliyaan dhibaatooyin kala duwan, waad ogtahay taas. Tusaale ahaan, Python waxay ku fiican tahay qorista qoraallada hal-line ah si loo xalliyo dhibaatooyinka degdega ah.

Dhinaca wanaagsan, waxaad si buuxda u xakameyn kartaa koodka la fulin karo. Tusaale ahaan, waxaan leenahay baabuur, Yandex baabuur darawal la'aan ah, koodkooda ayaa ku qoran pluses. Waa maxay sababtu? Java waxay leedahay wax noocaas ah - Qashin ururiyaha. Waxay ka nadiifisaa RAM walxaha aan loo baahnayn. Shaygani si kedis ah ayuu u bilaabmaa oo wuxuu joojiyaa-adduunka, taas oo ah, waxay joojinaysaa barnaamijka intiisa kale oo waxay tagaa inay tiriso walxaha, xusuusta cad ee walxaha. Haddii shay noocan oo kale ah uu ku shaqeeyo diyaarad aan duuliye lahayn, ma wanaagsana. Drone-kaagu si toos ah ayuu u wadan doonaa, wakhtigan xaadirka ah waxa uu nadiifin doonaa xasuustiisa oo haba yaraatee ma eegin wadada. Sidaa darteed, diyaaraddu waxay ku qoran tahay faa'iidooyinka.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Waa maxay dhibaatooyinka Java xalliyo? Ugu horrayn waa luqad lagu horumariyo barnaamijyo waaweyn oo la qoro sannado, daraasiin ama boqollaal qof. Gaar ahaan, wax badan oo ka mid ah dhabarka dambe ee Yandex.Market ayaa ku qoran Java. Waxaan leenahay koox loo qaybiyey dhowr magaalo, midkiiba toban qof. koodna waa sahlan tahay in la ilaaliyo, waxaa la taageerayay toban sano ama ka badan, isla markaana dad cusub ayaa soo galaya oo fahma xeerkan.

Sifooyinkee ayay tahay in afku yeesho si koodhka ku jira si fudud loo taageero oo si fudud loogu horumariyo kooxo waaweyn. Ugu horreyntii, waa inay noqotaa kood la akhriyi karo, waana inay sahlanaato in la hirgeliyo xalal naqshadeed oo adag. Taasi waa, waa in ay fududaato in la qoro abstractions heer sare ah, iwm. Dhammaan tani waa waxa Java na siinaya. Tani waa luuqad ku jihaysan shay. Runtii way fududahay in la hirgeliyo naqshado heer sare ah iyo naqshado isku dhafan.

Waxaa kaloo jira habab badan iyo maktabado loogu talagalay Java, sababtoo ah luqaddu waxay ka weyn tahay 15 sano. Inta lagu jiro wakhtigaas, wax kasta oo la qori karo ayaa lagu qoray, markaa waxaa jira maktabado badan oo wax kasta oo aad u baahan karto.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Waa maxay xirfadaha aasaasiga ah, fikradayda, waa in ciyaaryahan JA bilowga ah leeyahay? Marka hore, tani waa aqoonta luqadda asaasiga ah ee Java. Midda xigta waa nooc ka mid ah qaab-dhismeedka Ku-tiirsanaanta Ku-tiirsanaanta. Hadalka xiga, Kirill, ayaa si buuxda arrintan uga hadli doona. Aad u qoto dheer ma aadi doono. Ku xiga waa qaab-dhismeedka iyo qaababka naqshadeynta. Waxaan u baahanahay inaan awoodno inaan qorno kood qurux badan si aan u qorno codsiyo waaweyn. Oo kani waa nooc ka mid ah SQL ama ORM ee hawlaha la shaqaynta xogta. Waxayna tani wax badan khusaysaa dhabarka dambe.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Tag! Java xudunta u ah. Runtii Ameerika kuma heli doono halkan — waxaad u baahan tahay inaad luqadda lafteeda taqaan. Waxa ay tahay inaad fiiro gaar ah u yeelato. Ugu horrayn, Java waxa ay soo saartay noocyo badan sannadihii u dambeeyay, taas oo ah, 2014-2015 kii toddobaad ayaa la sii daayay, ka dibna siddeedaad, sagaalaad, tobnaad, noocyo badan oo cusub, iyo waxyaabo badan oo cusub oo cusub ayaa lagu soo bandhigay iyaga. , tusaale ahaan, Java Stream API , lambda, iwm. Aad u fiican, cusub, waxyaabo qabow oo loo isticmaalo code-soo-saarka, waxa ay ku weydiiyaan waraysiyada iyo kuwaas oo aad u baahan tahay inaad ogaato. Sidaa darteed, waa inaadan buug ka soo qaadan shelf ee maktabadda Java-4 oo aad tagtid barato. Kani waa qorshahayagii: waxaanu baranaynaa Java-8 ama ka sareeya.

Waxaan fiiro gaar ah u siineynaa hal-abuurka cusub sida Stream API, var, iwm. Waxaa la weydiiyaa inta lagu jiro wareysiyada waxaana si joogto ah loogu isticmaalaa wax soo saarka. Taasi waa, Stream API aad ayuu uga qabow yahay siddooyinka, guud ahaan, shay aad u fiican. Hubi inaad u fiirsato.

Oo waxaa jira dhammaan noocyada kala duwan ee wax sida soo noqnoqda, Ka reeban iyo wixii la mid ah. Waxyaalaha kuugu muuqda kuwo aan muhiim ahayn ilaa inta aad adigu qorto kood yar. Uma baahnid waxyaabahan ka reeban, yaa u baahan si kastaba? Laakiin waxaa hubaal ah in lagu waydiin doono waraysiyada, waxa hubaal ah inay waxtar kuu yeelan doonaan xagga wax soo saarka. Guud ahaan, waa inaad fiiro gaar ah u yeelataa Ka-reebitaanka, soo noqnoqoshada iyo waxyaabo kale.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Qaab dhismeedka xogta. Ma tagi kartid dhisme la'aan, laakiin way fiicnaan doontaa haddii aadan kaliya ogaanin inay jiraan qaybo, qaamuusyo, iyo xaashiyo. Iyo sidoo kale fulinta kala duwan ee dhismayaasha. Tusaale ahaan, isla qaamuuska Java waxa uu leeyahay hirgelin badan, oo ay ku jiraan HashMap iyo TreeMap. Waxay leeyihiin asymptotics kala duwan, waxay u qaabaysan yihiin si kala duwan gudaha. Waxaad u baahan tahay inaad ogaato sida ay u kala duwan yihiin iyo goorta la isticmaalayo.

Waxa kale oo ay noqon doontaa mid aad u fiican haddii aad ogtahay sida qaababka xogtani u shaqeeyaan gudaha. Taasi waa, ma fududa in la ogaado asymptotics-kooda - inta uu le'eg yahay sharadku, inta uu soconayo baasku, laakiin sida qaab-dhismeedku uga shaqeeyo gudaha - tusaale ahaan, waa maxay baaldi ku jira HashMap.

Waxa kale oo ay mudan tahay in fiiro gaar ah loo yeesho geedaha iyo garaafyada. Kuwani waa waxyaabo aan ku badnayn code-ka-soo-saarka, laakiin waxay caan ku yihiin wareysiyada. Sidaa darteed, waxaad u baahan tahay inaad awood u yeelatid inaad geedo ka gudubto, garaafyada ballac iyo qoto dheerba. Kuwani waa dhammaan algorithms fudud.

Isla markaad bilowdo inaad qorto kood kasta oo weyn, adag, adoo isticmaalaya maktabado, koodh dabaqado badan, waxaad ogaan doontaa inay kugu adag tahay adiga oo aan dhisin nidaamyo oo aad xalliso ku tiirsanaanta. Kuwaani waxay ugu horreeyaan Maven iyo Gradle. Waxay kuu oggolaanayaan inaad soo dejiso maktabadaha mashruucaaga hal sadar. Taasi waa, waxaad ku qortaa xml hal-line oo aad soo dejiso maktabadaha mashruuca. Nidaamyo waaweyn. Qiyaas ahaan waa isku mid, isticmaal midkood - Maven ama Gradle.

Xiga - nooc ka mid ah nidaamka xakamaynta version. Waxaan kula talinayaa Git sababtoo ah waa caan waxaana jira casharro badan. Ku dhawaad ​​qof kastaa wuxuu isticmaalaa Git, waa shay fiican, ma noolaan kartid la'aanteed.

Iyo nooc ka mid ah deegaanka horumarka. Waxaan ku talinayaa IntelliJ Idea. Waxay si aad ah u dedejisaa habka horumarinta, wax badan ayay ku caawisaa, waxay kuu qortaa dhammaan koodka kululeeyaha, guud ahaan, waa qabow.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Xidhiidhada bogga: SQLZOO, habrapost

SQL. Wax yar oo ku saabsan gadaal-joogayaasha. Dhab ahaantii waxaa jiray kiis qosol leh halkan. Laba maalmood ka hor waraysigaygii labaad ee internship, gabadh HR ah ayaa isoo wacday oo igu tidhi laba maalmood gudahood waxay i waydiin doonaan SQL iyo HTTP, waxaan u baahanahay inaan barto. Oo anigu waxba kama garanayn SQL ama HTTP. Oo waxaan helay goobtan wanaagsan - SQLZOO. Waxaan ku bartay SQL 12 saacadood gudahood, waxaan ula jeedaa, SQL syntax, sida loo qoro weydiimaha SELECT, JOIN, iwm. Bog aad u fiican, aad ayaan ugu talinayaa. Runtii, 12 saacadood gudahood waxaan ku bartay 90% waxa aan hadda ogahay.

Oo sidoo kale aad bay u fiican tahay in la ogaado qaab-dhismeedka xogta. Kuwani waa dhammaan noocyada furayaasha, tusmooyinka, caadiga ah. Waxaa jira qoraallo taxane ah oo arrintan ku saabsan Habré.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Java, marka lagu daro SQL, waxaa jira dhammaan noocyada hababka khariidad-xiriirka shayga sida JPA. Waxaa jira kood. Habka ugu horeeya waxaa ku jira qaar ka mid ah SQL code - Magaca id ka dooro info.users WHERE id IN userIds. Laga soo bilaabo xogta isticmaalayaasha, miiska, aqoonsigooda iyo magacyadooda ayaa laga helayaa.

Marka xigta, waxaa jira khariidad gaar ah oo shay ka soo jeeda saldhigga oo u beddela shay Java ah. Oo waxaa jira hab saddexaad oo ka hooseeya oo dhab ahaantii fulinaya xeerkan. Waxaas oo dhan waxaa lagu beddeli karaa iyadoo la isticmaalayo JPA hal xariiq, kaas oo hoos ku qoran. Waxay samaysaa wax la mid ah - hel All ByIdIn. Taasi waa, iyadoo lagu salaynayo magaca habka, waxay kuu soo saaraysaa su'aal SQL ah.

Wax aad u fiican. Aniga naftayda, markii aanan aqoon SQL, waxaan isticmaalay JPA. Guud ahaan, fiiro gaar ah u yeelo. Hadii aad ka caajisto inaad barato SQL, waa masiibo. Iyo, guud ahaan, dab!

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Guga Yaa maqlay wax la mid ah qaabka guga? Ma aragtaa inta idinka mid ah? Ma aha sabab la'aan. Gu'ga waxa lagu daraa shuruudaha java labaad kasta oo banaan. La'aanteed, dhab ahaantii ma jirto meel horumar weyn ah. Waa maxay Gu'ga? Marka hore, kani waa qaab-dhismeedka Ku-tiirsanaanta. Arintaan sidoo kale sheegi doonaa hadalka xiga. Laakiin marka la soo koobo, tani waa shay kuu ogolaanaya inaad fududayso inaad soo dejiso ku tiirsanaanta fasalada qaarkood kuwa kale. Taasi waa, aqoonta ku-tiirsanaanta waa la fududeeyay.

Spring Boot waa qayb ka mid ah gu'ga kaas oo kuu ogolaanaya inaad ku socodsiiso codsigaaga serverka hal badhan. Waxaad tagtaa THID, taabo dhowr badhan, oo hadda waxaad haysaa codsigaaga serverka oo ku socda localhost 8080. Taasi waa, weli ma aadan qorin hal xariiq oo kood ah, laakiin mar hore ayuu shaqaynayay. Wax aad u fiican. Haddaad wax adiga kuu gaar ah qorto, dab!

Gu'ga waa qaab-dhismeed aad u ballaaran. Kaliya maaha inay soo qaadato codsigaaga server-ka waxayna xallisaa Ku-tiirsanaanta Ku-tiirsanaanta. Waxay kuu ogolaaneysaa inaad sameyso waxyaabo farabadan, oo ay ku jiraan abuurista hababka REST API. Yacni, waxaad qortay hab oo aad ku lifaaqday sharraxaadda maabka Hel. Oo hadda waxaad horeyba u haysataa hab qaar ka mid ah localhost kaasoo kuu soo qoraya Hello world. Laba xariiq oo kood ah wuuna shaqeeyaa. Waxyaabo qabow.

Gu'ga sidoo kale wuxuu fududeeyaa imtixaanada qoraalka. Ma jirto hab aan la tijaabin horumarka ballaaran. Koodhka ayaa u baahan in la tijaabiyo. Ujeedadaas awgeed, Java waxay leedahay maktabad qabow JUnit 5. Iyo JUnit guud ahaan, laakiin nuqulkii ugu dambeeyay waa kan shanaad. Waxaa jira wax walba oo lagu tijaabiyo, dhammaan noocyada kala duwan ee sheegashooyinka iyo waxyaabo kale.

Oo waxaa jira qaab-dhismeedka Mockito cajiib ah. Bal qiyaas in aad leedahay hawlqabad aad rabto inaad tijaabiso. Shaqadu waxay qabataa waxyaabo badan, oo ay ku jiraan, meel dhexe, waxay gasho VKontakte aqoonsigaaga, tusaale ahaan, waxayna ka helaysaa aqoonsiga hore iyo magaca dambe ee isticmaalaha VKontakte. Waxaa laga yaabaa inaadan ku darin VKontakte imtixaanada, taasi waa yaab. Laakiin waxaad u baahan tahay inaad tijaabiso shaqeynta, markaa waxaad samaysay fasalkan, adoo isticmaalaya Mockito, mok, ku dayasho.

Waxaad odhan doontaa marka codsi u yimaad fasalkan oo wata aqoonsi caynkaas ah iyo wixii la mid ah, wuxuu soo celinayaa magaca dambe, tusaale ahaan, Vasya Pupkin. Wayna shaqayn doontaa. Taasi waa, waxaad tijaabin doontaa dhammaan shaqeynta mok hal fasal. Wax aad u fiican.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Isku xirka slide

Qaababka naqshadeynta. Waa maxay? Kuwani waa tusaalayaal lagu xallinayo dhibaatooyinka caadiga ah ee ka soo baxa horumarka. Horumarinta, dhibaatooyin isku mid ah ama kuwa la mid ah ayaa badanaa ka soo baxa kuwaas oo ay fiicnaan lahayd in si fiican loo xalliyo. Sidaa darteed, dadku waxay la yimaadeen hababka ugu wanaagsan, qaabab gaar ah, oo ku saabsan sida loo xalliyo dhibaatooyinkan.

Waxaa jira shabakad leh qaababka ugu caansan - refactoring.guru, waad akhrin kartaa, ogow qaababka ay jiraan, akhri aragtiyo farabadan. Dhibaatadu waa in ay tahay wax aan faa'iido lahayn. Dhab ahaantii, qaababka aan ku-dhaqanka lahayn si gaar ah faa'iido uma laha.

Waxaad maqli doontaa wax ku saabsan qaababka qaarkood sida Singletone ama Builder. Yaa maqlay erayadan? Dad badan. Waxaa jira qaabab fudud oo kale oo aad adigu hirgelin karto. Laakiin inta badan qaababka: istaraatiijiyad, warshad, facade - ma cadda halka lagu dabaqo.

Ilaa aad ku aragto ficil ahaan koodka qof kale meel lagu dabaqay qaabkan, ma awoodid inaad adigu isticmaasho. Sidaa darteed, ku-dhaqanku aad buu muhiim ugu yahay qaababka. Oo kaliya inaad iyaga ka akhrido refactoring.guru maaha mid waxtar leh, laakiin hubaal waa mudan tahay in la sameeyo.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Waa maxay sababta qaababka loogu baahan yahay? Aynu nidhaahno inaad haysato fasal Isticmaale gaar ah. Waxay leedahay Id iyo Magac. Isticmaale kastaa waa inuu haystaa aqoonsi iyo magac labadaba. bidix sare waa fasalka.

Waa maxay siyaabaha loo bilaabi karo Isticmaalaha? Waxaa jira laba ikhtiyaar - ama dhise ama dejiye. Waa maxay khasaaraha labada hab?

dhise Isticmaale cusub (7, "Bond"), okay. Hadda aynu nidhaahno ma lihin fasalka Isticmaalaha, laakiin mid kale, oo leh todoba qaybood oo tirooyin ah. Waxaad yeelan doontaa dhisme ka kooban todoba lambar oo isku xigta. Ma cadda waxa ay yihiin tirooyinkan iyo kuwa ay leeyihiin hantida. Naqshadeeyuhu ma fiicna.

Doorashada labaad waa dejiyaha. Waxaad si cad u qortaa: setId(7), setName("Bond"). Waad fahantay hantida ay leedahay goobtaas. Laakiin dejiyaha ayaa dhibaato leh. Marka hore, waxaa laga yaabaa inaad illowdo inaad wax u dhiibto, marka labaadna, shaygaagu wuxuu noqdaa mid la beddeli karo. Tani ma aha mid badbaado leh oo wax yar ayay yaraynaysaa akhrinta koodka. Taasi waa sababta ay dadku ula yimaadeen qaab qabow - Builder.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Maxay tani ku saabsan tahay? Aan isku dayno inaan isku darno faa'iidooyinka labada hab - dejiye iyo dhise - mid. Waxaan samaynaa shay gaar ah, Builder, kaas oo sidoo kale yeelan doona Id iyo Name fields, kaas oo laftiisa lagu dhisi doono iyada oo ku saleysan dejinta, kaas oo yeelan doona hab dhis oo kuu soo celinaya Isticmaale cusub oo leh dhammaan xuduudaha. Waxaan helnaa shay aan bedeli karin iyo dejiye. Qabow!

Waa maxay dhibaatooyinka? Halkan waxaan ku haynaa dhisaha caadiga ah. Dhibaatadu waxay tahay inaan wali ilaawi karno inaan hubinno meelaha qaarkood. Oo haddii aan illownay inaan booqanno aqoonsiga, kiiskan Builder waxaa loo bilaabay eber, sababtoo ah nooca int ma aha mid bura. Oo haddii aan samayno Magaca "Bond" oo aan illowno inaan booqano xafiiska aqoonsiga, waxaan yeelan doonaa Isticmaale cusub oo leh id "0" iyo magaca "Bond". Ma fiicna

Aan isku dayno inaan la dagaalano tan. Dhismaha waxaan u bedeli doonaa int si uu u noqdo mid aan waxba ka jirin. Hadda wax walba waa weyn yihiin.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Haddii aan isku dayno inaan abuurno isticmaale leh magaca "Bond", anagoo ilownayna inaan dhigno aqoonsigiisa, waxaan heli doonnaa ka reebid null pointer, sababtoo ah aqoonsiga ma aha mid bura, dhisuhuna wuxuu leeyahay wax aan jirin, gaar ahaan tilmaame ka reeban.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Laakin wali waan ilaawi karnaa inaan magac dhigno, sidaa darteed waxaan u dhignay ku celiska shayga mid aan waxba ka jirin. Hadda, marka aan ka dhisno shaygeena ka soo dhisaha, waxay hubisaa in goobta aan la baabi'in karin. Taasina kuma koobna.

Aynu eegno tusaalaha ugu dambeeya. Xaaladdan oo kale, haddii aan si uun u dhigno null wakhtiga ID-ga, way fiicnaan lahayd in isla markaaba la ogaado inaad samaysay oo ma fududa inaad khalad samaynayso hadda.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Waxaad u baahan tahay inaad qalad ku tuurto ma aha wakhtiga abuurista Isticmaalaha, laakiin markaad dejiso aqoonsiga. Sidaa darteed, Builder-ka waxaan u bedeli doonaa setter Integer ilaa int, oo isla markiiba wuxuu ku dhaaran doonaa inay tuureen waxba.

Marka la soo koobo waa maxay ujeedadu? Waxaa jira qaab dhise fudud, laakiin xitaa hirgelintiisu waxay leedahay wax-qabadyo yaryar, sidaas darteed aad ayey u fiican tahay in la eego hirgelinta qaababka kala duwan. Nidaam kastaa wuxuu leeyahay daraasiin fulineed. Dhammaan tani waa mid aad u xiiso badan.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Sideen ugu qornaa Builder code-ka wax-soo-saarka? Waa kan Isticmaaleheenna. Waxaan ku lifaaqnaa wareegtada wax-dhise ee maktabadda Lombok, iyada lafteedu waxay noo abuurtaa wax-dhise. Taasi waa, ma qorin wax kood ah, laakiin Java waxay horeyba u maleyneysaa in fasalkani uu leeyahay wax-dhise, waxaanan u wici karnaa sidan oo kale.

Waxaan horey u sheegay in Java ay leedahay maktabado ku dhawaad ​​​​wax walba, oo ay ku jiraan Lombok, maktabad qabow oo kuu ogolaaneysa inaad ka fogaato qorista kuleylka. Dhise, GET.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Nidaamyadu waxay noqon karaan qaab dhismeed - oo aan la xiriirin hal fasal oo keliya, laakiin nidaamka guud ahaan. Waxa jira mabda'a fiican ee qaabaynta nidaamka: Mabda'a Mas'uuliyadda Keliya. Muxuu ka hadlayaa? Xaqiiqda ah in fasal kastaa uu mas'uul ka yahay qaar ka mid ah shaqeyntiisa. Xaaladdan oo kale, waxaanu leenahay Controller la xidhiidha isticmaalaha, walxaha JSON. Waxa jira Facade, kaas oo walxaha JSON u beddela moodallo uu codsiga Java ku shaqayn doono. Waxaa jira adeeg leh caqli-gal adag oo la shaqeeya moodooyinkan. Waxa jira Shay Helitaanka Xogta oo moodooyinkan gelinaya kaydka xogta oo ka soo saarta kaydka xogta. Oo waxaa jira database laftiisa. Si kale haddii loo dhigo, dhammaan maaha hal fasal, laakiin waxaanu samaynaynaa shan fasal oo kala duwan, taasina waa qaab kale.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Mar haddii aad barato Java in ka badan ama ka yar, aad ayey u fiican tahay inaad qorto mashruucaaga kaas oo yeelan doona xog-ururin, la shaqayn doonta API-yada kale, oo u kashifaya codsigaaga server-ka macaamiisha REST API. Tani waxay noqon doontaa wax aad u fiican in lagu daro resumeygaaga, waxay noqon doontaa dhamaadka qabow ee waxbarashadaada. Taas waxaad ku tagi kartaa oo shaqo ku heli kartaa.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Waa kan tusaale codsigayga server-ka Sannadkii labaad, waxaan la qoray ragga. Waxay qori jireen codsi moobil ah oo loogu talagalay abaabulka dhacdooyinka. Halkaa, isticmaalayaashu waxay ka geli karaan VKontakte, waxay ku dhejin karaan khariidada, abuuraan dhacdooyin, ku martiqaadaan asxaabtooda iyaga, kaydiyaan sawirada dhacdooyinka, iwm.

Maxaan ka qabtay mashruuca? Ku qor arjiga serverka Guga Boot adoon isticmaalin SQL. Ma aqaanin isaga, waxaan isticmaalay JPA. Maxay qaban kartaa? Ka gal VK adoo adeegsanaya OAuth-2. Qaado calaamada isticmaalaha, u gal VK, hubi inuu yahay isticmaale dhab ah. Ka hel macluumaadka ku saabsan isticmaaleyaasha VKontakte. Waxay awooday inay ku kaydiso macluumaadka kaydka xogta, sidoo kale iyada oo loo sii marayo JPA. Si xirfadaysan u kaydi sawirada iyo faylalka kale ee ku jira xusuusta kombayutarka, oo ku keydi xiriirinta iyaga kaydinta xogta. Waqtigaas ma aanan ogeyn in ay jiraan walxo CLOB ah oo ku jira xogta, sidaas darteed waxaan u sameeyay habkan. Waxaa jiray API REST ee isticmaalayaasha, codsiyada macmiilka. Oo waxaa jiray imtixaanno unug oo loogu talagalay shaqeynta aasaasiga ah.

Tusaale yar oo ah barashada guushayda Java. Sannadkii ugu horreeyay ee jaamacadda, waxaa la i baray C # waxaana la i siiyay faham ku saabsan barnaamijka OOP - waa maxay fasallada, isdhexgalka, soo saarista, iyo sababta loogu baahan yahay. Aad bay ii caawisay. Taas la'aanteed, barashada Java aad bay u adag tahay; ma cadda sababta fasallada loogu baahan yahay.

Maxaad u barataa Java iyo sida loo sameeyo si hufan. Warbixinta Yandex

Sannadkii labaad ee jaamacadda, waxay mar kale bareen Java core, laakiin halkaas kuma aan joogsan, waxaan u aaday inaan barto Spring nafteyda oo aan qoray warqad kooras ah, mashruucayga, oo aan kor ku soo sheegay. Oo waxaas oo dhan, waxaan u aaday internship ee Yandex, gudbiyay wareysi, oo galay Yandex.Market. Halkaas waxaan ku qoray dhabarka dambe ee Beru, tani waa suuqayada, iyo Yandex.Market lafteeda.

Intaa ka dib, lix bilood ka hor, waxaan u wareegay koox kale oo isla Suuqa ah. Waxaan u samaynaa falanqaynta shuraakada ganacsiga. Waxaan ku jirnaa goobta falanqaynta, waxaa jira saddex naga mid ah dhabarka dambe, sidaas darteed waxaan ku leeyahay qayb aad u weyn oo saameyn ku leh mashruuca. Runtii aad ayay u xiiso badan tahay. Taasi waa, waxaanu dhab ahaantii ku siinnaa xogta suuqa - waxa iibku yahay, noocee, noocee, noocee, la-hawlgalayaasha ganacsiga, shirkado waaweyn oo caan ah. Oo waxaa jira saddex keliya oo naga mid ah, waxaan ku qornaa koodkan, waana mid aad u fiican.

Mahadsanid! Xiriirinta waxtarka leh:
- "Java 8. Hagaha bilowga".
- Qaab-dhismeedka Xogta.
- SQLZOO.
- Caadiyan Database.
- Qaababka Naqshadeynta.
- Qaababka Naqshadeynta.
- Nadiifinta Nadaafadda.
- Java wax ku ool ah.

Source: www.habr.com

Add a comment