Skip to content

Conversation

@SpaciousKitchen
Copy link

[피드백 바탕 보완할 점]

  1. 상수를 활용한다

    • 전진할 값의 제한과 사용자가 입력한 이름의 제한 을 표현 할 시에 상수를 활용 하는 방법이 있다는 것을 놓쳤습니다. 미션이지만, 실제 서비스를 운영하는 관점으로 보았을 때, 상수를 사용하지 않는다면, 조건이 바뀌면 일일이 수정해야 하는 할 것 같다는 생각이 들었습니다. 이런 미션을 통해 깨닫게 되어 정말 다행이라는 생각이 들었습니다.
  2. 불필요한 변수를 줄이기 위해 노력한다

  • 불필요한 변수를 안 쓰려고 노력했지만, 점진적으로 진행하다 보니 수정하기 어려워서, 불필요하게 쓴 변수들이 있었습니다. (ex·자동차 이름들 변수[carNames], 최대 긴 값[max Value]), 초기에 이런 식으로 진행하지 말걸 과 같은 생각을 한 코드도 있었습니다. 이번에는 변수뿐만 아니라 불필요한 함수도 없애서 코드 반복을 줄이려고 했습니다. 다만, 함수가 너무 많아지는 것 같았습니다.
  1. 발생할 수 있는 예외케이스에 대해 고민한다.
  • 최대한 다양한 경우를 생각하면서, 모든 예외 처리를 고려하려고 했습니다. 그러나 마지막에 처리하지 않은 예외를 발견했고, 시간이 부족해 제출하게 되었습니다. 다양한 시각으로 순서 도를 그리는 연습이 필요할 것 같습니다.

[마지막 미션 느낀 점]

  1. 데이터의 상태를 관리

우선 리엑트에서는 리덕스나, context api 등을 활용에서 주로 관리 했어 왔는데, 바닐라 JS로는 어떻게 데이터를 넘겨주고 수정할지가 고민이었습니다. 제가 생각한 방법은 함수 바인딩을 통해 객체를 넘겨 주는 방식을 생각했는데, 비효율적인 것 같았습니다. 완성한 이후에 spa 방식으로 진행하신 분들도 계셨고, 구글링을 통해 바닐라 자바스크립트로 리덕스 처럼 상태 관리 시스템 구축 하는 방법도 있다고 깨달았고, 시간이 부족해 이번 미션에서는 활용할 수 없었지만, 미션을 제출한 이후에 도전해볼 생각입니다.

  1. data속성 를 활용

처음에는 data 속성을 활용하라는 말이 어떤 말인지 아예 감을 잡지 못했습니다. 왜 그러한 조건이 있는지 이해 하지 못했고 어떻게 활용해야 할 지도 몰랐습니다. 검색을 통해 유추한 바로는 테이블에서 데이터를 삭제하거나 추가할 때, 쉽게 진행하기 위함이라 생각했고, 이를 위해 개별적으로 식별할 id값을 임의로 만들어 관리해야겠다고 판단하였습니다. 또한 모든 비교(ex 값이 존재하는지, 해당 값이 같은지)를 할 때 id 값을 통해서 진행했습니다. 이 부분은 data 속성을 처음 활용해보았기에 문제에서 의도하신 바와 다르게 구현했을 수도 있을 것 같습니다.

  1. 구현에 급급

전체적인 미션을 구현하기에 급급해서, 좋은 코드를 짜지 못한 것 같습니다. 또한, 코드 반복을 피하고자 코드를 재활용하려는 노력을 많이 했으나 가독성이 좋지 않다고 느껴졌으며 추가 함수들이 생겨났습니다.

  1. index.html 태그 구조

메뉴 버튼 포함해서, div 태크로 먼저 모두 선언 한 뒤에, "동적으로 움직이는 부분 외에는 미리 다 추가하자"고 생각했습니다. 하지만, 이후에 자바스크립트 코드상에서 html을 추가하고 덧붙이는 것이 번거로웠고, 중간마다 html 파일도 수정할 해야 했습니다. 메뉴 버튼 태그 이외에는 모두 동적으로 관리하는 게 한결 더 수월했을 것 같습니다. html 구조를 초기에 잘 설계하는 것에 대한 필요성을 느꼈고, 시간이 모자라 중도 수정 할 수 없어 아쉬운 마음이 큽니다.

[전체 미션 느낀 점]

우선, 많은 사람의 코드를 보고 전체 피드백을 작성해주신 것에 대단히 감사함을 느꼈습니다.

매 미션 마다, 피드백을 옆에 펴놓고 지켜졌는지 확인하며 작성하였습니다.

3주까지 미션 내내 자바스크립트의 기초 문법을 많이 잊어버린 것 같아,모던 자바스크립트(https://ko.javascript.info/)의 튜토리얼을 대부분 다 읽어보면서 과제를 진행했습니다. 매 주차 마다 읽어보면서, 이런 문법을 활용하면 좋았을 걸이라는 아쉬움과 또 하나의 배움을 얻었다는 것에 기쁨을 느꼈던 것 같습니다. 프리코스가 마무리되어도 남은 연말 동안 천천히 다시 정독해볼 생각입니다.

기말고사와 기간이 겹쳐 자바스크립트에만 몰두하지 못한 것에 대해 아쉬움이 있습니다. PR하신 분들의 코드를 보면서 제가 자바스크립트 기초가 부족하다는 것을 깨달았습니다. 특정한 패턴을 사용하여 구조를 짠 것으로 보였습니다. 아직 배움이 부족한 탓인지 그게 어떤 의미인지 파악하지 못해서 구글링하기도 했습니다.

부족한 부분이 많지만, 학습할 부분이 더 명확해진 것 같아, 체계화하여서 보완해 나갈 수 있을 것 같습니다.

익숙하지 않았던 git과도 가까워졌습니다. 우테코 덕분에 제대로 다시 배우고 사용하게 되었습니다. 첫 주차에 기능 단위로 commit하라는 말이 무슨 말인지 몰라 깃 문법 동영상을 온종일 보던 저와 비교하면, 참 많이 성장한 것 같다는 생각이 듭니다.

전체 미션을 진행하면서, 기록하는 것에 대한 재미가 붙었습니다. 하지만, 프리코스를 진행하면서, 제가 어떤 점에서 놓쳤고, 어떤 부분을 배웠다 느낀 순간, 생각날 때마다 한줄 작성하다 보니 어느새 한편의 글이 되어 있었습니다. 앞으로는 제 생각을 표현하는 글쓰기를 더 자주 진행할 것 같습니다.

아마 프리 코스를 기점으로 저에게는 많은 변화가 생길 것 같습니다. 그와 동시에 본 교육을 한다면, 얼 마나 더 많이 성장할까 라는 기대감과 본 과정 참여에 대한 욕심이 더 생긴 것 같습니다.

Fix isValidStation to isValidName and Add Functions about createLines & addLinetoStation & isValidSelect
Add Function getButtonFunction and getDivName for distinguishing Menu
Add Function to print SectionLineButton and Functions to print SectionAddTags
@SpaciousKitchen SpaciousKitchen changed the title 제목 : [지하철 노선도 미션] 조혜송 미션 제출합니다. [지하철 노선도 미션] 조혜송 미션 제출합니다. Dec 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant