官术网_书友最值得收藏!

  • Mastering Swift
  • Jon Hoffman
  • 343字
  • 2021-07-16 14:12:15

What we have learned so far

Up to this point, we have been laying the foundation for writing applications with Swift. While it is possible to write a very basic application with what we have learned so far, it would be really difficult to write a useful application using only what we covered in the first three chapters.

Starting with this chapter, we will begin to move away from the foundations of the Swift language, and begin to learn the building blocks of application development with Swift. In this chapter, we will go over control flow and functions. To become a master of the Swift programming language, it is important that you fully understand and comprehend the concepts discussed in this chapter and in Chapter 5, Classes and Structures.

Before we cover control flow and functions, let's take a look at how curly brackets and parentheses are used in Swift.

Curly brackets

In Swift, unlike other C-like languages, curly brackets are required for conditional statements and loops. In other C-like languages, if there is only one statement to execute for a conditional statement or a loop, the curly brackets around that line are optional. This has lead to numerous errors and bugs, like the Apple's goto fail bug; therefore, when Apple was designing Swift, they decided to keep curly brackets, even when there is only one line of code to execute. Let's look at some code that illustrates this. This first example is not valid in Swift because it is missing the curly brackets; however, it will be valid in most other languages:

if (x > y)
  x=0

In Swift, you are required to have the curly brackets, as illustrated in the following example:

if (x > y) {
  x=0
}

Parentheses

Unlike other C-like languages, the parentheses around conditional expressions in Swift are optional. In the preceding example, we put parentheses around the conditional expression but they are not required. The following example would be valid in Swift but not valid in most C-like languages:

if x > y {
  x=0
}
主站蜘蛛池模板: 尚义县| 蕲春县| 桃源县| 安庆市| 出国| 灵台县| 庆安县| 鹿泉市| 蓝山县| 鄂伦春自治旗| 囊谦县| 上蔡县| 大宁县| 新建县| 尤溪县| 易门县| 南开区| 丰原市| 漠河县| 湘潭县| 陆川县| 奇台县| 哈密市| 蓬安县| 炉霍县| 武定县| 明水县| 二连浩特市| 黎平县| 孟村| 乃东县| 桑植县| 遵义市| 泰顺县| 巴林左旗| 县级市| 永年县| 崇明县| 广宁县| 永仁县| 开平市|