도서관 책 찾기앱
미로 같은 도서관에서 빠르게 책을 찾을 수 있는 솔루션
도서관에서 사람들이 책을 못찾아서 한숨을 쉬고 사서들이 비효율적으로 책 정리하는 광경을 봐서 책 위치를 지도로 알려주면 사람들의 스트레스를 줄일 수 있을 거라고 생각해서 만들었다.
바코드 인식 기능까지 넣어서 사서들이 책 위치 검색 후 효율적으로 책을 정리할 수 있게할 계획도 있었다.
이 앱 만들려고 듀이십이진법, 정보 디자인, SVG를 공부했다.
그래서 이제 책 위치 정보만 모으면 되는데..
여름방학 때 새 도서관을 짓기 위해 책을 임시서고로 옮긴다는 소식을 들었다.
방학때는 사람들이 도서관에 잘 안 가니 유통기한 10주짜리 앱이 될 상황이다.
백엔드 만들 때 배운 점
- 책 위치 정보 수집 후 파싱을 위한 헬퍼 함수를 만들었다.
리스트에 함수들을 각각 적용하는 apList
const apList = (list, ...fns) => fns.map((f, i) =>f(list[i]))
리스트의 인자가 술부 함수를 모두 만족하는지 확인하는 everyAp
const everyAp = (list, ...fns) => list.length === fns.length && l.map((l, i) =>fns[i](l)).every(Boolean)
함수 이름의 정확성에 의문이 들지만 함수형 코드와 명령형 코드를 조합할 때 유용하다.
프런트엔드 만들 때 배운 점
- 무한 스크롤을 적용해서 자연스러운 UI흐름을 만들었다.
- leaflet 라이브러리를 순수함수로 감싼 후 사용했다.
const map = drawMap('map')
const box = drawRectWithIndex(map)(10)
const shelf = getShelf([1, 2])
drawShelf(box)(shelf)
</pre>