Interface development school: pagtuki sa mga buluhaton alang sa Minsk ug usa ka bag-ong set sa Moscow

Karon usa ka bag-ong enrolment ang giablihan Yandex Interface Development School sa Moscow. Ang unang hugna sa pagbansay-bansay mahitabo gikan sa Septiyembre 7 ngadto sa Oktubre 25. Ang mga estudyante gikan sa ubang mga lungsod makahimo sa pag-apil niini sa layo o sa personal - ang kompanya mobayad alang sa pagbiyahe ug pagpuyo sa usa ka hostel. Ang ikaduha, mao usab ang katapusang yugto, molungtad hangtod sa Disyembre 3, mahimo ra kini makompleto sa personal.

Ang akong ngalan mao si Yulia Seredich, gisulat namon kini nga post kauban si Sergei Kazakov. Pareho kami nga mga developer sa interface sa opisina sa Minsk sa Yandex ug mga gradwado sa SRI gikan sa miaging mga tuig.

Interface development school: pagtuki sa mga buluhaton alang sa Minsk ug usa ka bag-ong set sa Moscow

Sa okasyon sa pag-abli sa rehistrasyon sa Moscow, kami nagmantala sa usa ka pagtuki sa pasiuna nga mga buluhaton sa miaging School - dinhi sa Minsk.

Kung imong gisubay ang kasaysayan sa mga buluhaton sa SRI, matag tuig gisulayan namon ang tulo ka hinungdanon nga kahanas alang sa usa ka programmer:

  • Layout. Ang matag developer kinahanglan nga makahimo sa layout. Dili mahitabo nga ikaw adunay Tiyo Seryozha nga nagdesinyo alang sa tibuok team, ug ikaw nagsulat lamang sa mga script. Busa, ang matag estudyante kinahanglan magpakita kung giunsa niya nahibal-an kung giunsa ang pag-typeset.
  • JavaScript. Kung ang butang limitado sa layout, nan wala kami usa ka School of Interface Development, apan usa ka School of Layout Designers. Ang nindot nga gidisenyo nga interface kinahanglang buhion pag-usab. Busa, adunay kanunay nga buluhaton alang sa JS, apan usahay kini usa usab ka buluhaton alang sa mga algorithm - gihigugma namon sila pag-ayo.
  • Ang pagsulbad sa problema mao tingali ang labing hinungdanon nga kahanas sa usa ka developer. Kung bahin sa paghimo og mga interface, ang mga butang dali nga nagbag-o. Sama kini ni Lewis Carroll: "Kinahanglan ka nga modagan nga kusog kutob sa imong mahimo aron lang magpabilin sa parehas nga lugar, ug aron makaabut sa lain nga lugar kinahanglan ka nga modagan kaduha sa kadali." Kada adlaw makasugat kita og bag-ong mga teknolohiya - kinahanglan natong tagdon kini ug masabtan kini. Busa, sa ikatulo nga buluhaton, among gisugyot nga masabtan ang mga teknolohiya nga kasagarang dili pamilyar sa usa ka bag-ong developer.

Sa pag-analisar sa matag buluhaton, kami mosulti kanimo dili lamang mahitungod sa husto nga pamaagi, kondili mahitungod usab sa kasagarang mga sayop.

Buluhaton 1: Portfolio

Ang unang buluhaton gitrabaho sa Yandex.Collections designer Alexey Cherenkevich, nga nahibalo kon sa unsang paagi sa pagbuhat sa layout, ug ang iyang kauban sa pag-alagad, interface developer Sergey Samsonov.

Kahimtang

Paghimo ug portfolio nga website: sultihi kami bahin sa imong kaugalingon, imong trabaho ug imong gipaabot gikan sa Tunghaan. Ang site kinahanglan nga motakdo kutob sa mahimo sa gisugyot nga layout (mga link sa mga layout: 1000px, 600px, 320px, espesipikasyon). Interesado lang kami sa layout, busa palihug ayaw gamita ang JavaScript.

