Именование
Читаемость кода, в первую очередь, зависит от его... читаемости! Пишите осмысленные имена, откажитесь от сокращений. Это Best Practice
Плохой стиль:
@IBOutlet weak var descriptionText: UITextView!
@IBOutlet weak var image: UIImageView!
@IBOutlet weak var avatarIcon: UIImageView!
@IBOutlet weak var labelTitle: UILabel!
@IBOutlet weak var contentView: UIScrollView!
Хорошй стиль:
@IBOutlet weak var descriptionTextView: UITextView!
@IBOutlet weak var avatarImageView: UIImageView!
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var contentScrollView: UIScrollView!
Плохой стиль:
let vc = NewsViewController()
let msg = Message()
let shape1 = Shape()
Хорошй стиль:
let newsViewController = NewsViewController()
let message = Message()
let square = Shape()
Плохой стиль:
view.hidden
element.expanded
array.empty
Хорошй стиль:
view.isHidden
element.isExpanded
array.isEmpty
View Output
Плохой стиль:
func viewLoaded()
func authButtonTap()
func textChanged(text: String)
Хорошй стиль:
func viewDidLoad()
func authButtonDidTap()
func usernameTextFieldDidChange(value: String)
Module Output
Плохой стиль:
var authCancel: (() -> Void)? { get set }
var authComplete: ((String) -> Void)? { get set }
var userData: ((UserData) -> Void)? { get set }
Хорошй стиль::
var onAuthCanceled: (() -> Void)? { get set }
var onAuthCompleted: ((String) -> Void)? { get set }
var onUserDataCompleted: ((UserData) -> Void)? { get set }
Module Input
Плохой стиль:
func token(_ token: String)
func pageIndex(_ i: Int)
Хорошй стиль:
func set(token: String)
func setPage(index: Int)
Interaction Input
Плохой стиль:
func getUser(_ completion: (User) -> Void)
func obtainUser(_ completion: (User) -> ())
func config() -> Config
Хорошй стиль:
func obtainUser(_ completion: (User) -> Void)
func obtainConfig(_ completion: (Config) -> Void)
Дополнительные советы:
- Общие понятия. Избыточная выдержка из статьи (пример на JavaScript):