成为更好的Swift开发人员的提示
Swift提供的功能有助于开发人员对Objective-C进行更安全,更快,更易读和更可靠的编码。 以下是一些概述的Swift技巧,这些技巧是我们通过使用这种新语言(Swift)的经验收集而来的。 他们帮助我们更加安全,整洁地编写了代码。
我将讨论分为两部分。 在第一篇中,我们为那些迅速入门的人进行讨论,在第二篇中,为已经使用过的人进行讨论。
给初学者的提示
1.使用Playground验证:
每当您打算实施任何逻辑实验并在操场上对其进行验证时,也可以用于学习目的。
Playground是一种非常便捷的互动工具,可让您迅速行动。 游乐场不需要创建新项目😃。 要创建游乐场,只需从Xcode启动中选择一个选项即可:
也可以在Xcode中创建游乐场:
一旦在操场上,可以在左侧写代码,结果将在右侧和底部:
2.安全使用可选:
可选属性是可以具有有效值或不具有任何值的属性( nil )。 每当我们要打印可选内容时。 它将输出带有一些其他文本的值作为Optional( value )
。 我们可以通过在可选属性名称的末尾使用exclamation (!)
来隐式解开可选选项, 但应避免使用它。 这称为强制展开,导致应用程序崩溃。 因此,使用exclamation (!)
是danger
🚫。
在某些特殊情况下,使用感叹号(!)。
例如: IBOutlet
当您从接口构建器创建插座时,它将是一个隐式展开的可选对象,因为UIKit假定您已将插座钩挂/连接到接口构建器😐。 因此,使用隐式展开可选值是有风险的。
我们可以使用if let
模式来处理此问题:
var名称:字符串? =“欢乐”
var lastName:字符串?
print(name) //结果:可选(“ Joy”)
print(name!) //结果:喜悦
如果让值=名称{
打印(值)
}其他{
打印(“未设置名称”)
}
//结果:喜悦,因为名称具有值
如果让lastNameNew = lastName {
打印(lastNameNew)
}其他{
打印(“未设置姓氏”)
}
//结果:未设置姓氏,因为lastName没有任何值
3.在一个文件中管理常量:
要管理项目的常量,请仅在此处创建文件并管理所有常量。 将structure
或enum
所有常量structure
为:
枚举AppConstants {
静态让AppName =“ MyFirstApp”
static let NoInternetMessage =“对不起!没有互联网连接”
}
这对于管理和维护代码的可读性很有帮助。
假设您在应用程序代码中的很多地方都使用过NoInternetMessage
,现在您需要对消息进行一些更改,然后您可以轻松地仅在一个位置更改消息,它将自动在所有地方反映出来。 👍
4.使用嵌套函数:
您可以在其他函数的主体中定义函数,称为嵌套函数。
嵌套函数将对外界隐藏,但可以由其封闭函数调用和使用。 封闭函数也可以返回其嵌套函数,以便可以在外部环境或其他范围中使用。
它将增加代码的可读性和可重用性。
func selectStepFunction(backward:Bool)->(Int)-> Int {
func stepForward(input:Int)-> Int {返回输入+ 1}
func stepBackward(input:Int)-> Int {返回输入-1}
向后退? stepBackward:stepForward
}
var currentValue = -4
让moveNearerToZero = selectStepFunction(向后:currentValue> 0)
// moveNearerToZero现在引用嵌套的stepForward()函数
而currentValue!= 0 {
print(“ \(currentValue)...”)
currentValue = moveNearerToZero(currentValue)
}
打印(“零!”)
//结果:
// -4 ...
// -3 ...
// -2 ...
// -1 ...
//零!
为您提供的最后一个技巧,您也可以寻求专业人士的技巧。 😜