Sa pagsusi atong tagdon:

  • mga gidak-on sa indentation, pagkatul-id sa kolor, estilo sa font, gidak-on sa font;
  • semantiko nga layout;
  • ang presensya sa lain-laing mga estado sa mga elemento: pagpakita sa mga buton ug mga link sa diha nga nag-hover sa cursor, nagpasiugda sa aktibo nga input field, ug uban pa;
  • cross-browser compatibility (gisulayan sa pinakabag-o nga bersyon sa sikat nga mga browser).

Ang bentaha mao ang:

  • paggamit sa modernong mga solusyon sa CSS: flexbox, grid, ug uban pa;
  • Mapahiangay nga layout;
  • paggamit sa pre-ug (o) post-processors, assembly, minification, optimization sa output code;
  • HTML nga porma validation, stylized file upload button.

Ang buluhaton daghan kaayo, mao nga mahimo nimong laktawan kung unsa ang dili molihok. Kini mopaubos og gamay sa imong iskor, apan mahimo gihapon nimo nga ipakita ang imong kahibalo. Kung nahuman na ka, ipadala kanamo ang duha ka link - sa imong portfolio ug ang gigikanan nga code sa GitHub.

Ang mga layout nga gisugyot sa buluhaton dili lang sa mga screen alang sa mga mobile device, tablet ug desktop, apan usab adunay tinuod nga mga detalye.

Aron madala ang ingon ka daghan nga objectivity kutob sa mahimo ngadto sa resulta sa pagsusi sa unang buluhaton, adunay daghang mga criteria alang niini nga tseke.

Mga Criteria

Gidisenyo nga website. Kini ingon og klaro, apan ang pipila ka mga lalaki milaktaw sa pipila ka mga bloke sa hingpit - bisan gusto nila nga makadaginot sa oras, o dili nila kini mahimo. Ang layout mahimong halos bahinon sa upat ka mga main screen: ang main screen nga adunay avatar, block nga adunay lista sa mga gilauman gikan sa SRI, block nga adunay portfolio ug block nga adunay impormasyon sa pagkontak. Mahimo kini sa mga seksyon o yano nga paggamit sa mga div, ang panguna nga butang mao nga ang tanan nga upat ka mga bloke magamit.

Pagsunod sa layout sa layout. Naghimo ang tigdesinyo og bulag nga espesipikasyon (lakip ang mga kolor, typography, butones nga estado, ug uban pa) aron mas dali alang sa mga kandidato. Sa ubos adunay usa ka timaan sa mga indent ug mga bahin sa unang screen. Nalipay kaayo ko sa mga lalaki nga naghunahuna sa tanan nga gusto sa tigdesinyo: pananglitan, ang una nga screen kinahanglan nga dili moubos sa gitas-on sa viewport.

Mapahiangay nga layout - kini mao ang diha nga ang interface dili lang gibutang sa ingon nga sa tulo ka mga resolusyon ang tanan mao ang pixel sa pixel sa layout. Sa mga intermediate nga estado, ang layout kinahanglan nga dili usab mahulog. Ang uban nakalimot nga limitahan ang kinatas-ang gilapdon sa sudlanan ug gibutang ang tanan sa 1920 pixels, ang uban nagsamok sa mga background, apan sa kinatibuk-an ang mga kandidato nakasagubang niini nga buluhaton.

Layout sa semantiko. "Pila ka beses nga gisultihan nila ang kalibutan" nga ang link kinahanglan nga gidisenyo ingon , ang buton - ingon . Maayo na lang, kadaghanan sa mga kandidato nakatuman usab niini nga kinahanglanon. Dili tanan nakaila sa tinago nga lista sa mga gilauman sa SRI, nga gigamit kini nga mga tag sa div, apan dili kini daotan. Adunay usa ka kandidato nga gisukip ang tanan nga mga semantic tag nga iyang nahibal-an - kung diin kini kinahanglan ug kung diin kini dili kinahanglan. Pananglitan, imbes usa ka lista - ug . Human sa tanan, semantics - kini mahitungod sa pagsabut sa komposisyon sa imong panid ug sa katuyoan sa matag block (kadaghanan ang nagdumala niini dinhi), ingon man ang paggamit sa pre- ug / o post-processors (pipila ang nagdumala niini dinhi, bisan kini naa usab sa mga punto - kasagaran gamay ra ang ilang gigamit ug scss) .

