I-E-Dobavki - inkonzo yewebhu yokukhangela izongezo zokutya kwiJava kunye ne-Spring Boot, ebhalwe ngabafundi bam

Intshayelelo

Kwenzekile ukuba kule minyaka mibini idlulileyo ndifundisa inkqubo kwesinye sezikolo ze-IT eKyiv. Ndaqalisa ukwenza oku Nje Ngokuzonwabisa. Ndakhe ndabhala iblogi yeprogram, emva koko ndayiyeka. Kodwa umnqweno wokuxelela abantu abanomdla izinto eziluncedo awukapheli.

Olona lwimi lwam yiJava. Ndabhala imidlalo yeefowuni eziphathwayo, isoftware yonxibelelwano lukanomathotholo, kunye neenkonzo ezahlukeneyo zewebhu kuyo. Kwaye ndifundisa iJava.

Apha ndifuna ukubalisa ibali loqeqesho lweqela lam lokugqibela. Bahamba njani ukusuka ekuqaliseni uqeqesho ukuya ekubhaleni inkonzo yewebhu esebenzayo. Inkonzo yewebhu eluncedo yokufumana izongezo zesondlo. Isimahla, akukho ntengiso, ubhaliso kunye neSMS.

Inkonzo ngokwayo ilapha - E-Dobavki.com.

I-E-Dobavki - inkonzo yewebhu yokukhangela izongezo zokutya kwiJava kunye ne-Spring Boot, ebhalwe ngabafundi bam

Le projekthi iyafundisa kwaye ayiqulathanga naziphi na iintengiso. Njengoko ndiqonda ukusuka olu papasho, unokubonelela ngamakhonkco kwiiprojekthi ezinjalo.

Ngaphambi kokuchaza iprojekthi ngokwayo, ndiza kukuxelela kancinci malunga nenkqubo yokufunda yeqela; ngaphandle koku, umfanekiso awuyi kuba ungaphelelanga.

Iinyanga ezili-9 zoqeqesho

Kwisikolo endifundisa kuso, ikhosi yeJava yahlulwe yangamacandelo ama-2. Iyonke, ikhosi ithatha malunga neenyanga ezili-9, kunye nazo zonke ikhefu (iholide zoNyaka oMtsha, ixesha lokubhala iiprojekthi eziphakathi).

Inxalenye yokuqala yazisa abafundi kwiikhonsepthi ezisisiseko zolwimi. Izinto eziguquguqukayo, iindlela, iziseko ze-OOP nazo zonke ezo zinto.

Inxalenye yesibini yekhosi ibonelela ukuba umfundi sele eqonda ngakumbi okanye engaphantsi indlela yokubhala kwiJava, kwaye unokunikwa "umdala" weteknoloji. Yonke iqala nge-SQL, emva koko i-JDBC, i-Hibernate. Emva koko HTTP, servlets. Okulandelayo yiNtwasahlobo, kancinci malunga negit kunye ne-maven. Kwaye abafundi babhala iiprojekthi zokugqibela.

Lonke uqeqesho lwahlulwe ngokweemodyuli. Ndandiqhuba iiklasi kabini ngeveki. Ubude besifundo esinye ziiyure ezimbini.

Indlela yam yokufunda

Ndikhulule amaqela ama-5. Kubonakala ngathi kuninzi iminyaka emibini, kodwa phantse ndihlala ndikhokela amaqela ama-2 ngokufanayo.

Ndizame iindlela ezahlukeneyo.

Inketho yokuqala kukuba isibini esinye sabelwe umboniso ngethiyori. Isibini sesibini sisenzo esisulungekileyo. Le ndlela ngandlela-thile yasebenza, kodwa ayizange isebenze kakhulu, ngokombono wam.

Inketho yesibini endize kuyo kwaye endisebenza kuyo ngoku ayikuko ukunikela isibini sonke kwithiyori. Kunoko, ndidibanisa amacandelo amafutshane eethiyori kwimizuzu emi-5-10, kwaye ngoko nangoko ndiwaqinise ngemizekelo ebonakalayo. Le ndlela isebenza ngcono.

