Kako optimizovati učitavanje slika u karticama koje su vidljive u viewport-u? Kako rešiti problem race condition-a pri brzom prebacivanju sadržaja (npr. YouTube Shorts)?
Frontend
Da imaš potpunu slobodu, kakav bi bio tvoj savršen oblik? Koje pristupe, tehnologije i metode bi koristio (validacija, obrada grešaka, UX, DX)?
Pomenuli ste Docker, CI/CD, GitHub Actions, GitLab — možete li objasniti tačno šta ste radili, koji su pipeline-i, šta je bilo u kontejnerima?
Šta je korišćeno za rad sa višedimenzionalnim obrascima — za validaciju, sa kojim problemima su se susretali, kako su testirali?
Са којим оквирима или алаткама радите? Да ли користите AI алате у вашем раду?
Kako možete keširati podatke na serveru kako biste ubrzali učitavanje korisnika?
Implementirajte serversku validaciju za odgovarajuća polja.
Na stranici postoji plejer. Potrebno je da kada se pritisne stop na jednoj kartici, reprodukcija se zaustavi i na drugoj kartici. Kako bi implementirao komunikaciju između kartica?
#React obrazac za prijavu 1. Objasnite kako radi StateProvider, podelite svoje misli sa intervjuerom. 2. Pogledajte /src/api/mock, objasnite kako radi. 3. Proverite boju SubmitButton i ispravite je. 4. Implementirajte validaciju obrasca na klijentskoj strani u komponenti Signup. (\*) Imate na umu zadatak broj 9. Pravila: - Polja Korisničko ime, Email, Lozinka i Ponovi Lozinku treba da imaju najmanje 6 karaktera; - Lozinka treba da odgovara Ponovi Lozinku; - Validacija treba da se izvrši nakon klika na dugme "SignUp"; - Polja sa nevažećim vrednostima treba da budu označena (props error i helperText); 6. API odgovor može imati grešku koja treba da bude prikazana korisniku u blizini odgovarajućeg polja. 7. Uverite se da komponenta UserName prikazuje novo korisničko ime nakon uspešnog slanja. 8. Implementirajte novi SignupSuccess komponentu. Ona treba da bude prikazana umesto obrasca za registraciju. 9. Implementirajte server-side validaciju za odgovarajuća polja. --- Kod iz mock.ts: ```typescript const fakeResponse = (userName) => ({ code: 200, user: { id: 42, userName, }, }); let a = 0; const api = { '/signup': function (userName: string, email: string, password: string) { a++; return new Promise((resolve, reject) => { setTimeout(() => { if (a % 2 === 0) { return resolve(fakeResponse(userName)); } else { return reject( new Error( `Korisničko ime "${userName}" već je zauzeto. Molimo pokušajte s drugim.` ) ); } }, 500); }); }, }; export default api; ```
Kako funkcioniše virtualizacija liste? Kako se to tehnički implementira putem JavaScript-a?
Implementirajte TypeScript tipizaciju za funkciju customMap, koja prihvata niz bilo kog tipa i funkciju za transformaciju koja vraća drugi tip. Funkcija za transformaciju treba da prihvati tri argumenta (kao callback u Array.map).
Kako uopšte saznaješ nešto novo o programiranju i šta ti je poslednje ostalo u sećanju?
Implementirajte funkciju promiseWithResolver (odloženo obećanje), koja vraća objekat sa poljima resolve i promise.
Kako su se isporučivale verzije, kako su se testirale, колико често су излазиле?
Imamo veoma veliki frontend u monorepo-u, na kojem istovremeno radi mnogo različitih timova. Ne možemo preći na mikro-frontend. Kako minimizirati rizik da različiti timovi utiču jedni na druge?
Šta obično radiš ako osetiš da je razvoj u toku i malo kasniš sa rokovima? Postoji datum izlaska, ali shvataš da nećeš stići da završiš zadatak na vreme.
#React obrazac za prijavu 1. Objasnite kako radi StateProvider, podijelite svoje misli s intervjuatorom. 2. Pogledajte /src/api/mock, objasnite kako to radi. 3. Provjerite boju SubmitButton i ispravite je. 4. Implementirajte klijentsku validaciju obrasca u komponenti Signup. (* ) Imajte na umu broj zadatka 9. Pravila: - Polja Korisničko ime, Email, Lozinka, Ponovi Lozinku trebaju imati najmanje 6 znakova; - Lozinka treba odgovarati Ponovi Lozinku; - Validacija treba biti izvršena na klik na "Prijavi se"; - Polja s nevažećim vrijednostima trebaju biti označena (props error i helperText); 6. Odgovor API-a može imati pogrešku koja treba biti prikazana korisniku u blizini odgovarajućeg polja. 7. Uvjerite se da komponenta UserName prikazuje novo korisničko ime nakon uspješnog slanja. 8. Implementirajte novi komponent SignupSuccess. Trebao bi biti prikazan umjesto obrasca za prijavu. 9. Implementirajte serversku validaciju za odgovarajuća polja.
Направите знак СТОП (црвени круг са белом траком и двоструком границом) користећи само један div и CSS (додатни елементи су дозвољени).
Kako su se razmenjivali fajlovi u chatu — jednostavno POST zahtevom ili su postojali veliki fajlovi?
const customMap = (array, transform) => { // nešto poput array.map(transform); }; const stringResults = customMap([1, 2, 3], item => item.toString()); const lengths = customMap(["zdravo", "svet"], item => item.length);