Pereiti prie pagrindinio turinio

Kaip pasiruošti Java SE 11 Oracle Certified Professional egzaminui?

Domina Java sertifikatas, bet nežinai nuo ko pradėti? Šis blog’o įrašas kaip tik tau! Jame pasidalinsiu 1Z0-819 (11-tos Java versijos) egzamino laikymo patirtimi, aptarsiu, kurie informacijos šaltiniai bei įrankiai labiausiai padeda pasiruošti ir ko galima tikėtis atėjus į egzaminą.

Kaip išlaikiau JAVA SE 11 sertifikatą

Trumpai apie mane: esu Rūta Jankauskaitė, Java programuotoja, šiuo metu dirbu Visma Roxit projekte, kuriame kartu su kolegomis iš Nyderlandų plėtojame bylų valdymo sistemą Rx.Enterprise.

Kam reikalingas sertifikatas?

Pradžiai reikėtų atsakyti į dažnam kylantį klausimą – o kam išvis to sertifikato reikia? Juk puikiai dirbasi ir be jo. Ir iš tikrųjų, nebūtina savo Curriculum Vitae turėti prisegto sertifikato, kad skaitytumeisi pilnaverčiu Java programuotoju. Bet būna netyčia užeini į kolegos LinkedIn profilį, o ten akį traukia prašmatniai spindintis sertifikato ženkliukas. Net pavydas ima. O kur dar pletkai virtuvėlėje, kad po sertifikato jam matai LinkedIn pašto dėžutė plyšta nuo „verbuotojų“ žinučių!

Vis dėlto, didžiausia sertifikato nauda yra ne elektroninis popierėlis, įrodantis, kad egzaminas išlaikytas, o tai, kad pasiruošimas egzaminui padeda užkamšyti galimas žinių spragas, pagerina kodo skaitymo ir kalbos pritaikymo įgūdžius.

Egzamino trukmė yra ribota, tad per duotą laiką reikia išanalizuoti nemenką kiekį kodo fragmentų ir sugebėti juose greitai rasti klaidas. Tikrinama ne tik ar programuotojas sugeba rasti sintaksės ar logines klaidas, bet ir tai, ar supranta, kur kodas parašytas ne pagal rekomenduojamas gerąsias praktikas.

Kiek naudos atneš egzaminas priklauso ir nuo laikančiojo kvalifikacijos lygio. Jaunesniesiems programuotojams egzaminas gali būti puikus būdas išmokti programavimo kalbą ir jos panaudojimo gerąsias praktikas. Aukštesnio lygio specialistams egzaminas gali būti paskata susipažinti su naujausios Java versijos subtilybėmis. Konkrečios versijos sertifikato gali prireikti ir darbinantis, bet tai yra daugiau išimtis nei taisyklė – Lietuvoje man yra tekę matyti tik vieną atvejį kai sertifikatas buvo vienas iš darbinimosi reikalavimų.

Egzamino formatas

Kaip gi atrodo pats egzaminas? Egzamino formatas – testiniai klausimai su pateiktais kodo fragmentais ir galimais atsakymo variantais. Atrodo per lengva? Taisom padėtį – dauguma klausimų turi kelis teisingus atsakymo variantus ir tam, kad klausimas būtų užskaitytas kaip atsakytas teisingai, turi būti pažymėti visi teisingi variantai. Kaip dabar? Jau sudėtingiau? Na, bent jau nereikia spėlioti, kiek tų variantų yra teisingi – visi klausimai nurodo kiek variantų reikia pažymėti.

1Z0-819 egzamine 50-čiai testinių klausimų išspręsti skiriama 90 minučių. Išlaikymo riba – 68%, vadinasi teisingai atsakyti reikia bent į 34 klausimus. O jų būna įvairių: rasti paleistos programos rezultatą, ištaisyti klaidas, išrinkti, kurie pateikti kodo fragmentai atspausdintų reikiamą rezultatą ar atrinkti, kurios komandos teisingai sukompiliuotų ir paleistų pateiktą programą. Beveik kiekviename klausime galima rasti 2 tokius pačius atsakymo variantus  – pirmas, kad programa nesikompiliuos ir antras, kad programa nutrauks darbą dėl įvykusios klaidos. Čia šiaip, kad laikantysis vis dėlto nepamirštų ir kabliataškių suskaičiuot.

Pasiruošimas

Apsisprendus laikyti egzaminą, pirmas žingsnis yra išsirinkti iš ko mokytis. Aš rekomenduoju Scott Selikoff ir Jeanne Boyarsky studijų vadovą. Nors knyga buvo išleista prieš sujungiant 1Z0-815 ir 1Z0-816 egzaminus į vieną, jos turinys vis dar puikiai tinka ruoštis 1Z0-819 egzaminui. Tiesa, egzamino temos ir tvarka gali keistis, dėl to prieš laikant rekomenduojama informaciją dar pasitikrinti Oracle oficialioje svetainėje. Vadovo autoriai savo puslapyje taip pat informuoja apie egzamino pasikeitimus bei įkelia papildomų nemokamų šaltinių temoms, kurios buvo įtrauktos į egzaminą po knygos išleidimo.

Kiek laiko gali užtrukti pasiruošimas, priklauso nuo turimos Java programavimo patirties. Jaunesniesiems programuotojams derėtų minėtą vadovą perskaityti nuo pradžios iki galo, nepraleidžiant progos pasileisti kiekviename knygos skyriuje pateiktas pavyzdines programas. Taip sakau todėl, kad egzaminas reikalauja didelį kiekį metodų mokėti atmintinai. Reikia įsidėmėti metodų pavadinimus, tiksliai žinoti, kiek argumentų, tam tikras, metodas priima, ką jis daro, kokias klaidas gali grąžinti. Egzamino sudarytojai sąžinės neturi, jie bando kuo gudriau apgauti, ir išradingumo jiems netrūksta. Tad ruoštis reikia kruopščiai, o toks ruošimasis gali užtrukti ir ne mėnesį ir ne du. 

Labiau patyrusiems programuotojams viskas paprasčiau – ilgiau programuojant su Java, dauguma metodų jau ir taip bus žinomi kaip juos rašančių rankų pirštai, tad paprasčiausiai reikėtų peržvelgti į egzaminą įtrauktas temas ir pasiskaityti apie dar nenaudotus ar rečiau naudotus API, kam gali užtekti savaitės ar dviejų.

Į kurias temas atkreipti dėmesį?

Egzaminas apima pakankamai daug temų, tačiau yra kelios svarbiausios, iš kurių visada reikia tikėtis daugiausiai klausimų. Kitos temos gali būti užkabintos tik vienu kitu klausimu. Taigi, į ką mokantis atkreipti dėmesį? Labiausiai yra tikrinamos objektiškai orientuoto programavimo (inheritance, overriding, overloading) žinios ir gebėjimas pritaikyti Javos suteikiamą funkcinio programavimo API (Stream, lambdas). Daug klausimų reikia tikėtis ir iš masyvų bei kolekcijų API. Keletas klausimų visada yra apie Java modulius. Labai svarbu mokėti kompiliuoti ir paleisti modulinę programą bei žinoti skirtumus tarp named, unnamed ir automatic modulių. Nors moduliai praktikoje naudojami rečiau, mokantis praleisti šios temos tikrai nereikėtų – pasiskaičius teoriją bei pasirašius bent vieną pavyzdinę modulinę programą tai bus vieni lengvesnių klausimų.

Mano patarimas yra neskubėti visų bandomųjų išspręsti per kelias dienas. Geriausia būtų pasilikti savaitę ar dvi iki egzamino ir spręsti ne daugiau nei vieną per dieną.

Bandomieji egzaminai

Deja, bet vien perskaitytos knygos neužtenka. Java API išmanymas yra tik pusė kelio išlaikyto egzamino link. Sekantis žingsnis yra išmokti laikyti egzaminą, ištreniruoti save taip, kad spėtum per duotą laiką atsakyti į klausimus ir dar liktų 10-15 minučių pasitikrinimui ar grįžimui prie praleistų klausimų. Tam reikia išsiugdyti nuojautą, kokio tipo klausimas kur bando pagauti, ir susikurti strategiją kaip kiekvieno tipo klausimą atsakyti kuo greičiau. Kaip tą padaryti? Šiuo atveju tavo geriausi draugai – bandomieji egzaminai.

Geresnių bandomųjų egzaminų nei Enthuware platformoje turbūt nerasi. Jie yra mokami, bet 9,99$ yra maža kaina, turint omeny, kad jų kokybė užtikrina egzamino išlaikymą iš pirmo karto. Už vienkartinį mokestį gauni priėjimą prie 19 unikalių bandomųjų egzaminų, kurių klausimai yra beveik identiški tikram egzaminui, o prie kiekvieno klausimo pateiktas ne tik jo atsakymas, bet ir išsamus paaiškinimas su nuorodomis į papildomus šaltinius. Jeigu paaiškinimo neužtenka, galima paprašyti pagalbos tam skirtoje jų forumo temoje.