Nagtrabaho nga slider. Sa assignment among gisulat nga dili magamit ang JS. Dinhi gisulayan ang abilidad sa pagsulbad sa mga problema - ang usa ka slider mahimo gamit ang usa ka hugpong Ug . Ang tanan nga salamangka mahitabo sa lebel sa pagpili #button-N: gisusi ~ .slider-inner .slider-slides. Kung mag-klik kami sa usa sa mga checkbox sa input, moadto kini sa gisusi nga estado. Mahimo natong pahimuslan kini ug i-assign ang paghubad nga atong gikinahanglan sa sudlanan nga adunay mga slide: transform: translate(-33%). Imong makita ang pagpatuman sa slider dinhi.

Mga listahan sa dropdown. Dinhi niabot usab ang tanan ug susamang tigpili: .accordion-item input:checked ~ .accordion-item__content. Makita nimo ang pagpatuman dinhi.

Anaa sa :hover, :active ug :focu* states. Usa ka importante kaayo nga punto. Ang kahupayan sa panahon sa interaksyon sa interface nagdepende niini. Ang tiggamit kinahanglan nga makadawat kanunay og feedback sa ilang mga aksyon. Kini nga butang gisusi sa tibuok nga interaksyon sa pangutana. Kung gi-klik nako ang buton nga "Tawga ko" ug tan-awon nga wala’y nahitabo (bisan kung gipadala ang hangyo), daotan kini, tungod kay i-klik nako kini pag-usab. Tungod niini, napulo ka mga hangyo ang ipadala ug ako tawagan balik sa napulo ka beses. Dili nato kalimtan nga ang mga mobile device walay mouse, nga nagpasabot nga walay usa ka hover. Ug usa pa ka punto nga wala makaapekto sa mga nakatuman sa punto bahin sa semantiko. Kung ang imong kontrol dili usa ka interactive nga elemento, unya kung mag-hover ka sa ibabaw niini ang cursor magpabilin nga sukaranan. Kini tan-awon kaayo nga dili maayo, bisan kung nagsulat ka usa ka reaksyon sa hover. Ayaw ipakaubos ang cursor: pointer.

Mga animation. Importante nga hapsay ang tanang reaksyon nga mahitabo sa mga elemento. Wala’y butang sa kinabuhi nga dali, mao nga adunay mga transisyon sa hover ug aktibo igo na aron mahimo ang interface nga labi ka makapahimuot. Aw, ang mga nag-animate sa slider ug mga lista sa kasagaran maayo.

Gamit ang pinakabag-o nga teknolohiya. Daghang mga tawo ang migamit og flex, apan walay nakakompleto sa buluhaton gamit ang grid. Ang punto giihap kung ang flex gigamit sa husto. Kung sa usa ka lugar ang layout nabulag tungod sa kini nga mga pagbag-o, alaut, wala ka makadawat bisan unsang dugang nga mga puntos.

Pag-validate sa Porma. Ang tanan nga gikinahanglan mao ang pagdugang sa gikinahanglan nga hiyas sa matag input sa porma. Nagdugang kami og mga punto niadtong nag-validate sa natad sa email isip email.

Pag-istilo sa buton sa pag-upload sa file. Naglaum kami nga makakita og kombinasyon sama sa: ug Pilia ang file . Sunod kinahanglan namon nga itago ang input ug istilo ang label. Adunay laing komon nga paagi - sa paghimo sa usa ka transparent input ug ibutang kini sa ibabaw sa buton. Apan dili tanan nga mga browser nagtugot sa pag-istilo , ug ang ingon nga solusyon dili matawag nga hingpit nga cross-browser. Ug kini mao ang semantically mas tukma sa paghimo sa usa ka label.

Pagkaangay sa cross-browser. Among gisusi nga maayo ang tanan sa duha ka pinakabag-o nga bersyon sa modernong mga browser (walay IE - swerte ang mga partisipante), ingon man sa Safari sa iPhones ug Chrome sa Androids.

Sa sukwahi, gibakwi namo ang mga puntos kung adunay migamit sa JS o Bootstrap: silang duha makapildi sa katuyoan sa tibuok buluhaton. Dugang pa, ang mga partisipante nga adunay Bootstrap dili lamang nakadawat og minus, apan nawala usab ang daghang mga punto alang sa semantics ug gipatuman nga mga elemento.

