Настройка проекта
Часть раздела Логика и управление потоком путешествия по GO на Coddy. Урок 20 из 68.
Задание
ЛегкоВ течение следующих нескольких уроков вы создадите простое консольное приложение для управления списком задач, которое позволит пользователям добавлять, просматривать, отмечать как выполненные и удалять задачи.
В этом испытании вы заложите основу системы управления задачами, настроив базовую структуру данных и пользовательский интерфейс. Это первый шаг в создании полноценного приложения для работы со списком задач, которое будет развиваться на протяжении всего проекта.
Вы получите два входных значения:
- Строку, представляющую название приложения (например,
"MyTasks") - Строку, представляющую имя пользователя (например,
"Alice")
Ваша задача:
- Определить структуру
Taskс двумя полями:Name(string) — описание задачиCompleted(bool) — завершена ли задача
- Создать слайс структур
Taskдля хранения вашего списка задач (изначально пустой) - Вывести приветственное сообщение в формате:
"Welcome to [app_name], [user_name]!" - Вывести меню со следующими опциями, каждую на отдельной строке:
"1. Add Task""2. View Tasks""3. Complete Task""4. Remove Task""5. Exit"
- Вывести текущее количество задач в формате:
"Current tasks: [count]"
Это испытание формирует основную структуру, которая будет поддерживать всю будущую функциональность вашей системы управления задачами. Структура Task станет строительным блоком для хранения отдельных задач, а слайс позволит управлять их коллекцией. Меню предоставляет понятный интерфейс, чтобы пользователи знали, какие действия они могут выполнить.
Попробуйте сами
package main
import "fmt"
func main() {
// Чтение входных данных
var appName string
var userName string
fmt.Scanln(&appName)
fmt.Scanln(&userName)
// TODO: Напишите свой код ниже
// Определение структуры Task
// Создание среза структур Task
// Отображение приветственного сообщения и меню
// Вывод текущего количества задач
}Все уроки раздела Логика и управление потоком
1Продвинутое управление потоком выполнения
Switch с использованием `fallthrough`Выход из вложенных цикловПродолжение конкретного циклаОператор `goto`Итоги: Продвинутое управление циклами4Проект: Простой список задач
Настройка проектаДобавление задачи2Структуры и методы
Определение методов для структурПолучатели по значениюПолучатели по указателюВыбор типа получателяМетоды против функцийИтоги: поведение структур5Карты: подробный разбор
Карты структурУказатели как значения картПроверка карт на nilСравнение картИтоги: счетчик частоты слов3Интерфейсы (Основы)
Что такое интерфейс?Определение интерфейсаРеализация интерфейсаИспользование интерфейсных типовПустой интерфейсУтверждение типаПереключатель типовИтоги: Фигуры и поведениеПотренируйтесь самостоятельно: Онлайн-компилятор Go