소마에서 flask를 사용해서 back-end 해커톤을 진행했다.
짜면서 제일 신기했던 게
try-except-finally, try-except-else이다.
try에서 POST request를 받고 오류가 발생하면 except로 넘어가고, except에서 BAD REQUEST를 리턴해주고, finally에선s GOOD REQUEST를 리턴해 주었다.
try: // POST form parameter 검사 exception Exception as E: return "bad request!" finally: return "good request!"
그래서 try에서 진행하는 POST form parameter를 검사 한 후 오류가 있으면 bad request를 리턴할 줄 알았다.
그런데..
https://reference-m1.tistory.com/245
return이 있으면 거기서 함수가 종료될거라는 내 생각과 다르게, 무조건 finally에 있는 값이 리턴되어서 계속 good request가 리턴된다.
try: // POST form parameter 검사 exception Exception as E: return "bad request!" else: return "good request!"
그래서, 위처럼 try exception else를 이용해서 exception이 '나지 않은' 경우에만 else로 넘어가게 구현해 주어야 한다.
해커톤
작은 프로젝트지만, 같이 API 명세 짜고 막히는 거 같이 해결해 나가는 과정이 재밌었다.
그리고 발표 순서 같은 거? (UML이나, markdown, 프로젝트 하면서 배운 html, API 명세 같은 거) 배울 수 있어서 좋았던 것 같다.
"""
발표 준비과정
README.md file 형식
- 프로젝트 이름
- 팀네임
1) 팀소개
- 팀 이름 : ~
- 팀장 : ~
- 팀원 : ~
- 역할 : ~~~
2) 개요
프로젝트를 하는 이유
3) DB schema
그림으로 구성
4) 구성도
- use case diagram(사용자에게 어떤 서비스를 제공하는지)
5) 동작 구현
6) 실행 화면
7) 결론
"""
특히, 팀원분한테 RDBMS(MySQL)쪽 쿼리 깔끔하게 짰다는 이야기를 들어서 기분이 좋았다.
INSERT INTO USERS(EMAIL, NICK, SCORE) VALUES(%s, %s, %s) ON DUPLICATE KEY UPDATE NICK = IF(USERS.SCORE
'내가 하고싶은 것! > Software Maestro' 카테고리의 다른 글
컴퓨터 구입 프로젝트 1차 심의 끝! (0) | 2022.09.23 |
---|---|
5/26 - 5/28 design thinking (0) | 2022.09.23 |
0313 - 소마 2차 코딩테스트 (0) | 2022.09.23 |
0227 공부 - 소마 1차 코테 (0) | 2022.09.23 |
SW마에스트로 12기 지원서 작성 (0) | 2022.09.23 |