Mesélj egy Node.js/Express alapú fullstack alkalmazásról a fizetési oldalak márkázásának automatizálására.
Frontend
6. feladat: Írjon egy generikus függvényt, amely egy objektumot fogad kötelező name tulajdonsággal, típusát tekintve string, és visszaad egy karakterláncot az entitás nevével.
Mi a különbség az any és az unknown között a TypeScript-ben? Miért nem panaszkodik a linter az any-re, de az unknown esetén típus szűkítést igényel?
Hogyan dolgozott a Git-tel: milyen volt a branching flow, hogyan adták ki a verziókat, hogyan csináltak hotfixet?
/** * 4. feladat: Alakítsd át a megadott `MaybeProps` típusát, hogy minden tulajdonsága kötelező legyen. */ type MaybeProps = { a?: number; b?: string; };
Feladat 2: Az alábbiakban több Todo felület deklaráció található, magyarázd el, mi történik, ha ezek ugyanabban a hatókörben vannak. Tárgyaljuk, hogyan kezeli őket a TypeScript, és töltsd ki a `myTodo` objektumot úgy, hogy megfeleljen a összeolvasztott Todo felület követelményeinek. ```typescript interface Todo { title: string; dueDate: Date; } interface Todo { description: string; completed: boolean; } interface Todo { priority: 'high' | 'medium' | 'low'; completed: string; } const myTodo: Todo = {}; ```
7. feladat: Vannak Alien és Human típusok, amelyek a Person típusba vannak egyesítve. Írjon egy checkAlien függvényt, amely ellenőrzi, hogy a megadott Person egy idegen. Javítsa ki a TypeScript hibát az isAlien tulajdonsághoz való hozzáféréskor.
Volt már negatív tapasztalatod csapatban, például intenzív viták a kód áttekintése során? Hogyan járnál el ilyen helyzetben?
/** * Feladat 3: Elemezze az alábbi függvényt, és javítson ki minden hibát. Magyarázza el a `never` típus szerepét a TypeScript-ben. */ function throwError(): never { throw new Error('Hiba történt'); } /** * Feladat 4: Alakítsa át a megadott `MaybeProps` típust, hogy minden tulajdonsága kötelező legyen. */ type MaybeProps = { a?: number; b?: string; }; /** * Feladat 5: Hozzon létre egy generikus `Container` típust, amely egy `value` nevű tulajdonságot tartalmaz. * A `value` típusa legyen korlátozva `string` vagy `number` típusokra. */ type Container<T> = { value: T; };
Mesélj az Astro használatáról: hogyan választották ki, hogyan kezelik a tartalmat?
/** * Feladat 1: Generikusok és Kulcs Típus Biztonság * Hozzon létre egy `getProperty` függvényt, amely egy objektumot és egy kulcsot vesz be. * Használjon generikusokat annak biztosítására, hogy a függvény típusbiztos legyen, és a kulcs létezik az objektumon. */ function getProperty<T extends Record<string, unknown>, K extends keyof T>(obj: T, key: K): T[K] { return obj[key]; } getProperty('str', 'toString') /** * Feladat 2: Az alábbiakban több Todo interfész deklaráció található, magyarázza el, mi történik, amikor ezek ugyanabban a hatókörben vannak. * Beszélje meg, hogyan kezeli őket a TypeScript, és töltse ki a `myTodo` objektumot, hogy megfeleljen a összeolvasztott Todo interfész követelményeinek. */ interface Todo { title: string; dueDate: Date; } interface Todo { description: string; completed: boolean; }
Beszélj a cookie-alapú hitelesítésről és a kétfaktoros hitelesítésről a felhasználói fiókban.
Miért döntöttél úgy, hogy munkát keresel, és miért nálunk?