|
18 | 18 |
|
19 | 19 | --- |
20 | 20 |
|
21 | | -## Глоссарий терминов |
22 | | - |
23 | | -| Термин | Определение | Примеры | |
24 | | -|--------|-------------|---------| |
25 | | -| **Компонент** | Архитектурная единица проекта, которую студент берёт в работу | Auth, Dashboard, AI Agent, Quiz Widget | |
26 | | -| **Виджет** | Тип компонента — интерактивный UI-блок для тренировки | Quiz, True/False, Memory Game, Async Sorter | |
27 | | - |
28 | | -**Структура:** |
29 | | -``` |
30 | | -Компоненты |
31 | | -├── Core (Landing, Auth, Profile, Dashboard, Library, Navigation, Pagination, Backend, State) |
32 | | -├── Practice (способы практики) |
33 | | -│ ├── AI Agent (сложный компонент) |
34 | | -│ └── Виджеты (Widget Engine + отдельные виджеты) |
35 | | -└── Enhancement (Theme, i18n, Gamification, ...) |
36 | | -``` |
37 | | ---- |
38 | | - |
39 | | -## Core Pillars (Столпы проекта) |
| 21 | +## Ключевые принципы проекта |
40 | 22 |
|
41 | 23 | ### 1. Цель проекта |
42 | 24 | **Приложение для подготовки к техническим интервью** |
43 | 25 |
|
44 | 26 | ### 2. Компонентный подход |
45 | 27 | - Проект разделен на **компоненты** (модули) |
| 28 | +- Компонент - архитектурная единица проекта, которую студент берёт в работу. Например: Auth, Dashboard, AI Agent, Quiz Widget |
| 29 | +- Виджет - отдельный тип компонента — интерактивный UI-блок для тренировки. Например: True/False, Memory Game, Async Sorter |
46 | 30 | - У команд есть **свобода внутри компонента**: дизайн, технологии, функциональность |
47 | 31 | - Каждый студент работает над **своими компонентами** (минимум 2 компонента) |
48 | 32 |
|
49 | 33 | ### 3. Временные рамки |
50 | 34 | - **4-6 недель** на разработку проекта |
51 | 35 | - **2 недели** на прием презентаций |
52 | 36 |
|
| 37 | +Изначально на курсе было заявлено, что финальный проект продлится месяц — мы допускаем, что часть студентов потратит на разработку именно месяц. Однако рекомендуем использовать все 6 недель. |
| 38 | + |
53 | 39 | ### 4. Система оценки |
54 | 40 | - **Личная оценка**: 70% |
55 | 41 | - **Командная оценка**: 30% |
|
58 | 44 | ### 5. Фокус на обучении |
59 | 45 | - **Главное**: Что вы изучили в процессе |
60 | 46 | - **Не важно**: Использовали ли вы AI для написания кода или нет |
61 | | -- **Цель**: После проекта знаний должно быть больше, чем до него |
| 47 | +- **Цель**: После проекта знаний должно быть больше, чем до него :) |
62 | 48 |
|
63 | 49 | ### 6. LLM в проекте |
64 | | -- AI Agent — это **один из компонентов**, не обязательный для всех |
65 | | -- **Не обязательно** для всех студентов делать компонент с LLM |
66 | | -- Можно комбинировать: AI Agent + виджеты в одном приложении |
| 50 | +- AI Agent — это **один из компонентов**, не обязательный для всех команд |
| 51 | +- По решению команды вы можете: |
| 52 | + - Разрабатывать **только виджеты** |
| 53 | + - **Комбинировать** AI Agent + виджеты в одном приложении |
67 | 54 |
|
68 | 55 | ### 7. Гибкость |
69 | | -- Можно сделать только один компонент хорошо |
70 | | -- Можно сделать больше 2 компонентов |
71 | | -- Можно выбрать AI Agent **или** виджеты **или** оба |
| 56 | +- Каждый участник команды должен сделать **минимум** 2 компонента |
| 57 | + - **Исключение:** AI Agent можно разрабатывать весь срок обучения (может быть единственным компонентом) |
| 58 | +- Tandem может содержать AI Agent **или** виджеты **или** оба |
| 59 | +- **Можно создавать свои типы компонентов и виджетов** (не ограничиваясь списком этого Т/З) |
| 60 | +- Архитектура приложения и критерии оценки спроектированы так, что **не все компоненты обязательны** — часть может отсутствовать в вашем приложении |
72 | 61 | - Важно качество и понимание того, что делаешь |
73 | 62 |
|
74 | 63 | --- |
|
99 | 88 | --- |
100 | 89 |
|
101 | 90 | ## Компоненты проекта |
| 91 | +Ниже приведены примеры компонентов. Вы можете создавать свои типы компонентов и виджетов, не ограничиваясь этим списком. |
102 | 92 |
|
103 | 93 | ### 🔧 Core (Основа приложения) |
104 | | - |
105 | | -*Базовые компоненты, из которых строится приложение.* |
106 | | - |
107 | 94 | 1. **Landing Page** — главная для неавторизованных |
108 | 95 | 2. **Auth** — регистрация, вход, сессии |
109 | 96 | 3. **Profile** — профиль пользователя |
|
115 | 102 | 9. **State Persistence** — сохранение при перезагрузке |
116 | 103 |
|
117 | 104 | ### 🎯 Practice (Способы практики) |
118 | | - |
119 | 105 | *Команда выбирает минимум 1 способ:* |
120 | 106 |
|
121 | 107 | **AI Agent (⭐⭐⭐⭐ сложный компонент):** |
|
144 | 130 | > Детали см. в [COMPONENTS.md](./COMPONENTS.md) |
145 | 131 |
|
146 | 132 | --- |
147 | | - |
148 | | -## Примеры распределения работы |
149 | | - |
150 | | -### Команда 3 человека (AI + Виджеты) |
151 | | - |
152 | | -``` |
153 | | -Человек 1: Auth + Profile + Navigation |
154 | | -Человек 2: Dashboard + Library + 2 виджета |
155 | | -Человек 3: AI Agent (целиком) |
156 | | -``` |
157 | | - |
158 | | -### Команда 2 человека (только Виджеты) |
159 | | - |
160 | | -``` |
161 | | -Человек 1: Auth + Dashboard + Library + Navigation |
162 | | -Человек 2: Widget Engine + 4 виджета |
163 | | -``` |
164 | | - |
165 | | -### Команда 3 человека (только AI) |
166 | | - |
167 | | -``` |
168 | | -Человек 1: Auth + Profile + Navigation + I18n |
169 | | -Человек 2: Dashboard + Library + Report Card |
170 | | -Человек 3: AI Agent + Code Editor |
171 | | -``` |
172 | | - |
0 commit comments