JavaRush /Java Blog /Random-TL /Ano ang mga uri ng mga gawain sa Java?

Ano ang mga uri ng mga gawain sa Java?

Nai-publish sa grupo
Kapag ang isang tao ay nagsimulang mag-aral ng programming sa kanyang sarili o sa mga online na kurso, napakahalaga na tukuyin ang "patlang ng aktibidad" at i-systematize ang lahat. Sa artikulong ito ipinakita namin ang gayong sistematisasyon - Mga gawain sa Java para sa mga nagsisimula, na nagpapahiwatig kung gaano ganap ang isang partikular na uri ay ipinakita sa online na kurso para sa pag-aaral ng programming JavaRush at mga kapaki-pakinabang na link. Ano ang mga uri ng mga gawain sa Java - 1

Mga problema sa syntax ng wika

Ang mga pangunahing kaalaman, ang pinakaunang mga gawain sa Java programming para sa mga nagsisimula - mula sa "Hello World" hanggang sa mga loop at array. Marami sa kanila sa JavaRush: lalo silang nakakonsentrar sa Java Syntax quest sa unang anim na antas. Hindi malamang na kailangan mong maghanap ng anumang karagdagang mga mapagkukunan upang ma-assimilate ang mga ito - mayroong sapat na mga ito dito. Bilang karagdagan, kapag nilulutas ang anumang mas kumplikadong mga problema, awtomatiko mong inuulit ang syntax. Ngunit kung bigla mong kailanganin ang mga ito, ang anumang libro ng problema sa Java para sa mga nagsisimula ay naglalaman ng mga katulad na pagsasanay. Hindi magkakaroon ng instant check, tulad ng sa JavaRush, sa mga librong may problemang ito.

Mga gawain sa pagkolekta

Ang mga koleksyon ay ang unang "seryosong" paksa na nakatagpo ng isang newbie programmer sa kanyang pag-aaral. Ang mga problema sa Java para sa mga nagsisimula, na nakatuon sa mga koleksyon, ay malawak ding kinakatawan sa JavaRush - sa ikapito at ikawalong antas ng Java Syntax quest. Dito maririnig ng mag-aaral ang tungkol sa Java Collections Framework sa unang pagkakataon, gagana sa mga interface ng Set, List at Map at ang ilan sa mga pagpapatupad nito. Gayunpaman, sa yugtong ito ay makikilala mo lamang ang kapaki-pakinabang na tool na ito at mga simpleng gawain sa Java. Ang isang mas masusing pag-aaral ng mga koleksyon ay magaganap sa panahon ng Java Collections quest . Nakikita mo kung gaano kahalaga ang bagay na ito, dahil ang isang buong quest ay ipinangalan dito!

Mga problema sa pagbubukod

Ang isang espesyal na mekanismo ay responsable para sa pagtatrabaho sa mga hindi normal na sitwasyon sa Java, na lubos na nagpapadali sa "catch" ng mga error sa mga programa. Ngunit upang ganap na magamit ito, kailangan mong maunawaan kung paano gumagana ang paghawak ng exception sa Java. Mayroong maraming mga ganoong gawain sa JavaRush, at matatagpuan pa nga ang mga ito sa unang Java Syntax quest.
Ano ang mga uri ng mga gawain sa Java - 2

Mga problema sa pag-type ng conversion

Siyempre, ang pangkat na ito ay maaaring maiuri bilang mga pangunahing gawain sa syntax. Gayunpaman, sa aming mapagpakumbabang opinyon, ang mga ganitong gawain ay madalas na minamaliit, at ang mga nagsisimula ay nagdadabog sa kanila. Samakatuwid, lumayo tayo sa mga template: pinag-aaralan natin ang mga gawain sa Java para sa mga nagsisimula sa paksang "Conversion ng mga primitive na uri" hindi sa simula, tulad ng madalas na ginagawa, ngunit ilang sandali - sa pagtatapos ng unang Java Syntax quest. At pagkatapos ay matututunan natin kung paano mag-cast ng mga hindi primitive na uri (mga bagay) sa pamamagitan ng pag-aaral ng OOP sa Java Core quest . Maraming mga ganoong gawain sa JavaRush; hindi mo kailangang maghanap ng anumang karagdagang.