Ukuba kukho ixesha elaneleyo, ndibizela abafundi kwindawo yam, ndibahlalise phantsi kwilaptop yam, kwaye benza imizekelo esebenzayo ngokwabo. Isebenza kakuhle, kodwa ngelishwa ithatha ixesha elininzi.

Asinguye wonke umntu ofikelela esiphelweni

Isityhilelo kum sisibakala sokuba ayiloqela lonke elifikelela esiphelweni sekhosi.

Ngokutsho kwam, isiqingatha sabafundi sibhala iprojekthi yokugqibela. Uninzi lwazo lukhutshwa ngexesha lenxalenye yokuqala yekhosi. Kwaye abo bafikelele kwinxalenye yesibini ngokuqhelekileyo abawi.

Bahamba ngezizathu ezahlukeneyo.

Eyokuqala kukuntsonkotha. Nokuba bathini na, iJava ayilolona lwimi lulula. Ukubhala nenkqubo elula, kufuneka uqonde ingcamango yeklasi, indlela. Kwaye ukuqonda ukuba kutheni kufuneka ubhale Isigxina sikawonke-wonke esingenanto (String[] arg) Kukho ezinye iikhonsepthi ezimbalwa ekufuneka uziqonde.

Thelekisa oku noTurbo Pascal, nto leyo abantu abaninzi abaqala ngayo, kuquka nam:

begin
    writeln("ΠŸΠ΅Ρ€Π²Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°");
end.

Ngokokwazi kwam, isikolo siya kuyicombulula le ngxaki ngokuzisa uvavanyo olongezelelweyo. Ngoku ayinguye wonke umntu onokufunda iJava. Oku kusekwinqanaba lokuqonda, kodwa inyathelo ngokucacileyo lelona lichanekileyo.

Kwaye isizathu sesibini sifana nomfanekiso ongezantsi:

I-E-Dobavki - inkonzo yewebhu yokukhangela izongezo zokutya kwiJava kunye ne-Spring Boot, ebhalwe ngabafundi bam

Abantu bahlala becinga ukuba inkqubo imalunga nokuchwetheza itekisi eninzi kunye nokufumana imali eninzi ngayo. Njengomkhupheli, imali eninzi kuphela.

Inyani yahlukile kancinci. Uninzi lwekhowudi yesiqhelo, iibhugi ezingabonakaliyo, inkqubo yokufunda rhoqo. Inika umdla, kodwa hayi wonke umntu.

Ezi zibalo. Ekuqaleni yandicaphukisa, ndacinga ukuba mhlawumbi ndenza into ephosakeleyo. Ngoku ndiyaqonda ukuba amanani-manani aphantse afane kwizifundo ezininzi. Ngoku andinaxhala ngayo, kodwa fundisa abo bantu banomdla kuyo.

Umbono wenkonzo

Emva kokuba abafundi begqibe ikhosi yonke, kwafika ixesha lokubhala iprojekthi yokugqibela. Kwakukho iingcamango ezahlukeneyo. Banikezela ngamashiti eToDo, iiprojekthi zolawulo lweeprojekthi, kunye nenye into.

Ndandifuna ukwenza into elula kodwa eluncedo. Umgaqo wam wawulula - ukuba mna nabahlobo bam singayisebenzisa. Inkonzo yewebhu yokukhangela izongezo zokutya ihlangabezane nezi mfuno.

Ingcamango ilula. Xa uthenga imveliso evenkileni, ubona uhlobo oluthile lwe-E-additive ekubunjweni. Akucaci kwikhowudi ukuba iyingozi kangakanani okanye ayikho (kwaye kukho nezongezo eziyingozi ezivaliweyo kumazwe amaninzi).

Uvula iwebhusayithi, faka igama loncediso (inombolo, elinye lamagama ahlukileyo), kwaye ufumane isishwankathelo sosongezo:

I-E-Dobavki - inkonzo yewebhu yokukhangela izongezo zokutya kwiJava kunye ne-Spring Boot, ebhalwe ngabafundi bam

Kukho iiprojekthi ezifanayo. Unokuchwetheza ngokulula isongezelelo kuGoogle, nangona ingasoloko ibonisa ulwazi ngokuchanekileyo.

