안녕하세요. 카우 서버 파트 멘토진입니다.
먼저 저희 서버 파트에 지원해주신 여러분께 진심으로 감사 인사드립니다!!
저희 서버 파트에서는 스프링을 활용하여 웹 서비스의 서버 개발을 배우는 시간을 가질 예정입니다.
이 과정에서는 자바 언어에 대한 기본적인 이해가 필요하며, 또한 객체 지향적인 사고 방식이 요구됩니다. 또한 세션 중 진행되는 과제 제출 방법 역시 github에 PR(Pull Request)를 올리는 방식으로 진행됩니다.
이런 이유로 간단한 사전 과제를 준비했습니다.
저희가 과제를 통해 평가하고자 하는 내용은 다음과 같습니다.
- github를 통해 주어진 요구사항에 맞도록 PR을 올릴 수 있는가
- 객체를 얼마나 잘 분리했는지와 요구사항을 얼마나 잘 충족시켰는가
이 두 가지로 저희 서버 파트에 참여하는 최소한의 기준을 평가하게 됩니다.
여러분의 멋진 결과물을 기대하겠습니다. 🔥
다음은 여러분들이 과제를 수월하게 진행할 수 있도록 상세한 평가 기준과 과제 제출 관련 내용 및 PR 작성법에 대해 알려드리겠습니다!
모르는 부분이 있으면 카카오톡 오픈 채팅방으로 편하게 질문해주세요! 오픈 채팅방 링크 : 과제 테스트 문의방
- 실행결과 요약(실행화면을 캡쳐하셔서 과제제출 PR에 함께 제출해주시면 됩니다.)
- 자신의 코드에 대한 간단한 소개 및 설명
• 주문 가능한 메뉴를 출력하고, 사용자로부터 메뉴를 입력받습니다.
• 입력받은 메뉴를 주문 리스트에 추가하고, 메뉴 가격을 총 금액에 더합니다.
• 주문할 수 있는 최대 개수는 5개입니다.
• 현재까지 주문한 메뉴 리스트를 출력합니다.
• 취소할 메뉴 번호를 입력받아 해당 메뉴를 주문 리스트에서 제거합니다.
• 메뉴 가격을 총 금액에서 차감합니다.
• 총 금액을 출력합니다.
• 사용자가 지불할 금액을 입력받고, 잔돈을 계산하여 출력합니다.
• 결제가 완료되면 총 금액과 주문 리스트를 초기화합니다.
• 프로그램을 종료합니다.
• 사용자 입력을 통해 주문, 취소, 결제, 종료 기능이 정상적으로 동작해야 합니다.
• 각 기능에 대한 유효성 검사를 수행하여 잘못된 입력이 있을 경우 적절한 메시지를 출력해야 합니다.
사전과제 제출방식 설명은 다른 파일에서 자세히 설명드리겠습니다!
- 클래스(객체)를 적절하게 분리했는가
이에 대해 당장 감이 오지 않으셔도 좋습니다! 저희 세션에서 객체지향에 대한 구현을 함께 진행할 예정이니까요 😆
다만 아래의 예시를 참고하셔서 어떤 방식으로 분리하면 좋을지 고민한 흔적이 있다면 저희는 이를 높이 평가할 예정입니다.
❗️❗️ 예시 코드는 절대 정답이 될 수 없습니다! 면접에서 간단하게 코드에 대한 질문을 드릴 예정입니다. 복사한 코드는 면접에서 불이익이 될 수 있다는 점 명심해주세요. ❗️❗️
- 적절한 Java의 내장 기능 활용
Java에는 객체지향에 유용하게 활용할 수 있는 다양한 기능을 지원합니다. 이에 대해 찾아보시고 적용까지 해본 경험은 곧 실력이 된다고 생각합니다.
저희는 이런 도전 및 탄탄한 실력에 가산점을 드릴 예정입니다.
- Java 코딩 컨벤션을 지키려 노력했는가
- 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다.
- 힌트: indent(인덴트, 들여쓰기) depth를 줄이는 좋은 방법은 함수(또는 메서드)를 분리하면 된다.
대부분의 개발자는 혼자 일을 하지 않습니다. 동아리도 마찬가지고요. 코드에 대한 몇 가지 규칙을 지킨다면 여러분의 코드 수준은 더 높다고 할 수 있을 것입니다. 저희는 이를 분명한 강점으로 판단하여 가산점을 드릴 예정입니다.
코드 컨벤션 예시 : https://naver.github.io/hackday-conventions-java/
절대 이 컨벤션을 모두 숙지하셔서 과제를 진행하실 필요없습니다. 가산점이 없더라도 충분히 합격하실 수 있으니 부담갖지 않으셔도 됩니다
☺️
- 실행되지 않는 코드
- 알아보기 힘든 로직, 네이밍
- 요구사항 불충족
- 다른 사람의 코드와 지나치게 비슷한 경우 면접에서 해당 코드에 대해 집중적으로 질문 받을 수 있습니다.
- 제출 형식: 제출 시, 요구된 파일 형식을 지켜 주세요. 요구된 형식이 아닌 다른 형식으로 제출할 경우, 평가에 반영될 수 있습니다. 사전 과제 제출 방식 설명을 꼭 참고해주세요!
- 기한 엄수: 제출 기한을 엄수해 주세요. 기한을 넘길 경우 평가에서 불이익이 있을 수 있습니다.