일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 중복카테고리
- NextJS v13
- 탐욕알고리즘
- 로딩 후 실행
- db수정
- 리액트 원리
- 부트캠프항해
- 항해99추천
- 자바스크립트로 spa구현하기
- 알고리즘
- react
- 숫자를 별점으로
- 중복선택
- JavaScript
- 항해99후기
- 카테고리필터
- 항해99
- 프로그래머스
- 배열 중복 제거
- server component
- 자바스크립트
- 서버 컴포넌트
- jQuery
- greedy
- 그리디
- 날씨 api
- 리액트
- 백준
- 항해플러스
- 클라이언트 컴포넌트
- Today
- Total
공부 및 일상기록
일상의 방탈출 리팩토링 계획 본문
프론트 3명, 백엔드 3명, 디자이너 1명의 팀으로 만들었던 프로젝트인 일상의 방탈출을 리팩토링 하려고 한다.
그 제일 큰 목적은 처음으로 팀 단위로 만든 프로젝트이며, 애착 남아있고, 실제 사용자를 받아보고 싶어서 이다.
그리고 부수적인 목적으로 깔끔한 코드 작성 공부와 타입스크립트 공부, 반응형 공부가 있다.
이 리팩토링은 프론트엔드 부분은 나 혼자 진행하고, 백엔드 부분은 같이 했던 백엔드 개발자 한분이 하기로 했다.
나의 계획은 이렇다.
1. 타입스크립트로 마이그레이션
점차 기능이 많이 붙고, 이미 내가 만든 코드가 아닌것들도 많아서 어떤 데이터가 받아지는지 헷갈릴 때도 많고, 누군가가 합류하게 된다면 그 사람도 헷갈릴 가능성이 있기 때문에 타입스크립트로 마이그레이션 하려고 한다.
2. 코드 분할
아무래도 리액트를 공부하고 한달만에 만든 프로젝트라서 그런지.. 가독성이 매우 떨어지고, 함수와 UI가 섞여있으며 비즈니스로직을 따로 관리하지도 않았고, 쓸데없이 사용하는 라이브러리들도 많았다. 이러한 코드들부터 차근차근 수정해 나갈 예정이다.
3. 반응형 UI
당시 웹 전용으로 디자인이 되어 모바일에서는 보기 어려운 웹 사이트가 되었다. 실제 사용자들은 모바일 기기로 많이 사용하게 될것이라 판단하여 반응형 디자인을 만들어 보기로 했다. 나는 예쁘게 꾸미는것은 잘 하지 못해서 디자인은 백엔드 분과 함께 피드백을 주고받으며 진행하기로 했다. CSS는 기존 그대로 Styled components를 사용할 예정이다.
4. 기능 추가
현재 비슷한 서비스들을 보면 우리가 만든것 처럼 자세한 테마와 업체별 필터기능은 없지만, 제일 중요한 예약 가능 시간을 보여주고있다. 우리는 해당 기능이 없기에 이 부분을 중점적으로 개발해나가기로 했다. 그 외에도 여러 기능을 추가할 것인데 그 기능들은 다음과 같다.
1. 예약 가능 여부 확인 기능
2. 좋아요를 체크해둔 테마가 예약 가능이 되면 카톡 or Email 알림 주기
3. 커뮤니티 기능을 만들어서 나와 비슷한 성향을 가진 사람과 같이 방탈출을 즐기러 갈 수 있는 서비스 제공
4. 현재 스켈레톤 UI가 적용되어 있지 않은데 해당 기능을 넣어 좀 더 부드러운 화면을 통해 사용자 경험을 증대시킬 예정이다.
5. 기능 수정
우리는 방탈출 업적에 따른 뱃지를 부여하는 시스템을 가지고 있는데, 이 부여 시스템이 완전 수동방식이다. 따라서 해당 조건만 충족되면 알림과 함께 뱃지를 부여해주는 방식으로 수정할 예정이다.
나는 어제부터 타입스크립트로 마이그레이션하는 작업을 시작했다. 타입스크립트를 따로 공부했지만 역시 실전에 적용해보니 너무 헷갈리고 있었다.
개발 공부를 하면서 크게 느끼는것 중 하나는 영상을 보거나 책을 읽고 배운 지식은 그냥 이해에만 도움이 될 뿐, 실제 내 실력이 오르진 않는다는 것이다.
이렇게 직접 해보기 전까지는 내가 뭘 모르는지 조차 알지 못한다. 이번 리팩토링을 통해 여러마리의 토끼를 잡기를 원하고 있다.
'프로젝트 > 일탈+' 카테고리의 다른 글
position:fixed가 모바일화면에서만 안될때 (0) | 2023.05.28 |
---|