Objective-CのプロパティをSwiftに移植するときの指針
今現在Objective-Cで書かれたコードをSwiftに移植する作業を行っています。
Objective-Cを書いていた身からすると、Objective-Cにおいて
@interface AClass : NSObject
@property (strong) NSNumber *value01;
@property (readonly) NSNumber *value;
@end
@implementation AClass
- (id)value {
return @(self.value01.integerValue * 2);
}
@end
のようにインターフェイスではreadonlyなプロパティ、内部的には引数なしのメソッドとして実装されているクラスを、 Swiftに移植する場合、
class AClass : NSObject
{
var value01: Int = 0
var value: Int {
return value01 * 2
}
}
と記述することも
class AClass : NSObject
{
var value01: Int = 0
func value() -> Int {
return value01 * 2
}
}
と記述することも意味合い的には同じに思えるのです。
このことについての明確な指針は存在しますか?