Halo! Nama saya Ivan Grekov dan saya bekerja sebagai pengembang UI di tim frontend di Badoo. Tugas utama tim kami adalah membuat dan memelihara antarmuka pengguna yang ada untuk situs web dan aplikasi Badoo dan Bumble.
2019 , . 630 React UI- TypeScript. , TypeScript UI-, .
- UI-: . -, JS- TypeScript, (type safety).
UI- , .
UI-. - , , . React prop-types. , prop-types . - API , .
TypeScript. : .
.
. - . React.js.
- UI- , . :
, - JavaScript;
UI-, stateless .
UI-, -, .
UI- , . , , , JavaScript React.js. TypeScript, . : TypeScript .
. : . , .
: , . , , β PDCA (Plan-Do-heck-Act). : , , . : , , .
, . .
, , . cloc:
554 JSX-, 227 β 227 β VRT-. TypeScript 62 62 .
β : , , . , , β , . .
, . , .
β . , . β ?
. , . , , . , 2000 .
, . , . , .
.
, . . .
, . , , . madge, . , madge webpack-. , .
, TypeScript , : .
, , .
TypeScript. . , .
, . , . , TypeScript ?
. :
TS basic β , ;
TS component β , ;
TS view β .
TypeScript . , . , . .
, . ? ? (Enum) (Union)? ?
, , . . , . , : .
, .
0 β
. , , . , TypeScript, . , TypeScript, β . , TypeScript, , .
. , . -, , , . -, ( ) , .
:
CSS-, ;
, ;
Enums Enums;
.
- . JS-: ESLint Prettier. , . TypeScript. , .
1 β
. ( ) , . TypeScript-, basic.
, , . , TypeScript, VRT- . VRT , , .
: ,
, , . , , . , .
.
, .
, , . , , , . :
β TypeScript;
UI- β ;
β .
, . . , - , . , . .
, , . β , .
, .
madge cloc, . , , . , . : ? ? ? .
. TypeScript .
. .
, JavaScript TypeScript . , .
TypeScript . TypeScript.
. , . , .
, QA , . Prettier ESLint , .
:
. : , . , VSCode Lyft TypeScript React-. React 16.3.14 16.4.0, , . , .
codemodβ TypeScript, GitHub npm. , .
.
React TypeScript
, React UI- TypeScript. , ( ). , TypeScript.
JavaScript TypeScript:
, TypeScript:
Setting up efficient workflows with ESLint, Prettier and TypeScript
The Practical Guide to Start React Testing Library with TypeScript.
TypeScript React:
, TypeScript React:
A Practical Guide to TypeScript β How to Build a Pokedex App Using HTML, CSS, and TypeScript
Create a React component library with TypeScript and Storybook
How To Build a Customer List Management App with React and TypeScript
TypeScript: