У меня есть класс, который реализует только стороннюю библиотеку - и я могу вам сказать, что это Google Cloud .
Мне интересно, когда я использую такие библиотеки, какиспользовать его правильно?
Вот мои примеры, показывающие, как я использую:
Новый экземпляр
Декларация
public class MyClass{
private readonly string _jsonPath= ...;
public readonly StorageClient Client;
public MyClass()
{
var credential = GoogleCredential.FromFile(_jsonPath);
Client = StorageClient.Create(credential);
}
public string Upload(/*my parameter*/)
{
Client.UploadObject(...);
// etc
}
}
Использование
var myInstance = new MyClass();
myInstance.Upload(...);
Статический метод
Декларация
public class MyClass{
private static readonly string _jsonPath= ...;
public static readonly StorageClient Client = StorageClient.Create(GoogleCredential.FromFile(_jsonPath));
public static string Upload(/*my parameter*/)
{
Client.UploadObject(...);
// etc
}
}
Использование
MyClass.Upload(...);
Поскольку методы будут вызываться одновременно очень часто, я хотел бы знать, какое использование лучше и почему следует избегать проблем.
Насколько я знаю, static не подходит для совместного использования одного и того же класса.члены,
, но я думаю, что объявлять клиента каждый раз, когда мне нужно использовать, излишне.
Я хотел бы узнать больше о плюсах и минусах этого двустороннего подхода.
Будем благодарны за любые советы.
Мой английский довольно простой, пожалуйста, не возражайте.
Спасибо за ваше чтение.