Kadtong nag-host sa ilang site sa usa ka lugar sa Internet wala makadawat bisan unsang partikular nga bentaha - apan ang mga tigrepaso nalipay kaayo kung dili nila kinahanglan nga i-download ang mga repositoryo ug ipadagan kini sa lokal sa ilang kompyuter. Mao nga nagsilbi kini nga dugang alang sa karma.

Ang una nga buluhaton mapuslanon kaayo alang sa estudyante. Kadtong wala namo madawat aduna nay giandam nga resume - mapasigarbuhon nimong i-attach kini sa tanang tubag o i-post kini sa imong gh-pages.

Buluhaton 2: Ruta sa transportasyon

Ang tagsulat sa buluhaton mao ang pangulo sa grupo sa mga interface sa pagpangita nga si Denis Balyko.

Kahimtang

Naa kay star map? Gipakita niini ang ngalan sa matag bituon, ingon man ang gilay-on gikan niini ngadto sa ubang mga bituon sa kahayag nga mga segundo. Ipatuman ang function sa solusyon, nga kinahanglan adunay tulo ka mga argumento: usa ka butang diin ang mga yawe mao ang mga ngalan sa mga bituon, ug ang mga kantidad mao ang mga distansya sa mga bituon (one-way nga trapiko sa kawanangan), ingon man ang mga ngalan sa ang pagsugod ug pagtapos nga mga punto sa agianan - pagsugod ug pagkahuman, matag usa. Kinahanglang ibalik sa function ang pinakamubo nga distansiya gikan sa start star hangtod sa finish star ug ang dalan nga subayon.

pirma sa function:

const solution = function(graph, start, finish)  {
    // Π’Π°ΡˆΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅
} 

Pananglitan nga datos sa pag-input:

const graph = {
  start: { A: 50, B: 20 },
  A: { C: 40, D: 20 },
  B: { A: 90, D: 90 },
  C: { D: 160, finish: 50 },
  D: { finish: 20 },
  finish: {}
};
const start = 'start';
const finish = 'finish'; 

Pananglitan nga output:

{
    distance: 90,
    path: ['start', 'A', 'D', 'finish']
} 

Hinumdomi: Ang kalabera sa solusyon naa sa src/ folder, ibutang ang imong solusyon sa solution.js.

Ang pag-verify sa ikaduhang buluhaton mao ang labing awtomatiko ug katuyoan. Kadaghanan sa mga lalaki nakatag-an nga kinahanglan nga ipatuman ang algorithm sa Dijkstra. Kadtong nakakaplag sa paghulagway niini ug nagpatuman sa algorithm sa JS maayo nga nahimo. Bisan pa, sa dihang gisusi ang asaynment, daghang mga papel ang among nakit-an nga adunay parehas nga mga sayup. Gipangita namo sa Internet ang mga tipik sa code ug nakit-an ang usa ka artikulo diin gikopya sa mga partisipante ang algorithm. Kataw-anan nga daghang mga tawo ang nagkopya sa code gikan sa artikulo kauban ang mga komento sa tagsulat. Ang maong mga buhat nakadawat og ubos nga marka. Wala namo gidili ang paggamit sa bisan unsang tinubdan, apan gusto namo nga ang usa ka tawo mosusi sa iyang gisulat.

Mga Criteria

Ang panguna nga mga punto gihatag alang sa mga pagsulay. Usahay klaro nga ang mga lalaki nagsamok-samok sa repository, pagbag-o sa ngalan sa mga folder, ug ang mga pagsulay mapakyas tungod lang kay dili nila makit-an ang kinahanglan nga mga file. Karong tuiga gisulayan namon nga tabangan ang ingon nga mga lalaki ug gibalik ang tanan sa lugar niini alang kanila. Apan sa sunod tuig nagplano kami nga mobalhin sa sistema sa kontes, ug dili na kini mapasaylo.

Adunay usab "tawo", manual criteria. Pananglitan, ang presensya sa usa ka estilo sa code. Walay usa nga nagbawas sa mga puntos sa paggamit sa mga tab imbes sa mga luna o vice versa. Laing butang kung imong ilisan ang usa ka kinutlo nga adunay doble nga mga kinutlo sumala sa usa ka lagda nga nahibal-an nimo, ug ibutang ang mga semicolon nga random.

