Первый подход так называемый computed property:
Классы, структуры и перечисления могут определять вычисленные значения, которые фактически не сохраняют значение. Вместо этого они предоставляют геттер и дополнительный сеттер для извлечения и установки других свойств и значений косвенно.
Форма, которую вы используете, предоставляет только приемник для string1
, что делает его доступным только для чтения.
Второй подход объявляет обычная stored property:
Сохраненный свойство является постоянной или переменной, которая хранится в виде части экземпляра определенного класса или структуры. Хранимыми свойствами могут быть либо хранимые свойства переменной (введенные ключом var), либо константные хранимые свойства (введенные ключевым словом let).
В вашем случае это свойство чтения-записи (объявлено с использованием ключевого слова var
).
Какой должен использоваться, когда он зависит от корпуса. Но иногда можно вводить только рассчитанные свойства (например, если вы предоставляете расширение).
Это не переменная, это свойство. –