Enthuware klausimai puikiai parodo, ko galima tikėtis egzamine: kokių klausimų formuluočių tikėtis, kokie atsakymo variantai pateikiami dažniausiai. Negana to, programos, kurioje laikomi bandomieji egzaminai, aplinka yra labai panaši į tikro Oracle egzamino laikymo aplinką, tad atėjus į egzaminą bus iš karto aišku, kur ką spausti, kaip peržiūrėti jau atsakytus ar praleistus klausimus, kas padės sutaupyti brangaus laiko.

Mano patarimas yra neskubėti visų bandomųjų išspręsti per kelias dienas. Geriausia būtų pasilikti savaitę ar dvi iki egzamino ir spręsti ne daugiau nei vieną per dieną. Išsprendus vieną, pasitikrinti visų klausimų atsakymus (nes įmanoma, kad klausimą atsakei teisingai netyčia, prie teisingo atsakymo priėjus klaidingu keliu) ir pasikartoti prasčiau išmanomas temas. Dėl egzamino gali jaustis tvirtai jei bandomieji egzaminai stabiliai išlaikomi surenkant 75-80%. 

Registruojamės!

Pasiruošus egzaminui, paskutinis žingsnis, žinoma, yra į jį užsiregistruoti, jei to dar nepadarei. Keli paskutiniai patarimai:

1. Nors egzaminą galima laikyti nuotoliniu būdu, mano patarimas yra – jei tik įmanoma rinktis laikyti egzaminavimo centre. Laikant nuotoliniu būdu, turi būti laikomasi griežtų taisyklių, laikantysis yra nuolat stebimas per vaizdo kamerą, ant stalo negali būti jokių juodraščių, o pernelyg ilgai nukreipus akis nuo ekrano duodamas įspėjimas, kad egzaminas gali būti nutrauktas. O kur dar galimi techniniai nesklandumai. Man laikyti nuotoliniu būdu neteko, tačiau forumuose galima rasti atsiliepimų, kad griežtos taisyklės kai kuriems kėlė įtampą ir turėjo įtakos egzamino rezultatui.

2. Jau yra galimybė registruotis į 17 Java versijos egzaminą 1Z0-829, todėl patarčiau jį ir laikyti. Studijų vadovas naujai versijai jau išleistas, o Enthuware komanda jau sudarinėja bandomuosius. Jei pradėjai ruoštis 11 versijai, nieko tokio, bent jau kol kas abiejų versijų egzaminai yra labai panašūs, tad tereikia šiek tiek papildomai pasiskaityti apie 17 versijos naujoves.

Čia ir užbaigsiu šį blog’o įrašą. Tikiuosi jame pateikta informacija buvo naudinga ir paskatino jei ne pasiryžti laikyti Java egzaminą, tai bent jau pamąstyti apie tokią galimybę ateityje. Sėkmės!

P.S., išlaikius egzaminą nepamiršk svarbiausio darbo – į savo LinkedIn profilį įsikelti savo sunkiai užsitarnauto ženkliuko!

Populiariausi blog'ai

  • ISTQB Certifiend Tester Foundation Level experience 2 -min

    Patirtis laikant For ISTQB Certified Tester Foundation Level 2018 sertifikatą

    Aš Ramūnas Norkus, jau beveik du metus Vismoje dirbu automatinio testavimo inžinieriumi „Inschool“ projekte. Kuris yra skirtas Norvergijos mokykloms ir, beje, yra didžiausias projektas Vismoje. Mano kasdienis darbas apima įvairias testavimo užduotis, susijusias su automatinių testų (frontend, performance, penetration) rašymu ir priežiūra bei rankiniu testavimu.

    Tad, tikriausiai nenustebsi, kad ir šis mano blog’as patirtį laikant vieną iš testavimo inžinieriaus sertifikatų. Įdomu? Skaityk toliau.

  • Kas yra blockchain, NFT, DeFi

    Blockchain technologija: veikimo principas, NFT, DeFi. I dalis

    Vismoje programuoju jau beveik dešimtmetį. Šiuo metu su PHP komanda dirbu Azets projekte – kuriame darbo užmokesčio, laiko ir dokumentų valdymo sistemą, o laisvalaikiu domiuosi blockchain technologija. Visai neseniai skaičiau pranešimą Vilniaus PHP user group’e, tad šiame blog’o įraše pasidalinsiu pagrindiniais pranešimo apie blockchain su PHP akcentais. Perskaitęs sužinosi, kas yra ir kur naudojama ši technologija, kas yra DeFi, NFT, tokenai ir t.t.

    Na, o greitai pasirodysiančioje antroje blog’o dalyje pasidalinsiu praktiniais naudojamo kodo pavyzdžiais pasitelkiant PHP biblioteką ir parodysiu bent vieną PHP demo projektą.