amymeme / re-cycle-app Goto Github PK
View Code? Open in Web Editor NEWRE:cycle app project
RE:cycle app project
repository 리턴값인 querydocumentsnapshot이 firestore에서 따로 관리하는 객체인지 잘 알수가 없어서, mock을 생성할 수 없어서 더 알아보거나 다른 방법을 찾아봐야할 것 같음
안드로이드 작업할 동안 리팩토링 등 유지보수를 해보기
찾아보니까 Firebase에 DB로 쓸 수 있는게 있는데, 원래 Google Storage를 포함해서 실시간 DB, firestore가 있음
구글 스토리지는 90일 300$이용이나 for firebase용도 따로 있는 것 같은데,
java지원이 안되고, 우리가 갖고 있는 데이터에 적합하지 않아보임.
이미지같은 큰 바이너리 데이터를 저장할 때 가장 유용할 것 같음
NoSQL 형태, Android, iOS, 자바스크립트 SDK로 연동할 수 있음
따라서 클라이언트 쪽에서는 잘 모르겠는데, 백엔드 쪽에서는 잘 모르겠음
NoSQL 형태. 백엔드 쪽에도 적합해 보임
안드로이드(자바, 코틀린 모두 지원), iOS, 노드JS, 스프링, 파이썬, golang 모두 지원하고
우리가 저장할 데이터가 그렇게 큰 편이 아니어서 적합해보임
파이어 스토어에서 /를 기준으로 콜렉션 및 도큐먼트 분류를 하므로 /
가 들어가면 에러가 발생함
ex : 맥주병/소주병
가끔 given(mockBean.xxxMethods(BBB)).willReturn(CCC)를 해도 NPE가 발생함
CCC가 리턴되지 않고 null이 리턴된다는 것인데, 라이브러리 버그 같음
mockBean에서 같은 객체로 인식하지 않는 문제인 것 같음
firestore에 생성되지 않은 새로운 material를 기준으로 guide를 만들면, GET /materials
시 보이지 않음
서로 다른 부분 코드만을 보니까 서로의 코드를 볼 때 힘드니 작게 커밋을 해주는 게 좋을 것 같음
그리고 대충 이 커밋이 어떤 내용인지를 알 수 있게 커밋 메시지 컨벤션이 통일되었으면 좋겠음
feat() :
새로운 기능 추가할 때
fix() :
버그 수정할 때
docs() :
문서 추가 및 변경할 때
style()
코드 포맷팅, 로직의 변화는 없이 띄어쓰기나 탭 문자 등의 사소한 변화가 있을 때
refactor() :
리팩토링할 때
test() :
테스트 코드 수정 및 변경할 때
chore() :
빌드 및 패키지 매니저 수정 등 maintain할 떄
()
괄호 안에는 클래스명등 어디를 고쳤는지 정도를 적고, 뒤에 무엇이 달라졌고 왜 수정했는지 현재형으로 적는다
feat(Location): add location class
fix(Location): fix bug for addLocation method
docs(README.md) : check plans
데이터베이스 커넥션 풀을 위해 싱글톤 데이터베이스 객체가 필요함 -> PostConstruct로 세팅
하지만,
파이어스토어 데이터 베이스 연동시 google credential json파일이 필요한데, 로컬에선 classpath밑에 위치시켜서 불러오고 있지만,
구글에서는 시스템 환경변수로 json파일의 위치 경로를 저장하는 것을 추천하고 있음
배포시 어떻게 할지 고민해야함
개인적으로 현재 방법<<2<1 순으로 추천될 것 같음
현재 서비스가 너무 많은 담당을 하는 느낌이 들어서 레포지토리를 만드는 게 어떨까
물론, 파이어스토어에서 레포지토리를 기본적으로 지원해주지는 않지만, 시도해보자
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.