- Zeplin ์ด๋ฆ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค๊ธฐ
- ์คํ ๋ฆฌ๋ณด๋ ์ด๋ฆ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค๊ธฐ
- CollectionViewCell ์ด๋ฆ : CVC
- TableViewCell ์ด๋ฆ : TVC
์ด๊ฑฐ๋ MARK ์ฃผ์์ผ๋ก ๋ง๋ค์ด ๋ถ๋ฅํด์ฃผ๋ฉด ์ข์๋ฏ
- IBOutlet ๋ณ์
- ์๊ธฐ๊ฐ ๋ง๋๋ ๋ณ์
- ๋ผ์ดํ์ฌ์ดํด ๋ฉ์๋ (viewDidLoad, viewWillAppear)
- ์๊ธฐ๊ฐ ๋ง๋๋ ๋ฉ์๋
- @objc ๋ฉ์๋
- IBAction ๋ฉ์๋
- Extension
- ํ๋กํ ์ฝ ํ๋๋น ํ๋์ฉ ๋ง๋ค๊ธฐ
- Extension ์์๋ ํ๋กํ ์ฝ์ ํด๋นํ๋ ๋ฉ์๋๋ง ๊ตฌํํด ๋๊ธฐ
- 99 ์ค
- ์ต๋ ๊ธธ์ด๋ฅผ ์ด๊ณผํ๋ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด
- ํจ์ ์ ์
func animationController(
forPresented presented: UIViewController,
presenting: UIViewController,
source: UIViewController
) -> UIViewControllerAnimatedTransitioning? {
// doSomething()
}
- ํจ์ ํธ์ถ
let actionSheet = UIActionSheet(
title: "์ ๋ง ๊ณ์ ์ ์ญ์ ํ์ค ๊ฑด๊ฐ์?",
delegate: self,
cancelButtonTitle: "์ทจ์",
destructiveButtonTitle: "์ญ์ ํด์ฃผ์ธ์"
)
- ํด๋ก์ 2๊ฐ ์ด์ ์กด์ฌํ๋ ๊ฒฝ์ฐ ๋ฌด์กฐ๊ฑด ๋ด๋ ค์ฐ๊ธฐ
UIView.animate(
withDuration: 0.25,
animations: {
// doSomething()
},
completion: { finished in
// doSomething()
}
)
- guard let ๊ตฌ๋ฌธ ๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉ
guard let _ else {
return
}
Alamofire.request(APIConstants.loginURL,
method: .post,
parameters: body,
encoding: JSONEncoding.default,
headers: header)
.responseData { response in
switch response.result {
case .success:
guard let statusCode = response.response?.statusCode else {
return
}
guard let value = response.result.value else {
return
}
completion(self.isCorrectUser(statusCode: statusCode, data: value))
case .failure(let err):
print(err.localizedDescription)
completion(.networkFail)
}
}
- ํํ ํด๋ก์ ธ ์ ๊ฒฝ์ฐ 'ํ๋ผ๋ฏธํฐ in' ๊น์ง ํ๊ณ ๋ค์ ์ค ๋์ด๊ฐ์ ํ๊ธฐ
class Mongle{
}
์์๊ธ์ ๋๋ฌธ์(UpperCamelCase)
func mongleMongle(){
}
์์๊ธ์ ์๋ฌธ์(LowerCamelCase)
var mogleMongle
์์๊ธ์ ์๋ฌธ์(LowerCamelCase)
enum Result {
case .success
case .failure
}
enum์ ๊ฐ case์๋ lowerCamelCase๋ฅผ ์ฌ์ฉํฉ๋๋ค.
UpperCamalCase | lowerCamelCase |
---|---|
ํด๋์ค | ํจ์ |
๊ตฌ์กฐ์ฒด | ๋ฉ์๋ |
์ต์คํ ์ | ์ธ์คํด์ค |
ํ๋กํ ์ฝ | |
์ด๊ฑฐํ |
- API URL
static let userProfile = BaseURL + **/user/profile**
- Cell Identifier
static let identifier = ""
๋ฌด์จCell.identifier <- ์ด๋ฐ์์ผ๋ฃจ
- UserDefault
enum UserDefaultKeys: String {
case token="token"
case autologinCheck="isAutoLoginChecked"
}
UserDefaultKeys.token.rawValue <- ์ฌ์ฉํ ๋ ์ด๋ฐ์์ผ๋ฃจ