Ang katin-aw ug pagkabasa sa solusyon gikonsiderar nga gilain. Sa tanan nga mga komperensya sa kalibutan giingon nila nga 80% sa trabaho sa usa ka programmer naglangkob sa pagbasa sa code sa ubang mga tawo. Bisan ang mga bata sa eskuylahan nag-agi sa mga pagsusi sa code - gikan sa ilang mga curator ug gikan sa usag usa. Busa kini nga sukdanan nagdala ug dakong gibug-aton. Adunay mga buhat diin wala’y mga variable nga mas taas kaysa usa ka karakter - palihug ayaw kana buhata. Ang mga komento gikan sa mga partisipante makapadasig kaayo - gawas sa mga parehas sa mga komento ni Stella Chang.

Ang katapusan nga sukdanan mao ang presensya sa mga autotest. Pipila lang ka mga tawo ang midugang kanila, apan alang sa tanan kini nahimong usa ka dako nga dugang sa ilang karma.

Sakto nga solusyon:

const solution = function(graph, START, FINISH)  {
    // Всё Π½Π΅ бСсплатно Π² этом ΠΌΠΈΡ€Π΅
    const costs = Object.assign({[FINISH]: Infinity}, graph[START]);

    // ΠŸΠ΅Ρ€Π²Π°Ρ Π²ΠΎΠ»Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Π½ΠΎΠ΄
    const parents = { [FINISH]: null };
    Object.keys(graph[START]).reduce((acc, child) => (acc[child] = START) && acc, parents)

    const visited = [];
    let node;

    // Π˜Ρ‰Π΅ΠΌ Β«Π΄Π΅ΡˆΡ‘Π²ΠΎΠ³ΠΎΒ» родитСля, ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π΅ΠΌ ΠΏΡ€ΠΎΠΉΠ΄Π΅Π½Π½Ρ‹Π΅
    do {
        node = lowestCostNode(costs, visited);
        let children = graph[node];
        for (let n in children) {
            let newCost = costs[node] + children[n];

            // Π•Ρ‰Ρ‘ Π½Π΅ ΠΎΡ†Π΅Π½Π΅Π½Π° ΠΈΠ»ΠΈ Π½Π°ΡˆΡ‘Π»ΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡˆΡ‘Π²Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄
            if (!costs[n] || costs[n] > newCost) {
                costs[n] = newCost;
                parents[n] = node;
            }
        }
        visited.push(node);
    } while (node)

    return {
        distance: costs[FINISH],
        path: optimalPath(parents)
    };

    // Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π½Π°Π·Π°Π΄ ΠΏΠΎ самым Β«Π΄Π΅ΡˆΡ‘Π²Ρ‹ΠΌΒ» родитСлям
    function optimalPath(parents) {
        let optimalPath = [FINISH];
        let parent = parents[FINISH];
        while (parent && parent !== START) {
            optimalPath.push(parent);
            parent = parents[parent];
        }
        optimalPath.push(START);
        return optimalPath.reverse();
    }

    // Минимальная ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π½ΠΎΠ΄Ρ‹ срСди нСпросмотрСнных
    function lowestCostNode(costs, visited) {
        return Object.keys(costs).reduce((lowest, node) => {
            if (lowest === null || costs[node] < costs[lowest]) {
                if (!visited.includes(node)) {
                    lowest = node;
                }
            }

            return lowest;
        }, null);
    };
};

Buluhaton 3: Kalendaryo sa mga Hitabo

Giandam kini sa mga nag-develop sa interface nga si Sergey Kazakov ug Alexander Podskrebkin.

Kahimtang

Pagsulat ug mini-kalendaryo aron ipakita ang imong eskedyul. Mahimo nimong kuhaon ang bisan unsang iskedyul nga gusto nimo. Pananglitan, ang iskedyul sa mga komperensya sa frontend sa 2019.

