КС:2015:Проект:MC — различия между версиями
Aparinov (обсуждение | вклад) м |
Aparinov (обсуждение | вклад) (mc. добавление описания) |
||
(не показано 6 промежуточных версии этого же участника) | |||
Строка 6: | Строка 6: | ||
* [http://GitLab.com GitLab.com]: aparinov | * [http://GitLab.com GitLab.com]: aparinov | ||
* [http://BitBucket.org BitBucket.org]: aparinov | * [http://BitBucket.org BitBucket.org]: aparinov | ||
− | + | * [http://goo.gl/forms/jSmn2B2NT0 Опрос] | |
== Что это за проект == | == Что это за проект == | ||
Строка 23: | Строка 23: | ||
* 3. Активная панель должна предоставлять возможность навигации между директориями. | * 3. Активная панель должна предоставлять возможность навигации между директориями. | ||
+ | == Чему вы научитесь == | ||
+ | |||
+ | 1. Освоите библиотеку терминального ввода-вывода (ncurses) | ||
+ | |||
+ | 2. Освоите работу с файловой системой в Unix | ||
+ | |||
+ | == Начальные требования == | ||
+ | |||
+ | 1. Умение разрабатывать программы на C или C++ | ||
== Критерии оценивания == | == Критерии оценивания == | ||
Строка 29: | Строка 38: | ||
Необходимо иметь приватный git-репозиторий на сайте [http://BitBucket.org BitBucket.org] с проектом, в который приглашен ментор [http://bitbucket.org/aparinov aparinov]. В репозитории должно быть: | Необходимо иметь приватный git-репозиторий на сайте [http://BitBucket.org BitBucket.org] с проектом, в который приглашен ментор [http://bitbucket.org/aparinov aparinov]. В репозитории должно быть: | ||
* Файл README.md, который содержит описание проекта, написанный в расчета на "конечного пользователя". Это описание должно быть написано '''самостоятельно''', а не скопировано из Wiki, и отражать Ваше понимание того, что нужно сделать. | * Файл README.md, который содержит описание проекта, написанный в расчета на "конечного пользователя". Это описание должно быть написано '''самостоятельно''', а не скопировано из Wiki, и отражать Ваше понимание того, что нужно сделать. | ||
− | |||
* Для тех, кто реализует проект на Си/C++, - проектный файл CMakeLists.txt. | * Для тех, кто реализует проект на Си/C++, - проектный файл CMakeLists.txt. | ||
+ | * Отображение двух панелей. Обе панели должны одновременно отображать директории и файлы файловой системы компьютера. | ||
+ | * Поддержка выбора активной панелями с помощью клавиши TAB | ||
+ | |||
+ | === Вторая контрольная точка (22 ноября 2015 г.) === | ||
+ | Реализован менеджер, открывающий в консоли два окна и позволяющий навигировать по файловой системе. | ||
+ | Отображение в правой и левой панели должно быть независимым. | ||
=== Итоговая оценка === | === Итоговая оценка === | ||
Строка 37: | Строка 51: | ||
* '''+2 балла'''. Поддерживается выделение файлов с помощью регулярных выражений и групповые операции с файлами. | * '''+2 балла'''. Поддерживается выделение файлов с помощью регулярных выражений и групповые операции с файлами. | ||
* '''+2 балла'''. Поддерживается запуск программ на выполнение, просмотр содержимого файлов (встроенный и с помощью произвольных программ просмотра). | * '''+2 балла'''. Поддерживается запуск программ на выполнение, просмотр содержимого файлов (встроенный и с помощью произвольных программ просмотра). | ||
− | |||
− | |||
− | |||
− |
Текущая версия на 12:38, 21 ноября 2015
Содержание
Метаданные проекта
ID проекта: mc Ментор проекта: Паринов А.А. Аккаунты ментора в git-сервисах:
- GitHub.com: aparinov
- GitLab.com: aparinov
- BitBucket.org: aparinov
- Опрос
Что это за проект
Введение
Задача файлового менеджера предоставить пользователю удобный интерфейс для работы с файловой системой. Помимо обязательной части функционала, по согласованию с ментором, приветствуется расширенная функциональность и авторская реализация выполнения стандартных операций.
Что требуется
Реализовать файловый менеджер, аналогичный Midnight Commander.
Функциональные требования:
- 1. Отображение двух панелей. Обе панели должны одновременно отображать директории и файлы файловой системы компьютера.
- 2. Поддержка выбора активной панелями с помощью клавиши TAB
- 3. Активная панель должна предоставлять возможность навигации между директориями.
Чему вы научитесь
1. Освоите библиотеку терминального ввода-вывода (ncurses)
2. Освоите работу с файловой системой в Unix
Начальные требования
1. Умение разрабатывать программы на C или C++
Критерии оценивания
Первая контрольная точка (24 октября 2015 г.)
Необходимо иметь приватный git-репозиторий на сайте BitBucket.org с проектом, в который приглашен ментор aparinov. В репозитории должно быть:
- Файл README.md, который содержит описание проекта, написанный в расчета на "конечного пользователя". Это описание должно быть написано самостоятельно, а не скопировано из Wiki, и отражать Ваше понимание того, что нужно сделать.
- Для тех, кто реализует проект на Си/C++, - проектный файл CMakeLists.txt.
- Отображение двух панелей. Обе панели должны одновременно отображать директории и файлы файловой системы компьютера.
- Поддержка выбора активной панелями с помощью клавиши TAB
Вторая контрольная точка (22 ноября 2015 г.)
Реализован менеджер, открывающий в консоли два окна и позволяющий навигировать по файловой системе. Отображение в правой и левой панели должно быть независимым.
Итоговая оценка
- 4 балла. Реализован менеджер, открывающий в консоли два окна и позволяющий навигировать по файловой системе.
- +2 балла. Поддерживаются операции копирования, перемещения файлов, создания каталогов, удаления.
- +2 балла. Поддерживается выделение файлов с помощью регулярных выражений и групповые операции с файлами.
- +2 балла. Поддерживается запуск программ на выполнение, просмотр содержимого файлов (встроенный и с помощью произвольных программ просмотра).