소프트웨어공학 시간에 배웠던 리팩토링에 대해서 공부했다. 그리고 모듈에 대해서 공부하고 직접 함수들을 모듈화하고 파일을 분리함으로써 코드를 저번 주 금요일에 진행했던 인스타그램 클론코딩 코드를 리팩토링 하는 작업을 했다.
저번 주 금요일에 인스타그램 클론코딩 자체가 IndexedDB와 FileRender 등 Wep API를 활용한 것들이 많아서 메서드들도 많고 뒤에 구조가 어떻게 이루어져 있는지도 잘 이해되지 않아 잘 습득이 안된상태에서, 이 복잡한 코드를 리팩토링 하려고 하니 역시 어려웠다. 기존의 코드에 대한 이해가 잘 되지 않은 상태에서 더 심화된 내용을 공부하려고 하니 당연한 수순이다.
코드 모듈화와 리팩토링은 회사 컨벤션에 따라서 다르다고 들었다. 물론 유명한 기업이나 책에서 올바른 방향 이라는 것은 제공되는걸로 알고있다. 이에 대해서 더 공부하고싶다. 그리고 오늘 공부한 것 처럼 모듈화 하고 리팩토링 했던 방식이 보통 사용하는 방식인지 궁금하다. 일단… 내가 WEB API인 FileRender와 IndexedDB에 익숙해질 수 있을지부터 의문이다.
하루 이틀만에 클론코딩을 하고 리팩토링까지 하려고 하다 보니까 머리에 과부하가 오는것은 어찌보면 당연한 결과인것 같다. 솔직히 전부 이해하면서 진도를 나가기가 너무 힘들었다. 그래서 내 생각에는 깔끔하게 모두 이해하려고 하지는 말고, 아 이렇게 쓰는구나 정도로 이해하고 넘어가되, 후에 나 스스로 맨 땅부터 클론코딩을 해보면서 저번주 금요일 클론코딩과 오늘 배운 모듈화와 리팩토링을 연습해보면 좋지 않을까 싶다. 괜히 저번주 금요일과 오늘 수업이 찝찝하게 끝났다고 너무 여기에 시간을 많이 쏟으면 내 개인적인 공부도 못할뿐더러 아마 휘발되지 않을까 싶다. 즉, 비효율적일것이란 얘기. 게다가 이번 주 수업을 보니 이 클론코딩 강의를 완벽히 숙지 못했다 하더라도 못따라가는 커리큘럼은 아닌것 같기에… 오늘 수업에 대한 공부는 여기까지 하고 내 개인공부를 마저 해야겠다. 🙂