Ang kalendaryo kinahanglan nga tan-awon sama sa usa ka lista. Walay laing mga kinahanglanon sa disenyo. Himoa nga posible ang pagtakda sa mga pahinumdom sa panghitabo 3, 7 ug 14 ka adlaw nga abante. Pagkahuman sa una nga pag-download gikan sa Internet, ang kalendaryo kinahanglan magbukas ug molihok offline.

Mapuslanon nga mga gigikanan

Iskedyul sa komperensya sa atubangan:
confs.tech/javascript?topics=javascript%2Bcss%2Bux

Mga trabahante sa serbisyo:
developer.mozilla.org/ru/docs/Web/API/Service_Worker_API/Using_Service_Workers
developers.google.com/web/fundamentals/primers/service-workers

Notifications API:
developer.mozilla.org/ru/docs/Web/API/Notifications_API

Ang ikatulo nga buluhaton mao ang labing makapaikag nga sulayan, tungod kay adunay daghang posible nga mga solusyon, ang matag usa adunay kaugalingon. Among gisusi kung giunsa pagdumala sa kandidato ang dili pamilyar nga mga teknolohiya - nahibal-an ba niya kung unsaon pagsiksik, kung gisulayan ba niya ang iyang mga solusyon.

Mga Criteria

Gipilo nga kalendaryo. Oo, kinahanglan pa kini nga ibutang. Adunay usab mga tawo nga literal nga nagkuha sa kondisyon ug wala magsulud bisan usa ka linya sa CSS code. Kini dili kaayo madanihon, apan kung ang tanan nagtrabaho, ang mga punto wala mokunhod.

Pagkuha og lista sa mga panghitabo gikan sa tinubdan. Dili kini usa ka buluhaton sa layout, busa ang lista sa mga panghitabo nga gilakip niini wala maihap. Mahimo nimong kanselahon kanunay ang usa ka komperensya, i-iskedyul kini pag-usab, o pagdugang usa ka bag-o. Mao nga kinahanglan nga makadawat mga datos gikan sa gawas ug i-render ang layout base sa nadawat nga JSON. Importante nga makuha ang datos sa bisan unsang paagi (gamit ang pamaagi sa pagkuha o paggamit sa XMLHttpRequest). Kung ang usa ka tawo nagdugang usa ka polyfill alang sa pagkuha ug gimarkahan ang iyang gipili sa readme, kini giisip nga usa ka plus.

Pagrehistro sa trabahante sa serbisyo nga wala’y mga sayup ug pagtrabaho offline human sa unang pag-download. Ania ang usa ka pananglitan service worker nga adunay iskedyul nga pag-cache sa unang boot. Ang mga detalye bahin sa mga trabahante sa serbisyo, ilang mga kapabilidad ug mga paagi sa pagtrabaho uban kanila (mga estratehiya sa pagtrabaho sa mga cache, pagtrabaho sa offline) makita dinhi.

Abilidad sa pagtakda og pahinumdomaron kini molihok pagkahuman sa 3, 7, 14 ka adlaw. Kinahanglan nga masabtan ang Notifications API, link sa diin husto sa buluhaton. Wala kami nagdahom nga bisan unsang piho nga pagpatuman aron masusi kung oras na ba sa pagduso. Ang bisan unsang opsyon sa pagtrabaho gidawat: pagtipig sa localStorage, IndexDB o periodic polling sa usa ka service worker. Posible pa gani nga maghimo usa ka push server (dinhi usa ka panig-ingnan), apan dili kini molihok offline. Parehas nga hinungdanon nga makadawat usa ka pagduso pagkahuman sirado ang panid - ug giablihan pagkahuman sa pila ka oras. Kung ang pahinumdom namatay sa samang higayon nga ang panid gisirado, ang solusyon wala maihap. Nindot kung ang mga lalaki naghunahuna bahin sa mga tigrepaso ug gihimo nga posible nga makakuha usa ka pagduso karon - aron dili maghulat 3 ka adlaw.

Abilidad sa pagbutang sa usa ka icon sa desktop (PWA). Among gisusi ang presensya sa file manifest.json uban sa husto nga mga icon. Ang ubang mga lalaki naghimo niini nga file (o gibiyaan kini nga gihimo sa CreateReactApp) - apan wala magdugang sa husto nga mga icon. Unya, sa diha nga misulay sa pag-instalar, usa ka sayop sama sa "usa ka lain nga icon ang gikinahanglan" nahitabo.

