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

  • 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
}
主站蜘蛛池模板: 吉木乃县| 邛崃市| 顺平县| 东莞市| 犍为县| 松滋市| 肥乡县| 连州市| 伽师县| 清丰县| 金堂县| 昌宁县| 治多县| 宜宾市| 建宁县| 裕民县| 长兴县| 平泉县| 开封县| 奎屯市| 大安市| 墨竹工卡县| 安达市| 深水埗区| 泸州市| 青海省| 平顶山市| 锦州市| 克东县| 大庆市| 益阳市| 历史| 孝感市| 介休市| 襄垣县| 峨山| 威海市| 济宁市| 蒙山县| 永定县| 炉霍县|