-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KDT0_ChoiJeeHoon 운전자 보험 고객 사진 및 정보 관리 서비스, Zero Car (영 차!) #54
Open
JitHoon
wants to merge
220
commits into
main
Choose a base branch
from
KDT0_ChoiJeeHoon
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
JitHoon
force-pushed
the
KDT0_ChoiJeeHoon
branch
from
August 26, 2023 09:54
b2a2bff
to
4eeb64e
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
임시 아이디 : 최지훈, 임시 비밀번호 : 777
개발자: 최지훈(Jit Hoon), 3조 화이탱✨
[ Zero Car (영차!) 개요 ]
Zero Car(영차!)는 운전자 보험 고객 사진 및 정보 관리를 CRUD 할 수 있는 서비스입니다.
[ ✨ Main Point : troubleshooting 기록]
Zero Car 프로젝트를 진행하면서 겪었던 trouble을 해결한 기록을 troubleshooting 파일에 기록해두었습니다.
Create
Read, Update
Read, Delete
반응형 화면
심사 화면
[ Environment ]
나는 왜 Firebase를 선택했는가?
[ 내 서비스 요구 사항 ]
[ AWS와 Firebase 비교 ]
첫 째, AWS와 Firebase의 공통 기능
둘 째, 앱의 프런트엔드와 통합하는 방법
Firebase
AWS
셋 째, AWS와 Firebase의 장점
Firebase
AWS
넷 째. 구축과 유지 보수에 필요한 노력
Firebase
- Firebase 콘솔의 UI는 정말 심플하고 사용하기 매우 간단하다.
- 비교적 사용하기 쉬운 SDK를 제공해 줌으로써 많은 시간을 절약할 수 있다.
AWS
- AWS가 제공해 주는 서비스는 Firebase보다 10배 더 많다. Firebase와 비교하면 AWS는 약간의 학습 곡선이 있다.
- 간단한 실시간 앱을 만들 때도 필요한 API와 데이터베이스를 설정해야 합니다.
[ 결론 ]
Firebase (선택)
AWS
참고자료
나는 왜 Firebase와 모듈 번들러인 webpack을 함께 사용했는가?
나는 왜 Babel을 사용했는가?
나는 왜 SPA가 아닌, MPA로 구현했는가?
결론
SPA (Single Page Application)
개념
모던 웹의 패러다임으로, 한 개(Single)의 Page로 구성된 Application 이다.
서버로부터 완전한 새로운 페이지를 불러오지 않고 현재의 페이지를 동적으로 다시 작성함으로써 사용자와 소통하는 웹 애플리케이션이나 웹사이트를 말한다.
작동 방식
SPA는 웹 에플리케이션에 필요한 모든 정적 리소스를 최초 접근 시 단 한번만 다운로드한다.
이후 새로운 페이지 요청 시, 페이지 갱신에 필요한 데이터만을 JSON으로 전달받아 페이지를 갱신한다. 기존 페이지의 내부를 수정해서 보여주는 방식이다.
장점
단점
MPA (Multiple Page Application)
개념
기존 웹의 패러다임으로, 여러 개(Multiple)의 Page로 구성된 Application 이다.
작동 방식
새로운 페이지를 요청할 때마다 서버에서 렌더링된 정적 리소스(HTML, CSS, JavaScript)가 다운로드된다. 페이지 이동하거나 새로고침하면 전체 페이지를 다시 렌더링한다.
장점
단점
[ Development ]
[ User Flow ]
[ 어려웠던 점과 배운점 ]
프로젝트 환경에 필요한 다양한 외부 모듈과 개발 플랫폼들을 동시에 세팅하고 사용하는 것에 어려움을 겪었다. 예를들어 firebase와 webpack을 함께 사용하기 위해서 필요한 명령어나 과정이 따로 있거나, babel, env 설치에서 끝나는 것이 아니라 webpack에 추가 설정을 해주어야 한다는 점이 어려웠다.
하지만 공식 문서를 잘 살펴보면 다 방법이 있고 해결할 수 있었다. 프로젝트 초반부터 이 부분에 대해 어려움을 겪어서 troubleshooting 파일 최상단에 "firebase webpack babel sass 개발환경 세팅.md" 파일에 내용을 정리해 두었다.
프로젝트에 필요한 디자인과 스타일링이 늘어나면서 중복 되는 CSS 코드가 많아 SASS(SCSS)를 적극적으로 사용해보았다. 특히 mixin을 사용하여 반응형에 대한 반복되는 코드 작업 시간을 줄일 수 있어서 좋았다.
하지만 아직 SCSS에서 사용할 수 있는 효율적인 문법을 전부 다 알고있지 않아서 해당 프로젝트에서 SCSS의 이점을 극대화하지 못했다는 생각이 들었다. Refactoring 과정에서 이 부분을 더 공부하고 보완해 나갈 생각이다.
프로젝트에 필요한 기능들이 많아지면서, 각 기능 별로 파일을 분리하는데 어려움을 겪었다.
예를들어 보험자 정보를 업데이트하는 기능 안에 input data 가져오는 기능, mock data 생성 후 가져오는 기능, image를 storage에 따로 저장하고 이미지 url을 가져오는 기능 등 다양한 기능들이 포함되어있어서 각각의 기능들을 어떤 기준으로 분리해야하고 어느 파일에 함께 보관해야하는지 어려움을 겪었다.
내가 선택한 방식은, troubleshooting/fe clean code.md 에서 확인 가능하다.
야놀자 테크 캠프 JS 과제 설명
직원 사진 관리 서비스
직원들의 사진을 관리할 수 있는 사진 관리자 서비스를 만들어 보세요.
과제 수행 및 리뷰 기간은 별도 공지를 참고하세요!
[과제 수행 및 제출 방법]
[필수 요구사항]
[선택 요구사항]