Mga gawain para sa pag-unawa sa OOP

Ang OOP ay hindi ang pinakamahirap na paksa, ngunit ito ay lubhang mahalaga. Bilang karagdagan, naglalaman ito ng maraming mga subtlety na gustong gamitin ng mga tagapanayam upang mahuli ang mga hinaharap na "junior." Ang kursong JavaRush ay naglalaman ng mga praktikal na problema sa programming para sa mga nagsisimula na tutulong sa iyo na maunawaan ang object-oriented na diskarte. Gayunpaman, upang tunay na maunawaan ang OOP, inirerekomenda namin ang pagbabasa ng literatura sa paksa (halimbawa, Kay Horstmann, Gary Cornell's Professional's Library, McLaughlin's Object-Oriented Analysis and Design, o iba pang mga libro ).

Mga gawain sa I/O thread

Nagsisimula kaming gumamit ng mga stream ng I/O bago pa namin maunawaan ang mga ito - ito ay Java, baby, at nagpapaliwanag sa System.out, at, bukod pa rito, System.in sa isang berdeng baguhan, ay mahirap, at hindi kinakailangan sa unang yugto. Ngunit sa panahon ng Java Core quest , sapat lang ang kaalaman upang maunawaan ang medyo nakakalito na paksang ito, at pinag-uusapan natin hindi lamang ang tungkol sa console input/output, kundi pati na rin sa pagtatrabaho sa file system. Ang pangunahing bagay ay hindi laktawan ang mga gawaing ito (marami sa kanila sa JavaRush), at patuloy na maunawaan ang teorya.

Mga palaisipan

Ang ibig sabihin ng "mga palaisipan" ay ang mga gawain na mas kumplikado na nangangailangan ng hindi gaanong kaalaman kundi ang kakayahang ilapat ito sa isang hindi karaniwang paraan. Ang mga ito ay karaniwang mga gawain para sa Java Junior - ang mga ito ay napakapopular sa mga panayam, ngunit sa totoong trabaho, ang mga palaisipan sa ganitong kahulugan ay hindi pangkaraniwan. Iyon ang dahilan kung bakit mayroon sila sa JavaRush, ngunit hindi masyadong marami (karaniwan ay sa mga klase ni Captain Bobrov).
Ano ang mga uri ng mga gawain sa Java - 3
Saan ka makakahanap ng mga puzzle:

Algorithm at istruktura ng data

Mayroong patuloy na mga debate tungkol sa mga algorithm at istruktura ng data tungkol sa kung gaano sila kailangan ng isang programmer sa hinaharap. Muli nating sasagutin: para sa pag-unlad ng pag-iisip - kailangan sila, direkta para sa trabaho - bihira. Dahil para sa Java, at iba pang mga wika, ang mga aklatan ay naisulat na kasama ang mga pagpapatupad ng lahat ng kilalang pag-uuri, paghahanap at iba pang mga algorithm. Gayunpaman, ang paglikha ng iyong sariling mga pagpapatupad ng mga algorithm ay lubhang kapaki-pakinabang, tulad ng pagbuo ng isang pag-unawa sa kanilang pagiging kumplikado. Lalo na sa mga taong nag-aral lamang ng matematika sa paaralan. Sa prinsipyo, ang mga gawaing ito ay pinagsasama-sama ng mga palaisipan, ang pagkakaiba lamang ay ang lahat ng ito ay inilalarawan at nalutas sa online nang maraming beses. Hindi mo na kailangan ng validator para sa pag-verify. Pumili ng anumang kurso, halimbawa, Princeton University , ang kanilang mga kasamahan mula sa California o Stepic . Sa pamamagitan ng paraan, sa kursong CS50 , ang pagsasalin kung saan inilagay namin sa JavaRush, maraming mahahalagang algorithm at istruktura ng data ang tinalakay. Lubos naming inirerekomenda ang panonood ng mga video ng mga antas 2-5 at pagpapatupad ng mga gawain sa Java. Mga problema sa graph: Mga gawain sa istruktura ng data:

Multithreading

Sinuman ay maaaring magsulat ng isang programa na nagpi-print ng "Hello World"... Paano ang tungkol sa paggamit ng Java Thread API upang ang sikat na parirala ay naka-print mula sa isang karagdagang thread? At para mag-print ito ng "Hello world" ng limang beses mula sa limang magkakaibang thread, at para hindi magpalit-palit ang mga linya?.. Ang multithreading ay isang tunay na "strength test" habang nag-aaral ng Java Core. Ang isang buong paghahanap sa JavaRush ay nakatuon sa napakahirap na paksang ito, na tinatawag na Java Multithreading , at naglalaman ito ng malaking bilang ng mga gawain upang maramdaman ng mag-aaral ang "sakit at kagandahan" ng magkakatulad na mga proseso. Mas madalas kaysa sa hindi, ang mga unang "tunay" na proyekto ng mga mag-aaral ay nagsasangkot ng multithreading sa mas malaki o mas maliit na lawak. Halimbawa, mga simpleng laro.
Ano ang mga uri ng mga gawain sa Java - 4

Multithreading na gawain

Limang tahimik na pilosopo ang nakaupo sa isang round table. Sa harap ng bawat isa sa kanila ay isang plato ng spaghetti. Ang mga tinidor ay nakahiga sa mesa sa kaliwa at kanan ng bawat pilosopo (sa pagitan nila). Ang isang pilosopo ay maaaring kumain o mag-isip. Bukod dito, makakakain lang siya kung may hawak siyang dalawang tinidor - isa ay dadalhin sa kanan at kaliwa niya. Ang "Pumulot ng tinidor" at "ibaba ang isang tinidor" ay magkahiwalay na pagkilos na isinasagawa nang sunud-sunod.

Mga Gawain sa Generics

Ang paglalahat ay ang pinakadiwa ng automation, iyon ay, sa isang kahulugan, programming. Kaya ang paksa ng generalizations o generics sa Java ay hindi rin dapat balewalain. Ang JavaRush ay may mga pangkalahatang gawain sa programming (karamihan ay nasa Java Collections quest, simula sa antas 5). Kung saan makakahanap ka ng mga kapaki-pakinabang na pagsasanay at materyales sa generics:

Mga Gawain sa Design Pattern

Sa ilang yugto (humigit-kumulang 2/3 ng kursong JavaRush), ang isang baguhang programmer ay kailangang magsimulang tumingin nang mabuti sa mga alituntunin ng mabuting asal sa programming. Pinag-uusapan natin ang tamang pag-format ng code (na mas madali) at mga pattern ng disenyo (na mas mahirap). Ang JavaRush ay may ganitong mga gawain. Kinakailangan ang mga karagdagang - maaari silang matagpuan, halimbawa, sa aklat (bahagi 4) " Java. Mga pamamaraan ng programming » Blinov at Romanchik. O mag-isip tungkol sa kung paano mo mailalagay ang mga nalutas na problema sa isang template.

Pagsubok sa yunit

Ang isang mahalagang kasanayan ng sinumang programmer, na kadalasang nagkakamali na eksklusibong iniuugnay sa mga tagasubok, ay ang pagsulat ng mga pagsubok sa unit (o Yunit) para sa iyong sariling code. Ang JavaRush ay may ilang mga gawain sa Unit Test, ngunit talagang hindi ka dapat mag-abala sa paghahanap ng mga bago. Sa sandaling malaman mo kung paano magsulat ng mga pagsusulit, buuin ang ugali ng pagsakop sa iyong code (sa sarili mong mga proyekto, sa mga gawaing pang-edukasyon) gamit ang mga Unit test. Ito ay mas kapaki-pakinabang kaysa sa paggawa ng mga tseke gamit ang console output, na kung saan ay madalas na magdusa ang mga programmer ng mag-aaral. Bilang karagdagan, kadalasan ang unang bagay na ipinagkatiwala ng mga kumpanya sa "mga junior" na gawin ay ang pagsusulat ng mga Unit test para sa code ng ibang tao.

Mga problema sa regular na pagpapahayag

Ito ay isang simpleng paksa na halos wala sa mga nagsisimula na maunawaan, dahil ito ay hindi pangkaraniwan at katamaran. Sa katunayan, ito ay nagkakahalaga ng paggugol ng ilang araw sa pag-aaral ng paksa, pag-unawa sa "mga regular" at pagkakaroon ng kalamangan sa mga hindi nakagawa nito. Kapaki-pakinabang din ito dahil halos independyente sila sa programming language: alamin ito nang isang beses, magagamit mo ito kahit saan. Walang mga problema sa JavaRush na tumutuon sa mga regular na expression, kahit na ang ilan ay maaaring malutas gamit ang mga ito. Kaya narito ang ilang karagdagang mapagkukunan para sa pag-unawa sa paksa:
Ano ang mga uri ng mga gawain sa Java - 5

Mga problema sa Java sa isang trick

Kasama sa kategoryang ito ang mga nakakalito na gawain na kadalasan ay hindi direktang nauugnay sa tunay na gawain ng programmer. Pangunahing nakakaharap ang mga ito sa panahon ng mga panayam; ginagamit ang mga ito upang maunawaan ang lalim ng pag-unawa/kaalaman ng isang partikular na teknolohiya ng isang kandidato o upang subukan ang kanyang pagkaasikaso. Kung kailangan mo ng mga problemang tulad nito, Google "Java Interview Problems" o isang katulad nito. Malamang, makakahanap ka ng maraming mga koleksyon, pati na rin ang mga tanong at sagot sa iba't ibang mga forum. Ang mga ito ay kapaki-pakinabang upang maunawaan, ngunit sulit ba ang paggastos ng masyadong maraming oras? Minsan nang nagsalita si Kay Horstmann tungkol sa mga ganitong problema sa kanyang artikulo para sa InformIT, ang pagsasalin na inilathala namin noong Enero. Upang maikli ang kanyang pag-iisip, may mga gawain sa totoong mundo, at mayroong isang parallel na uniberso - "Mga Problema sa Panayam."

Mga problema sa ekspresyon ng Lambda

Ang suporta para sa mga expression ng lambda ay lumitaw sa Java 8, ngunit hindi pa rin lahat ng programmer ay handang gamitin ang mga ito. Gayunpaman, ngayon ang konsepto ng "mga gawain para sa Java Junior" ay kinabibilangan ng mga manipulasyon sa mga expression ng lambda, kaya't inirerekumenda namin na pamilyar ka sa mga ito, halimbawa, mula sa napaka-accessible na artikulong " Sikat tungkol sa mga expression ng lambda sa Java. May mga halimbawa at gawain ."

Mga gawain sa networking

Serialization sa JSON, RMI, HttpUrlConnection, socket... hindi ito eksaktong mga gawain sa pagprograma ng baguhan. Nangangailangan sila ng matatag na kaalaman at isang uri ng tulay sa kanilang sariling mga proyekto, internship at trabaho. Sa mga senior level ng JavaRush (Java Collections quest), maraming pagsasanay para sa pag-master ng mga teknolohiya at diskarte na ito, ngunit magiging mas malinaw ang lahat sa online internship.
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION