문제은행 프로그램(cs)의 모바일 커뮤니티 앱
학교/학원/과외 선생님들이 수학문제 제작에 있어 편리함을 제공하는 문제은행 프로그램에 대한 편리한 운영을 위한 플랫폼으로 자동로그인/로그아웃, QnA, 메뉴얼, 사용 팁 ,공지사항 등 사용자들 간의 커뮤니케이션을 위한 Android 및 IOS 앱이다.
- 당근 마켓, 중고나라 등의 앱을 벤치마킹하여 소비자 입장에서 가장 편한 UI가 무엇일지 고민하였고 심플한 디자인을 추구함
- 로그인과 관련된 기능은 MSSQL을 통해 DB에서 회원 정보를 조회하여 이루어지도록 구현
- 글 업로드 시 글은 MSSQL Server의 DB에, 이미지는 Python Flask를 이용하여 POST로 Apach 서버에 저장하고, Apache 서버의 이미지 URL을 DB에 넣어 글을 조회할 때 이미지 볼 수 있도록 구현
- React Native(0.63.4) Without Expo (react-native-cli)
- Redux
- MSSQL(MS SQL Server)
- Apache
- Python(Flask)
- 기타 사용된 라이브러리 package.json 참고
- src
- ㄴ assets: 앱에 이용되는 이미지 리소스들
- ㄴ components: 재사용이 가능한 헤더, 각종 버튼, 이미지 슬라이더 등의 컴포넌트들
- ㄴ helpers: 이메일, 이름, 패스워드 등의 검증 기능들
- ㄴ redux: 전역 상태 관리용 디렉토리
- ㄴ screens: 앱에 사용되는 모든 화면들
- App.js: 앱의 Splash image를 보여준 뒤 보일 화면을 결정하도록 구현
- index.js: Redux를 통한 전역 상태 관리를 위해 Provider로 App.js 컴포넌트를 감싸 구현
| 전체 앱 화면 |
 |
| 이메일 형식 오류 |
자동 로그인 및 로그아웃 |
글 및 이미지 업로드 |
 |
 |
 |
| 댓글 등록과 삭제 |
외부로 글 공유 |
글 수정 및 삭제 |
 |
 |
 |
| 무한 스크롤 |
당겨서 새로고침 |
구독 했을 경우와 하지 않았을 경우 |
 |
 |
 |
로그인 구현 시 뒤로 이동 버튼을 클릭하면 앱 종료가 아닌 로그인 화면으로 다시 이동하는 이슈 발생, 페이지가 페이지 위에 쌓이는 방식(navigate)이 아닌 재위치(replace) 시키는 방식으로 해결.