Skip to content

Rename AIOTClient and AIOTObject classes #51

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
sebromero opened this issue Mar 17, 2023 · 0 comments
Open

Rename AIOTClient and AIOTObject classes #51

sebromero opened this issue Mar 17, 2023 · 0 comments

Comments

@sebromero
Copy link
Contributor

sebromero commented Mar 17, 2023

The AIOTClient class and AIOTObject in the current implementation of the Python library refer to the concept of AI in an IoT environment, which is not applicable in the context of this project. The terms AIOT might cause confusion to users who expect to see Artificial Intelligence related functionality in these classes. Therefore, I suggest renaming the AIOTClient class to ArduinoCloud ArduinoCloudClient and AIOTObject to ArduinoCloudObject.

The term "ArduinoCloud" more accurately reflects the functionality and purpose of the class, which is to handle cloud communication for Arduino devices. This change will help users quickly identify the intended use of the class and prevent any confusion.

In addition, renaming these classes to ArduinoCloud ArduinoCloudClient and ArduinoCloudObject will also bring improved consistency with the Arduino version of the library, which already uses the ArduinoCloud class name.

I propose the following changes to be made:

Rename the AIOTClient class to ArduinoCloud ArduinoCloudClient throughout the Python codebase.
Rename the AIOTObject class to ArduinoCloudObject throughout the Python codebase.
Update the relevant documentation and examples to reflect the new class names.

This change will not affect the existing functionality of the classes, and users can continue to use the classes as they did before with the new class names. This change will also bring consistency with the Arduino version of the library, which will make it easier for users to switch between the Python and Arduino versions.

UPDATE: “Client” is a widely used term in the context of web services, and indicates the client side interface to interact with a (web) service. After some discussion I've come to the conclusion that this may save the users some confusion and it may be more intuitive for developers who work with our code. We already use such suffix for the ArduinoCloudObject so this would follow the same pattern.

It's also more future proof to indicate the use case of the class through the "Client" suffix in case we need to add different functionality which is not related to the communication with the web API.
It comes at the cost of the sacrificed consistency with the Arduino library. However, the benefits outweigh this drawback imo. Hence I'd go with ArduinoCloudClient

@sebromero sebromero changed the title Rename AIOTClient and AIOTObject class Rename AIOTClient and AIOTObject classes Mar 17, 2023
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

No branches or pull requests

1 participant