본문 바로가기

사이드2

유틸과 헬퍼함수를 정리해보기. 개발을 하다 보면 핵심 기능은 아니지만 자잘하게 여러 곳에서 공통적으로 쓰이는 헬퍼나 유틸 따위로 지칭 가능한 코드들이 존재한다. 개인적으로 어떤 완성품(프로덕트)보다 개발을 위한 프로덕트 느낌의 도구들을 만들고 설계하고 고민하는데 더 관심을 가지는 입장에서는 최근에 뒤늦게 해당 부분들을 개인적으로 정리해서 패키지화 해볼 생각을 하게 되었다. 우선 프론트 개발 위주로 정리해보는 중이다. 간단한 wrap에 해당하는 함수부터 여기저기 자주 쓰이는 함수들까지 jest를 이용한 TDD 형식을 적당히 지켜가면서 생각나는대로 또 귀찮음을 이기는대로 간단하게나마 조금씩 진행해보고 있다. import isArray from './isArray'; describe('isArray', () => { test('arg is.. 2022. 12. 21.
[JS]노션 기능을 간단히 따라 만들어보며 의외로 사람들이 노션 기능 구현 자체를 어려운 것으로 생각한다는 소리를 듣고 간단히 구현해보았다. 나도 노션은 잘 만든 소프트웨어라고 생각하고 잘 사용하고 있지만 사실 기능 자체를 구현하는데 어려운게 있을거라고 생각해본 적은 없었기에 그냥 바닐라 js로 간단히 생각대로 만들어보고 그 점에 대해서 간단히 정리해본다.(물론 기능이 아닌 노션의 UI/UX는 만들기 쉽지 않다.) 먼저 노션은 본질적으로 메모장처럼 데이터를 저장하고 불러오고 수정하는 기능을 지원해야한다. 노션 자체의 기본 틀은 여러 페이지의 관계로 구성 되어 있어서 간단하게 자료구조를 잡아보면 페이지 목록 과 그 페이지에 해당하는 컨텐츠 2가지로 나뉠 수 있다. 그리고 초기 로딩시 그 데이터를 불러오는 것과 데이터를 저장하는 부분이 필요하다. l.. 2022. 3. 7.