Codestyle ug istruktura sa proyekto. Sama sa ikaduha nga buluhaton, among gitan-aw ang usa ka codestyle (bisan kung dili kini motakdo sa amon). Ang pipila ka mga lalaki naglibog sa mga linter - maayo kana.

Mga sayop sa console. Kung adunay usa ka timailhan nga husto sa console nga adunay usa ka butang nga sayup, ug ang partisipante wala magtagad niini, nan among gibakwi ang mga puntos.

Mga resulta

Unsa ang kataw-anan sa mga desisyon sa mga partisipante:

  • Ang usa ka pangutana naglangkob sa mosunod nga teksto: β€œUsa ka higala sa programmer mitabang kanako sa paghimo og usa ka aplikasyon sa React. Ako siyang gibombahan ug mga pangutana kon sa unsang paagi ug ngano, ug iya kong giingnan. Ganahan kaayo ko niini, gusto kong mahibal-an ang dugang bahin niini. ” Kami nag-ugat niini nga aplikasyon sa tibuok namong kasingkasing, apan sa kasubo, ang higala sa kandidato dili kaayo makatabang sa paghimo sa aplikasyon.
  • Usa ka kandidato nagpadala usa ka link sa GitHub, diin nahimutang ang RAR archive - lisud ang pagkomento bahin niini. πŸ™‚
  • Ang laing kandidato, sa komento sa unang linya sa solution.js file, matinud-anon nga miangkon nga iyang gikopya ang algorithm.

Nakadawat kami mga aplikasyon gikan sa 76 ka mga kandidato ug gipili ang 23 ka mga tawo. Gipadala kami og mga pangutana dili lamang gikan sa Minsk, kondili gikan usab sa Moscow, St. Petersburg ug bisan sa Tatarstan. Ang pipila sa mga lalaki natingala kanamo sa ilang mga propesyon karon: ang usa kanila eksperto sa forensic, ug ang usa usa ka estudyante sa medisina.

Ang resulta usa ka makapaikag nga pag-apod-apod sa mga rate sa kalampusan sa pagkompleto sa mga buluhaton. Nakompleto sa mga partisipante ang una nga buluhaton sa aberids nga 60%, ang ikaduha sa 50%, ug ang ikatulo nahimo nga labing lisud ug nahuman sa aberids nga 40%.

Sa unang tan-aw, ang mga buluhaton morag komplikado ug makagugol ug panahon. Ang rason kay dili kay gusto nato nga mawagtang ang daghang mga kandidato kutob sa mahimo. Atol sa ilang pagtuon, ang mga estudyante nag-atubang sa tinuod nga kinabuhi nga mga buluhaton - paghimo sa usa ka chat, Yandex.Music alang sa mga bata o Yandex.Weather alang sa mga tawo nga nagsalig sa panahon. Alang niini kinahanglan nimo ang usa ka sugod nga base.

Nahinumdom ko nga nakakita sa akong buluhaton sa pagsulod sa SRI duha ka tuig na ang milabay ug naghunahuna nga dili nako kini masulbad. Ang nag-unang butang niining higayona mao ang paglingkod, pag-ayo sa pagbasa sa mga kondisyon ug pagsugod sa pagbuhat niini. Kini nahimo nga ang mga kondisyon adunay hapit 80% sa solusyon. Pananglitan, sa kahimtang sa ikatulo nga buluhaton (ang labing lisud), gidugang namon ang mga link sa mga trabahante sa serbisyo ug Notifications API sa MDN. Ang mga estudyante nga nagtuon sa sulod sa mga link nakakompleto niini nga walay kalisud.

Gusto gyud nako nga kini nga artikulo basahon sa mga kandidato nga nagplano nga mosulod sa SRI sa umaabot, nga dili makasulod sa Minsk School, o kinsa nagsugod sa pagbuhat sa bisan unsang buluhaton sa pagsulay. Sama sa imong nakita, posible nga buhaton kini. Kinahanglan ka lang nga motuo sa imong kaugalingon ug maminaw sa tanan nga mga tip gikan sa mga tagsulat.

Source: www.habr.com

Idugang sa usa ka comment