上QQ阅读APP看书,第一时间看更新
Modern syntax
Swift has a modern syntax that eliminates the verbosity of programming languages such as Objective-C. For instance, the following code example shows an Objective-C class with a property and method. Objective-C classes are defined in two separate files (interface and implementation). The VerboseClass.h file defines an interface as a subclass of the NSObject class. It defines a property, ourArray, and a method, aMethod.
The implementation file imports the header class and provides an implementation for aMethod, as shown in the following code:
// VerboseClass.h
@interface VerboseClass: NSObject
@property (nonatomic, strong) NSMutableArray *ourArray;
- (void)aMethod:(NSMutableArray*)anArray;
@end
// VerboseClass.m
#import "VerboseClass.h"
@implementation VerboseClass
- (void)aMethod:(NSMutableArray*)anArray {
self.ourArray = [[NSMutableArrayalloc] initWithArray: @[@"One",
@"Two", @"Three"]];
}
A similar functionality in Swift can be achieved as follows:
class ASwiftClass {
var ourArray: [String] = []
func aMethod(anArray: [String]) {
self.ourArray = anArray
}
}
let aSwiftClassInstance = ASwiftClass()
aSwiftClassInstance.aMethod(anArray: ["one", "Two", "Three"])
print(aSwiftClassInstance.ourArray)
As seen from this example, Swift eliminates a lot of unnecessary syntax and keeps code very clean and readable.