이번 주의 발제가 끝나고 난 뒤 바로 팀원들과 회의를 하며, 어떤 방식으로 프로젝트를 개발할 지 바로 회의에 들어갔다.
이번 팀원들과 한 팀이 되고, 2주 동안 매일 2번씩 회의를 했더니 모두 의견을 척척 내놓으면서 적극 수용해서 막힘이 없이 진행이 됐다.
오늘 작성했던 프로젝트 회의 결과록을 적어보려고 한다.
제목 : Oripresso
설명 : 메인페이지에는 카페의 메뉴들과 가격을 표시하고, 주문내역 페이지에는 선택한 메뉴들과 합산 가격, 결제하기 버튼을 표시하는 키오스크 어플입니다.

와이어프레임은 디자인을 전공하셨던 팀원분이 계셔서 'Figma'를 이용해 생각보다 빠르게 진행이 됐다.
UIStackView , UICollectionView 등을 활용하여 화면을 구성UITableView 등을 활용하여 화면을 구성+, -버튼을 만들어서 해당 메뉴의 수량을 조정UITableView 등을 활용하여 화면을 구성UIAlertController 창 표시프로젝트의 페이지는 총 3개로 구성했으며, '메인 페이지'에 2명, '주문 내역 페이지'에 2명 그리고 '결제 완료 페이지'에 1명을 배치하여 개발할 수 있도록 계획했다.
- 클래스, 구조체, 열거형 이름은 UpperCamelCase를 사용합니다.
- 함수, 변수, 상수 이름은 lowerCamelCase를 사용합니다.
- 약어는 모두 대문자로 표기합니다. (예: URL, ID)
- 들여쓰기는 공백 4칸을 사용합니다.
- 콜론(:) 앞에는 공백을 없애고, 콜론 뒤에는 공백을 추가합니다.
- 연산자 앞뒤로 공백을 추가합니다.
- 쉼표(,) 뒤에는 공백을 추가합니다.
- `if let` 구문이 길 경우에는 줄바꿈하고 한 칸 들여씁니다.
- 빈 줄에는 공백이 포함되지 않도록 합니다.
- 한 줄의 길이는 80자 또는 100자를 넘지 않도록 합니다.
- 긴 줄은 적절한 위치에서 줄바꿈하고 들여쓰기를 사용합니다.
- 모듈 임포트는 알파벳 순으로 정렬합니다. 내장 프레임워크를 먼저 임포트하고, 빈 줄로 구분하여 서드파티 프레임워크를 임포트합니다.
- 코드의 의도와 목적을 명확히 설명하는 주석을 작성합니다.
- `///`를 사용해서 문서화에 사용되는 주석을 남깁니다.
- `// MARK: -`를 사용해서 연관된 코드를 구분짓습니다.
- 여는 중괄호({)는 같은 줄에 위치시키고, 닫는 중괄호(})는 새로운 줄에 위치시킵니다.
- 조건문과 반복문에서 중괄호는 항상 사용합니다.
- guard 문을 사용하여 옵셔널 바인딩과 조건 검사를 수행합니다.
- 타입 추론을 활용하되, 명시적으로 타입을 지정해야 할 때는 지정합니다.
- 프로토콜 채택 시 extension을 사용하여 관련 메서드를 그룹화합니다.
- 필요 이상으로 복잡한 코드는 피하고, 간결하고 이해하기 쉽게 작성합니다.
프로젝트의 코드 컨벤션은 팀원 중에 팀프로젝트를 진행했던 분이 계셔서, 그 분이 팀에서 정했던 코드 컨벤션을 차용해서 사용하기로 정했다.