TIL 09

오늘 한 일 / 배운점

  • 팀 내 코드 리뷰

  • Swift 문법 강의 수강

  • 팀 과제 코드 작성 / 제출 (팀장 JM님 통해서)
    → 일단 이번 필수 사항 Lv.3 까지는 충족이 된 것 같아서
    그렇다고 선택 과제 Lv.4, Lv.5까지는 시간이 모자랄 것 같고 개인적으로 궁금했던걸 해보았다.
    이번 키오스크를 맥도날드로 만들었는데 맥도날드에는 맥모닝과 맥런치가 있는데
    이용 시간대를 막아놔야 정상적이지 않겠는가.. 🧐

    let dateFormatter = DateFormatter()
    
    func currentTime() -> String {
        dateFormatter.locale = Locale(identifier:"ko_KR")
        dateFormatter.dateFormat = "HH:mm"
        let timeStr = dateFormatter.string(from: Date())
        return timeStr
    }
    // ... 코드 생략
         case .mcLunch :
                // 맥런치 이용시간 (10:30~14:00)이 아니면 카테고리 메인으로 돌아가도록
                if let mcLunchStartTime = dateFormatter.date(from: "10:30"),
                let mcLunchEndTime = dateFormatter.date(from: "14:00"),
                   let currentTime = dateFormatter.date(from: currentTime()) {
                    if currentTime >= mcLunchStartTime && currentTime <= mcLunchEndTime {
                        McLunch().askToCustomer()
                    } else {
                        print("⚠️ 맥런치 이용 가능 시간이 아닙니다. 다시 선택해 주세요.")
                        categoryMain()
                    }
                }
            case .mcMorning :
                // 맥모닝 이용시간 (04:00~10:30)이 아니면 카테고리 메인으로 돌아가도록
                if let mcLunchStartTime = dateFormatter.date(from: "04:00"),
                let mcLunchEndTime = dateFormatter.date(from: "10:30"),
                   let currentTime = dateFormatter.date(from: currentTime()) {
                    if currentTime >= mcLunchStartTime && currentTime <= mcLunchEndTime {
                        McMorning().askToCustomer()
                    } else {
                        print("⚠️ 맥모닝 이용 가능 시간이 아닙니다. 다시 선택해 주세요.")
                        categoryMain()
                    }
                }
    // ... 코드 생략
    

    위와 같이 현재 시간을 한국시간과 HH:mm로 가져와서 매번 콘솔에서 구분선에 표시해 주고
    맥런치와 맥모닝은 현재 시간과 비교해서 운영시간이 아니라면 거부 메시지를 띄우고
    다시 카테고리 메뉴를 보여주는 식으로 했다

    console 결과 ↓

    sc1 그리고 장바구니 배열을 만들어서 장바구니에 담는 것도 해보고 싶었는데
    시간이 부족해서 거기까지는 구현하지 못했다ㅜ

  • 다면 평가 작성

  • 이번 주 과제 해설 영상 시청

과제

  • 협업 툴 많이 사용해 보고 다음 팀 프로젝트 때 적극 활용하기

느낀점

전에 Flutter 팀 프로젝트 발표 때 다른 팀이 와이어 프레임을 FigJam으로 작성했던 것이 인상에 남아서
다음에 나도 한번 써봐야지 하다가 이번에 써보았는데
sc2

이런 식으로 쓰는 게 맞는지 모르겠지만
모르는 상황에서 썼는데도 기능들이 단순직관적이고 전체적인 흐름을 깔끔하게 정리할 수 있어서 좋았다 좀 기능을 더 익힌다면 협업할 때 분명 도움이 많이 될 것 같았다.