반응형
깃허브에서 다른 분들의 코드를 보며 공부를 하다보면 Then 이라는 라이브러리를 쓰는 것을 많이 봤다.
이게 뭘까? 어렵게 느껴져서 미루다 직접 찾아보니 생각보다 간단한 라이브러리였다.
https://github.com/devxoul/Then
Then 이란?
✨ Super sweet syntactic sugar for Swift initializers.
Swift 이니셜라이즈용 구문이다.(간단한)
그러면 어떻게 사용할까?
Then + snapkit을 함께 사용한다.
Then은 이니셜 라이즈 코드를 간단하게, Snapkit은 레이아웃 코드를 간단하게 만들어 준다.
따라서 쿵짝(?)이 잘 맞는 것 같다.
반응형
코드를 보며 이해해보자
Then을 사용하지 않았을 때
let nameLabel: UILabel = {
let label = UILabel()
label.textAlignment = .center
label.textColor = .black
label.font = .systemFont(ofSize: 30)
label.backgroundColor = .red
label.text = "나의 이름은 ***입니다."
return label
}()
override func viewDidLoad() {
super.viewDidLoad()
self.view.addSubview(nameLabel)
nameLabel.snp.makeConstraints { make in
make.width.equalTo(self.view)
make.height.equalTo(100)
make.top.equalTo(self.view.safeAreaLayoutGuide)
}
}
이렇게 결과가 나온다.
Then을 사용했을 때
let secondNameLabel = UILabel().then {
$0.textAlignment = .center
$0.textColor = .black
$0.font = .systemFont(ofSize: 30)
$0.backgroundColor = .red
$0.text = "나의 이름은 ***입니다. "
}
클로저를 이용해 좀 더 직관적인 코드를 만들 수 있었다.
반응형