|
1 | 1 | # Практика и проекты |
2 | 2 |
|
3 | 3 | ## Возможные варианты: |
| 4 | + |
4 | 5 | - Контрибьюшен в любой open-source проект или библиотеку |
5 | 6 | - Контрибьюшен в [Metarhia](https://github.com/metarhia) |
6 | 7 | - Проект студенческой группы или общественный проект в открытом коде |
7 | 8 | - Собственный open-source проект |
8 | 9 |
|
9 | | -## Разрешается (при разумном обосновании выбора): |
10 | | -- Любой язык |
11 | | -- Любой технологический стек |
12 | | -- Можно использовать любые зависимости |
| 10 | +## Что разрешено и что запрещено: |
| 11 | + |
| 12 | +- Любой язык. |
| 13 | +- Любой технологический стек. |
| 14 | +- Можно использовать любые зависимости. |
| 15 | +- Репозиторий обязательно размещается на https://github.com в открытом доступе. |
| 16 | +- Желательно делать групповые работы, для этого студенты объединяются в группы |
| 17 | +по 2-5 человек (могут быть внешние участники с других курсов, факультетов и |
| 18 | +вообще не из КПИ); группа может писать один общий проект или сделать перекрестный |
| 19 | +ревью кода индивидуальных проектов каждого участника группы. Пересмотрите: |
| 20 | + - [Что такое ревью кода](https://youtu.be/EKL6NiIQ6ZU) |
| 21 | + - [Семинар: по ревью кода](https://youtu.be/AgH4OAKbmkM) |
| 22 | +- Проект не может быть одномоментно залит на гитхаб за день до сдачи, его нужно |
| 23 | +вести в гитхабе на протяжении нескольких месяцев, чтобы была видна работа, |
| 24 | +история коммитов и PR (pull request). Хорошо, если можно будет проследить |
| 25 | +улучшение кодовой базы, рефакторинг и оптимизацию. Пересмотрите: |
| 26 | + - Общие [антипаттерны для всех парадигм](https://youtu.be/NMUsUiFokr4), и |
| 27 | + - Антипаттерны [процедурного программирования](https://youtu.be/cTv7V22mkwE); |
| 28 | + - Лекция про [рефакторинг](https://youtu.be/z73wmpdweQ4). |
| 29 | +- Хорошее ведение репозитория: issues, pull requests, milestones (см. кнопки на |
| 30 | +закладках issues и pr в github), discussions (не обязательно), kanban (средство |
| 31 | +планирования проекта, ищите на закладке project в github), wiki (не обязательно). |
13 | 32 |
|
14 | 33 | ## Если вы делаете свой репозиторий, то он обязательно должен включать: |
| 34 | + |
15 | 35 | - Юниттесты (по желанию системные, интеграционные и нагрузочные тесты) |
16 | 36 | - CI (например: TravisCI, Github Actions) |
17 | 37 | - Лицензию и список контрибьютеров |
|
23 | 43 | - Дотфайлы для системы контроля версий и менеджера пакетов |
24 | 44 |
|
25 | 45 | ## Проекты, в которые можно конрибьютить: |
| 46 | + |
26 | 47 | - Рекурсивное наблюдение за файловой системой: https://github.com/metarhia/metawatch |
27 | 48 | - Утилиты для интерфейса командной строки: https://github.com/metarhia/metacommand |
28 | 49 | - Хелпер (обертка) для node.js модуля vm: https://github.com/metarhia/metavm |
|
0 commit comments