Я бы сказал, первый. У него есть преимущество, которое всегда возвращает string
, а если нет, выдает исключение. Это предсказуемое и понятное поведение. Это означает, что легче документировать, и что кто-то, не имеющий доступа к вашему исходному коду, может понять и использовать метод FetchExternalAddress()
.
Пока вы правильно документируете свой метод, указывая, что он возвращает string
иВыдает Exception
, если действительное подключение к Интернету не обнаружено.
Вам также следует избегать побочных эффектов, таких как print("No internet connection")
, в вашем методе, поскольку это может привести к неожиданным выводам на печать пользователю.