Kodwa ekubeni le projekthi iyafundisa, ubunzima obungasentla abuzange basimise :)

Ukuphunyezwa

Wonke umntu wabhala kwiJava, ikhowudi yomthombo weprojekthi kwiGithub.

Sasiyi-7, kuquka nam. Wonke umntu wenza isicelo sokutsalwa, kwaye mna, okanye omnye umntu kwiqela, wasamkela esi sicelo sokutsalwa.

Ukuphunyezwa kweprojekthi kuthathe malunga nenyanga - ukusuka ekuvakaliseni umbono kurhulumente owubonayo ngoku.

Ukucazulula izongezo

Into yokuqala eyenziwa ngomnye wabafundi, ngaphandle kokuyilwa kwesiseko sesikhokelo esijikeleze isiseko sedatha (amaziko, iindawo zokugcina, njl.njl.), yayikukucazulula izongezo ezivela kwindawo ekhoyo yolwazi.

Oku kwakuyimfuneko ukuvavanya amanqaku aseleyo. Akukho khowudi yongezelelweyo efunekayo ukuze kufakwe isiseko sedatha. Emva kokwahlulahlula ngokukhawuleza izongezo ezininzi, sinokuqhubeka sivavanya i-UI, ukuhlela, kunye nokucoca.

I-Spring Boot ikuvumela ukuba wenze iiprofayili ezininzi. Iprofayile yifayile enezicwangciso.

Kwimeko-bume ye-dev, sasebenzisa iprofayili kunye ne-H2 DBMS yendawo kunye ne-HTTP port engagqibekanga (8080). Ngaloo ndlela, ngalo lonke ixesha isicelo sasungulwa, i-database yacinywa. Umchazi kweli tyala nguye owasisindisayo.

Khangela kunye nokucoca

Inqaku elibalulekileyo kukukhangela kunye nokucoca. Umntu okwivenkile kufuneka acofe ngokukhawuleza kwikhowudi yokongeza, okanye elinye lamagama, kwaye ufumane umphumo.

Ke ngoko, i-Additive entity ineenkalo ezininzi. Le yikhowudi eyongeziweyo, amanye amagama, inkcazo. Uphendlo lwenziwa kusetyenziswa Like kuzo zonke iindawo ngaxeshanye. Kwaye ukuba uyangena [123] okanye [i-amaranth], uya kufumana isiphumo esifanayo.

Senze konke oku ngokusekelwe kwiiNkcazo. Le yinxalenye yeNtwasahlobo ekuvumela ukuba uchaze iimeko zokukhangela ezisisiseko (njengentsimi ethile, umzekelo), uze udibanise le miqathango (OKANYE okanye KUNYE).

Emva kokuba ubhale iinkcukacha ezilishumi elinambini, unokubuza imibuzo entsokothileyo efana "nazo zonke izongezo eziyingozi zokufaka imibala ezinegama elithi [bomvu] kwinkcazo."

Ngokumalunga nokusebenza kunye nesiseko sedatha yaseSpring, ndiyifumana ilula kakhulu. Oku kuyinyani ngakumbi xa usebenza ngemibuzo enzima. Ndiyaqonda ukuba oku kunentloko yayo, kwaye umbuzo obhalwe ngesandla kunye nokulungiswa kweSQL uya kuqhuba ngokukhawuleza.

Kodwa ndiyabambelela kwinqanaba lokuba akukho mfuneko yokwandisa yonke into kwangaphambili. Uguqulelo lokuqala kufuneka luqale, lusebenze, kwaye luvumele ukutshintshwa kwamalungu ngamanye. Kwaye ukuba kukho umthwalo, la malungu kufuneka abhalwe ngokutsha.

ukhuseleko

Ilula. Kukho abasebenzisi abanendima ye-ADMIN - banokuhlela izongezo, bazicime, kwaye bongeze ezintsha.

Kwaye kukho abanye abasebenzisi (ababhalisiwe okanye ababhalisiweyo). Banokukhangela kuphela uluhlu lwezongezo kwaye bakhangele ezo bazifunayo.

Ukhuseleko lwaseNtwasahlobo lwalusetyenziselwa ukwahlula amalungelo. Idatha yomsebenzisi igcinwe kwisiseko sedatha.

