Skip to content

[미션3] 코드 구조 리팩토링 #3

Description

@learn-programmers

시작하기 전에

  • 지난 미션에서 작성한 코드를 살펴보고 아쉬운 것들을 목록화 합니다
  • 중복된 코드, 컴포넌트의 재사용과 배치, 코드 가독성, 변수, 함수(메소드)의 네이밍이 그 대상입니다.

리팩토링

검색 결과 리팩토링

  • Intersection Observer API를 이용하여 스크롤 페이징 방식을 리팩토링 합니다.
  • Intersection Observer API를 이용하여 이미지가 화면에 보여야 할 시점에 load 되도록 처리합니다.
  • event delegation 방식을 이용하여 모달 띄우기 click 이벤트 제어 방식을 변경합니다.(미션2에서 수행)

async-await 도입

  • API fetch 코드를 async , await 문을 이용하여 수정해주세요. 해당 코드들은 에러가 났을 경우를 대비해서 적절히 처리가 되어있어야 합니다.

api 요청 결과 처리

  • API 의 status code 에 따라 에러 메시지를 분리하여 작성해야 합니다.

ES6, import, export

  • ES6 module 형태로 코드를 변경합니다.
    • webpack , parcel 과 같은 번들러를 사용하지 말아주세요.
    • 해당 코드 실행을 위해서는 http-server 모듈을(로컬 서버를 띄우는 다른 모듈도 사용 가능) 통해 index.html 을 띄워야 합니다.

테스트 작성

  • Test suite와 각 test 의 목적을 이해하기 쉽게 기술해주세요.
  • 각 컴포넌트 내부에 있는 함수들이나, Util 함수들을 테스트 할 수 있게 분리합니다.

참조 자료

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions