Menu
Coddy logo textTech

프로젝트 설정

Coddy GO 여정의 로직 & 흐름 섹션에 포함된 레슨 — 68개 중 20번째.

challenge icon

챌린지

쉬움

다음 몇 번의 레슨에 걸쳐, 사용자가 작업을 추가, 조회, 완료 및 삭제할 수 있는 간단한 명령줄 작업 목록 애플리케이션을 빌드하게 됩니다.

이 챌린지에서는 기본적인 데이터 구조와 사용자 인터페이스를 설정하여 작업 관리 시스템의 기초를 만듭니다. 이는 프로젝트 전반에 걸쳐 성장하게 될 완전한 작업 목록 애플리케이션을 구축하는 첫 번째 단계입니다.

두 개의 입력을 받게 됩니다:

  • 애플리케이션 이름을 나타내는 문자열 (예: "MyTasks")
  • 사용자의 이름을 나타내는 문자열 (예: "Alice")

여러분의 과제는 다음과 같습니다:

  1. 두 개의 필드를 가진 Task 구조체를 정의합니다:
    • Name (string) - 작업 설명
    • Completed (bool) - 작업 완료 여부
  2. 작업 목록을 담을 Task 구조체 슬라이스를 생성합니다 (초기에는 비어 있음)
  3. 다음 형식으로 환영 메시지를 표시합니다: "Welcome to [app_name], [user_name]!"
  4. 각 옵션을 별도의 줄에 표시하는 메뉴를 출력합니다:
    • "1. Add Task"
    • "2. View Tasks"
    • "3. Complete Task"
    • "4. Remove Task"
    • "5. Exit"
  5. 현재 작업의 개수를 다음 형식으로 출력합니다: "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 구조체 슬라이스 생성
    // 환영 메시지 및 메뉴 표시
    // 현재 작업 수 출력
    
}

로직 & 흐름의 모든 레슨