Настройка проекта
Часть раздела Логика и управление потоком путешествия по 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Интерфейсы (Основы)
Что такое интерфейс?Определение интерфейсаРеализация интерфейсаИспользование интерфейсных типовПустой интерфейсУтверждение типаПереключатель типовИтоги: Фигуры и поведение