Abasebenzisi bangabhalisa. Ngoku ayiniki nto. Ukuba abafundi bayaqhubeka nokuphuhlisa inkonzo kwaye bazise eminye imisebenzi eyenzelwe umntu, ubhaliso luya kuba luncedo.

Ukuphendula kunye neBootstrap

Inqaku elilandelayo kukuguquguquka. Kwimeko yenkonzo yethu (ubuncinci indlela esiyibone ngayo), uninzi lwabasebenzisi luya kuba neefowuni eziphathwayo. Kwaye kufuneka ujonge ngokukhawuleza isongezelelo kwifowuni yakho ephathekayo.

Ukuze singabandezeleki ngeCSS, sathatha iBootstrap. Ixabiso eliphantsi, elichwayitileyo, kwaye likhangeleka lindilisekile.

Andikwazi ukubiza ujongano olufanelekileyo. Iphepha eliphambili lincinci kakhulu, kwaye iphepha lenkcazo ecacileyo yesongezo limxinwa; kwiifowuni eziphathwayo kufuneka zenziwe banzi.

Ndingatsho nje ukuba ndizamile ukuphazamisa umsebenzi kancinci kangangoko. Le iseyiprojekthi yabafundi. Kwaye ke, abafana baya kuba nako ukulungisa loo mzuzu kamva.

Umzuzu woPhuculo lwe-SEO

Ekubeni ndibandakanyeke ngokusondeleyo kwiiwebhusayithi kunye nayo yonke into enxulumene ne-SEO iminyaka engaphezu kweminyaka emibini, andinakukhulula iprojekthi ngaphandle kokulungiswa kwe-SEO esisiseko.

Enyanisweni, ndenze isizukulwana sethemplate yeSihloko kunye neNkcazo kwi-add-on nganye. I-URL iphantse iCNC, nangona inokwenziwa mfutshane.

Ndongeze nezinto zokubala zokuya. Yongeza indawo kwiYandex Webmaster kunye neGoogle Search Console ukujonga izilumkiso ezivela kwiinjini zokukhangela.

Akwanelanga. Kufuneka udibanise i-robots.txt kunye ne-sitemap.xml ukuze ufumane isalathisi esipheleleyo. Kodwa kwakhona, le yiprojekthi yabafundi. Ndiza kubaxelela into ekufuneka yenziwe, kwaye ukuba bayafuna, baya kuyenza.

Kufuneka uqhoboshele isatifikethi se-SSL. I-Let's Encrypt yasimahla nayo iya kusebenza. Ndiyenzele le Spring Boot. Akunzima ukwenza, kwaye ukuthembela kwe-PS kwanda.

Yintoni elandelayo kwiprojekthi?

Emva koko, enyanisweni, ukhetho luxhomekeke kubafana. Umbono wokuqala weprojekthi ukwabandakanya isiseko sedatha yeemveliso ezinamakhonkco ezongezo.

Ngenisa "i-Snickers" kwaye ubone ukuba zeziphi izongezo zezondlo eziquletheyo.

Nangona ekuqaleni kweprojekthi, ndazi ukuba asiyi kuba nayo nayiphi na imveliso :) Ngoko ke, saqala kuphela ngezongezo.

Ngoku unokongeza iimveliso kwaye wazise ezongezelelweyo. iibhanti. Ukuba i-database ebanzi, kuya kubakho abasebenzisi.

Ukuhanjiswa

Iprojekthi isetyenziswe kwiVPS, i-Aruba Cloud. Le yeyona VPS inexabiso eliphantsi esinokuyifumana. Ndisebenzisa lo mnikezeli ngaphezu konyaka kwiiprojekthi zam, kwaye ndonwabile ngayo.

Iimpawu zeVPS: 1 GB RAM, 1 CPU (andiyazi malunga nokuphindaphinda), i-20 GB SSD. Kwiprojekthi yethu oku kwanele.

Iprojekthi yakhiwe kusetyenziswa iphakheji eqhelekileyo ye-mvn ecocekileyo. Isiphumo yingqayi enamafutha - ifayile ephunyezwayo enazo zonke izinto ezixhomekeke kuyo.

