Implemented Client component and related structs and methods
Added Amplitude interface and NewAmplitude as the init function for amplitude struct
Checklist
[x] Does your PR title have the correct title format?
Does your PR have a breaking change?:
Questions & Request for review
Since APIs of Client are exposed to users, I use value receiver at the most of the time. But for Add, Remove, and Shutdown which updates plugins and changes the client instance itself, I use pointer receiver there. I am wondering if that is right.
When initialize a new BaseEvent, linter says some fields are missing. As for Go standard, do I need to explicitly assign empty value to the fields of BaseEvent when I init it?
Summary
Amplitude
interface andNewAmplitude
as the init function foramplitude
structChecklist
Questions & Request for review
Add
,Remove
, andShutdown
which updates plugins and changes the client instance itself, I use pointer receiver there. I am wondering if that is right.BaseEvent
, linter says some fields are missing. As for Go standard, do I need to explicitly assign empty value to the fields ofBaseEvent
when I init it?