Languages

Python API Checklist

Useful checklist for building good Python library APIs, based on "How to make a good library API" PyCon 2017 talk.
Checks are saved to your local storage

1. 간결함

2. 일관성

    • 예시: datetime.datetime(year, month, day, minute, second, microsecond) vs datetime.timedelta(days, seconds, microseconds, milliseconds, minutes, hours, weeks)
    • 좋은 예시: 제자리 정렬 numbers.sort() vs 비제자리 정렬 sorted(numbers)

3. 유연함

4. 안전성

    • 무언가가 설정되지 않은 경우엔 모두 표시하지 말아라. 예를 들어 fields = None은 모든 필드를 의미하지는 않는다
    • 예시: django-admin의 registry는 함수를 사용한 등록과 데코레이터를 사용한 등록 모두를 지원한다

5. 결론