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

  • 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
}
主站蜘蛛池模板: 普安县| 钦州市| 韩城市| 林州市| 安康市| 抚宁县| 汝州市| 钟山县| 成都市| 阿拉尔市| 仪征市| 铜陵市| 新郑市| 卢湾区| 黄骅市| 太原市| 苏尼特右旗| 田东县| 永泰县| 抚远县| 鸡泽县| 苗栗县| 修文县| 舞钢市| 阿图什市| 长寿区| 阳西县| 垣曲县| 上饶县| 拉孜县| 灵石县| 慈利县| 武威市| 德保县| 开鲁县| 桂林市| 黎城县| 潞西市| 安图县| 明溪县| 新建县|