늘 시간이 지나고 보면 내가 무엇을 했는지 잘 모를때가 많다. 하루종일 컴퓨터 앞에 앉아있는데 컴퓨터를 하면서 뭘 했는지 지나고나면 다 잊어버리고 만다. 몇일을 놀았는데 뭘 하고 놀았는지 설명하기도 어려울 정도로 기억에 남지 않는다.
만들기에 앞서 디자인 및 설계를 하기로 했다. 대충 어떻게 만들지 구상을 해놓았고, 실제로 만들던 중이었기에 시간이 오래 걸리지는 않았다. 그래도 어떤식으로 만들지 직접 그려보고, 생각하면서 내가 놓치고 있던 부분도 다시 알게 되었다.
크롬 확장 프로그램을 만들기 위해서는 manifest.json 파일을 만들어야한다. 이 파일은 확장프로그램의 이름, 버전, 권한 등의 정보를 갖는 파일이다.
오늘은 이전에 했던 화면 설계대로 메인화면을 만들었다. html을 이용하여 만들수도 있었지만 js에 대한 공부 목적이 큰 프로젝트이므로 js만을 이용해서 화면을 구성하였다.
설정 모달을 만들려고 생각해보니, 설계했던 모달의 형태들이 다 비슷하다는 것을 알았다. 그래서 어떤식으로 만들지 두 가지 정도의 아이디어가 떠올랐다.
이 전에는 모달 프레임(컴포넌트라고 표현하는게 맞을까?)을 만들었으므로 이를 가지고 설정 모달을 만들어 보자.
일정 추가하기를 만들자. 설정 모달과 마찬가지로 모달 컴포넌트를 이용하여 일정 추가하기 모달을 만들자.
작성한 일정을 보기 위한 모달을 일정 추가와 개별되게 만들려고 했다. 그런데 만들려고 보니, 화면에 보여줄 내용이 똑같아서 비효율적이라고 생각했다.
개발을 하면서 코드를 너무 지저분하게 짠 것 같다고 느꼈다.
그 동안 일정을 추가하는 기능을 만들었다. 그래서 날짜를 변경하여 다른 날짜에도 일정을 추가하고, 추가로 일정을 수정, 삭제하는 기능을 만들고, 이를 chrome storage API를 이용해서 저장, 불러오는 기능을 함께 만들었다.
이 때 까지는 일정을 추가, 삭제하고, 이를 크롬 스토리지에 저장하였다. 이번에는 일정의 type을 추가,삭제하고 스토리지에 저장하는 과정을 개발하였다.
마지막으로 오류가 있는 부분이나, 추가로 필요한 기능들을 개발하였다.