Implement best practices from Effective Python

Description

While most best practices can be adopted during code review, this ticket is reserved to track:

  • Item 50: Use packages to organize modules and provide stable APIs

  • Item 49: Write Docstrings for every function, class, and module

  • Item 54: Consider module-scoped code to configure deployment environments

  • Item 56: Test everything with unittest

Also, I will track what I learn from the code base and draft my refactor proposal in https://sagebionetworks.jira.com/wiki/spaces/SYNPY/pages/564625409/Synapse+Python+Client+Code+Base

The benefits of this ticket are to improve readability and maintainability of the code base.

Environment

None
Your pinned fields
Click on the next to a field label to start pinning.

Assignee

Unassigned

Reporter

Kimyen Truong

Labels

Validator

Kenneth Daily