В предыдущих статьях мы рассмотрели основы языка программирования Rust. Теперь давайте закрепим наши знания и применим их на практике, решив реальную задачу.
Задача: Простое приложение для учета задач
Вам предстоит создать простое приложение для учета задач. Приложение должно позволять пользователю выполнять следующие действия:
- Добавление новой задачи с указанием названия и описания.
- Просмотр списка всех задач.
- Отметка задачи как выполненной.
- Удаление задачи.
Требования к реализации:
- Создайте структуру Task, которая будет представлять собой одну задачу с полями для названия, описания и статуса выполнения.
- Создайте вектор для хранения списка задач.
- Реализуйте функцию add_task, которая принимает название и описание задачи, добавляет её в вектор и выводит сообщение об успешном добавлении.
- Реализуйте функцию view_tasks, которая выводит на экран список всех задач с их названиями, описанием и статусом выполнения.
- Реализуйте функцию mark_task_done, которая принимает индекс задачи в векторе и отмечает её как выполненную.
- Реализуйте функцию remove_task, которая принимает индекс задачи в векторе и удаляет её из списка.
- В главной функции main создайте простой интерфейс командной строки, в котором пользователь может выбирать действия: добавить задачу, просмотреть список задач, отметить задачу выполненной или удалить задачу.
Пример выполнения программы:
markdownCopy code
Простое приложение для учета задач
Выберите действие:
1. Добавить задачу
2. Просмотреть список задач
3. Отметить задачу выполненной
4. Удалить задачу
0. Выход
Введите номер действия: 1
Введите название задачи: Покупка продуктов
Введите описание задачи: Купить молоко, яйца, хлеб
Задача успешно добавлена!
Выберите действие:
1. Добавить задачу
2. Просмотреть список задач
3. Отметить задачу выполненной
4. Удалить задачу
0. Выход
Введите номер действия: 2
Список задач:
1. Название: Покупка продуктов
Описание: Купить молоко, яйца, хлеб
Статус: Не выполнено
Выберите действие:
1. Добавить задачу
2. Просмотреть список задач
3. Отметить задачу выполненной
4. Удалить задачу
0. Выход
Введите номер действия: 3
Введите номер задачи для отметки выполненной: 1
Задача "Покупка продуктов" отмечена выполненной!
Выберите действие:
1. Добавить задачу
2. Просмотреть список задач
3. Отметить задачу выполненной
4. Удалить задачу
0. Выход
Введите номер действия: 2
Список задач:
1. Название: Покупка продуктов
Описание: Купить молоко, яйца, хлеб
Статус: Выполнено
Выберите действие:
1. Добавить задачу
2. Просмотреть список задач
3. Отметить задачу выполненной
4. Удалить задачу
0. Выход
Введите номер действия: 4
Введите номер задачи для удаления: 1
Задача "Покупка продуктов" успешно удалена!
Выберите действие:
1. Добавить задачу
2. Просмотреть список задач
3. Отметить задачу выполненной
4. Удалить задачу
0. Выход
Введите номер действия: 0
Программа завершена.
Заключение
Поздравляем, теперь вы знаете основы языка программирования Rust! Вы познакомились с основными концепциями, такими как переменные, условные операторы, циклы, функции, структуры данных, обработка ошибок, трейты и другие особенности языка.
Rust - мощный и безопасный язык программирования, который предоставляет широкие возможности для разработки производительных и надежных приложений. Мы надеемся, что этот курс помог вам начать ваше путешествие в мир Rust и дал вам базовые знания, которые можно использовать для создания различных проектов.
Задание:
Ваше финальное задание - создать и закончить приложение для учета задач, как описано в предыдущей части. Постарайтесь максимально использовать все изученные концепции Rust, такие как переменные, условные операторы, циклы, функции, структуры данных, обработка ошибок и трейты.
Создайте отдельный Git репозиторий для своего проекта, исходный код приложения поместите в этот репозиторий, и не забудьте приложить README.md с описанием приложения, его функциональностью и примерами использования. Это позволит вам продемонстрировать свои навыки программирования на Rust и создать портфолио, которое можно будет показать потенциальным работодателям или сообществу. Удачи в создании вашего приложения на Rust!