Ukwenza yonke le nto kancinci, ndibhale izikripthi ezimbalwa ze-bash.

Iscript sokuqala sisusa ifayile yejagi endala kwaye yakhe entsha.

Isikripthi sesibini siqalisa ingqayi edibeneyo, igqithise igama leprofayile efunekayo. Le profayile iqulethe ulwazi loqhagamshelwano lwesiseko sedatha.

DB -MySQL kwiVPS efanayo.

Iyonke iprojekthi yokuqalisa kwakhona ibandakanya:

  • ngena kwiVPS ngeSSH
  • khuphela utshintsho lwamva nje lwegit
  • sebenzisa i-local-jar.sh
  • bulala usetyenziso olusebenzayo
  • sebenzisa i-launch-production.sh

Le nkqubo ithatha imizuzu emithathu. Oku kubonakala ngathi lukhetho olukrelekrele kum kwiprojekthi encinci.

Ubunzima

Obona bunzima ekuyilweni kweprojekthi yayibubume bombutho.

Kukho iqela labantu ababonakala bekwazi ukwenza inkqubo, kodwa hayi kakhulu. Bayazi into ethile, kodwa abakakwazi ukuyisebenzisa ngokwenene. Kwaye ngoku kufuneka bagqibe iprojekthi kwinyanga enye.

Ndichonge inkokeli yeqela elinemiqathango kweli qela. Wagcina iGoogle Doc enoluhlu lwemisebenzi, imisebenzi esasazwayo, kunye nokulawula ukwamkelwa kwabo. Wazamkela nezicelo zokutsalwa.

Kwakhona ndacela abafundi ukuba babhale ingxelo emfutshane ngokuhlwa nganye ngomsebenzi abawenzileyo kulo msebenzi. Ukuba awuzange wenze nto, kulungile, bhala nje "akenzanga nto." Oku kukuziqhelanisa okuhle kwaye kukwenza ube nexesha elincinane. Ayinguye wonke umntu owulandeleyo lo mgaqo, ngelishwa.

Injongo yayo yonke le ntshukumo yayilula. Yenzani iqela, nokuba lixeshana nje elifutshane, ukuze nisebenze kunye.

Ndandifuna abafana bavakalelwe kukuba umsebenzi wabo ubalulekile. Qonda ukuba abayibhali ikhowudi engqukuva kwindawo engenanto. Kwaye le nto bayenzayo kunye yiprojekthi abantu abaya kuyisebenzisa.

Iveki yokuqala okanye ezimbini yayiyi-build-up. Amaqumrhu kunye nokuzinikela okuncinci kwenziwa ngobuvila. Kancinci kancinci ndabavuselela, kwaye umsebenzi waba mnandi ngakumbi. Unxibelelwano kwincoko luye lwaphila ngakumbi, abafundi banikezela ngezongezo zabo.

Ndiyakholelwa ukuba injongo iphunyeziwe. Iprojekthi iyenziwa, abafana bafumana amava amancinci abasebenza kwiqela. Kukho umphumo obonakalayo, obonakalayo onokuboniswa kubahlobo kunye nokuphuhliswa ngakumbi.

ezifunyanisiweyo

Ukufunda kunomdla.

Emva kweklasi nganye ndandibuya ndikhathazekile emoyeni. Ndizama ukwenza isibini ngasinye sibe sodwa kwaye sidlulise ulwazi oluninzi kangangoko.

Kubamnandi xa iqela endilifundisayo lifikelela kumagqibela kankqoyi. Kumnandi kakhulu xa abafana bebhala "Ndiwufumene umsebenzi, yonke into ilungile, enkosi." Nokuba ngumntwana omncinci, nokuba ayisiyiyo eyona mali inkulu ekuqaleni. Kodwa eyona nto ibalulekileyo kukuba bathabatha inyathelo eliya kwiminqweno yabo, baza baphumelela.

Nangona eli nqaku liye labonakala lilininzi kakhulu, ngokuqinisekileyo lalingenakukwazi ukugubungela zonke iingongoma. Ngoko ke, bhala imibuzo yakho kwizimvo.

umthombo: www.habr.com

Yongeza izimvo