import 문 정리

2024년 8월 14일 수요일

Today I Learned

날짜

2024년 8월 14일 수요일

내용

불필요한 import 문 처리

예전부터 꼭 처리하고 싶었던게 있었다. 파일들에 최상단에는 각종 import 문들이 가득한데 중구난방이다. 중복도 너무 많고, 사용하지 않는데 들어가있는 것들도 많다. 아무래도 처음 파일을 만들때 다른 파일에서 긁어오는 경우도 있고 코드를 수정하는 과정에서 더이상 사용하지 않게 됐는데 import문은 처리하지 못한 경우도 있었다.

사용하지 않는 import문은 밑에 점선표시가 뜬다. 이전에 그것만 믿고 지웠다가 사용하는데 점선표시 된 패키지들이 있어서 대참사를 낼뻔했기 떄문에.. 점선을 믿지 않고 일일이 Ctrl + F 로 사용여부를 확인해가면서 지워갔다.

진짜 많이 지웠다. 어떤 파일은 기존에 import 문이 181줄이었는데 쓸모없는걸 빼고나니 46줄이 되버렸다… 온갖 사용하지 않는 crud 함수, 스키마를 다 불러와서 생긴 문제.. 샵 서버 리뷰서버 모두 처리하고 나니 거의 800줄 가까이를 지울 수 있었다.

import 문에도 나름 순서가 있는데 크게는

  1. 내장 라이브러리(ex. import json)
  2. 서드파티 라이브러리(ex. from sqlalchemy import select)
  3. 커스텀 (ex. from ..crud import create_shop)

으로 둔다. 같은 종류끼리는 알파벳 순서로… 이를 관리해주는 isort라는 정렬 도구 도 있지만 쓰지 않았다. 이상하게 from fastapi import .. 문이 자꾸 Import “fastapi” could not be resolved 오류를 뱉고 있어서 그렇다.. 작동은 잘되면서 왜그러는 건지

그래도 조금이나마 더러운 코드가 사라져서 편-안

회고

아임리포트 위키를 작성중인데.. 남들이 이해하기 쉽게 설명하는건 참 힘들다.