Rate this post

Trong phần này, chúng ta sẽ khám phá những kiến thức cơ bản về biến (Variables) và hằng số (Constants) trong Swift. Hãy cùng điểm qua về sự quan trọng của việc sử dụng hằng số và tại sao chúng nên được ưa chuộng. Chúng ta sẽ cùng W3seo tìm hiểu và bắt đầu bằng việc tạo một playground để học cú pháp và nắm vững các khái niệm cơ bản của ngôn ngữ lập trình Swift.

Để thực hiện điều này, hãy mở Xcode 9 và tạo một playground theo các bước sau: từ menu File của Xcode, chọn New -> Playground… Sau đó, đặt tên cho playground và chọn nền tảng iOS. Tiếp theo, chọn Next và bây giờ chúng ta sẽ bắt đầu viết mã.

Biến (Variables) trong Swift

Biến (Variables) trong Swift là các vùng lưu trữ dữ liệu được sử dụng để lưu trữ thông tin và giá trị trong quá trình thực thi chương trình. Một biến trong Swift có thể chứa nhiều loại dữ liệu khác nhau, chẳng hạn như số nguyên, số thực, chuỗi văn bản, và nhiều loại dữ liệu khác.

Khai báo Biến

Trong ngôn ngữ Swift, chúng ta sử dụng từ khóa “var” để khai báo một biến. Tuy cách này tương tự việc khai báo biến trong các ngôn ngữ lập trình khác, nhưng Swift có một số điểm khác biệt quan trọng. Từ khóa “var” là cách duy nhất để khai báo biến trong Swift và được sử dụng phổ biến để khai báo và gán giá trị cho biến.

Ví dụ:

var blogName = "Tự học Swift 5 cùng với cafedevn"

Lưu ý rằng không cần sử dụng dấu chấm phẩy (;) sau khi kết thúc một dòng code trong Swift. Mặc dù có thể sử dụng dấu chấm phẩy, nhưng chúng ta thường không cần thiết phải làm điều đó. Một tính năng thú vị của Swift là khả năng tự suy luận kiểu dữ liệu.

Tự suy luận kiểu dữ liệu (Type Inference)

Trong ví dụ trên, biến “blogName” được gán giá trị là “Tự học Swift 5 cùng với cafedevn”. Một điểm đặc biệt ở đây là không cần mô tả kiểu dữ liệu khi khai báo biến. Swift sẽ tự hiểu rằng “blogName” có kiểu dữ liệu là String, và chúng ta không cần phải chỉ định kiểu dữ liệu một cách rõ ràng.

Tuy nhiên, trong trường hợp bạn muốn mô tả kiểu dữ liệu một cách rõ ràng, bạn có thể làm như sau:

var blogName: String = "Tự học Swift 5 cùng với cafedevn"

Thay đổi Kiểu Dữ Liệu

Swift yêu cầu bạn phải rõ ràng hoặc ngầm định kiểu dữ liệu cho biến hoặc hằng số. Nếu bạn không mô tả kiểu dữ liệu, Xcode sẽ thông báo lỗi “Bạn thiếu kiểu dữ liệu cho biến” khi bạn khai báo như sau:

var number

Để khắc phục lỗi này, bạn có hai cách: hoặc là khai báo biến với kiểu dữ liệu tường mình, hoặc là gán một giá trị cụ thể cho biến:

var number: String
var number = "10"

Nếu bạn cố gán kiểu số vào biến “number,” Xcode sẽ thông báo lỗi vì bạn không thể gán kiểu Int vào biến kiểu String. Điều này thể hiện tính chặt chẽ và an toàn của ngôn ngữ Swift. Mỗi biến có một kiểu dữ liệu cố định, và bạn không thể thay đổi kiểu dữ liệu đó.

Để sửa lỗi này, bạn cần mô tả kiểu dữ liệu cho biến “number” như sau:

var blogName: String = "Tự học Swift 5"
var number: Int
blogName = "Cùng học Swift 5.0000"
number = 10

Nhớ rằng khi bạn khai báo biến trong Swift, bạn không nhất thiết phải mô tả kiểu dữ liệu tường mình, và mỗi biến có một kiểu dữ liệu cố định và không thể thay đổi.

Phạm vi và tham chiếu Biến

Trong Swift, phạm vi và tham chiếu biến đề cập đến cách biến được truy cập và sử dụng trong các phạm vi khác nhau trong chương trình. Dưới đây là một số khái niệm liên quan:

  1. Phạm vi (Scope):
    • Phạm vi xác định vị trí và thời gian tồn tại của một biến trong chương trình.
    • Có thể có phạm vi toàn cục (global scope) và phạm vi cục bộ (local scope).
    • Biến được khai báo trong phạm vi toàn cục có thể truy cập từ bất kỳ đâu trong chương trình.
    • Biến được khai báo trong phạm vi cục bộ chỉ có thể truy cập từ bên trong phạm vi đó.
  2. Tham chiếu (Reference):
    • Khi bạn truyền một biến vào một hàm hoặc gán giá trị từ một biến vào một biến khác, bạn có thể truyền theo giá trị (value) hoặc theo tham chiếu (reference).
    • Truyền theo giá trị: Tạo một bản sao của giá trị và truyền nó vào hàm hoặc gán cho một biến khác. Những thay đổi trong biến được truyền theo giá trị không ảnh hưởng đến biến gốc.
    • Truyền theo tham chiếu: Truyền một tham chiếu đến vị trí của biến, vì vậy bất kỳ thay đổi nào đối với biến cũng ảnh hưởng đến biến gốc.

Quyết định sử dụng phạm vi và tham chiếu biến phụ thuộc vào yêu cầu của chương trình và cách bạn muốn ảnh hưởng đến dữ liệu.

Ví dụ về phạm vi và tham chiếu biến:

var globalVariable = 10

func updateValueByReference(value: inout Int) {
    value += 5
}

func updateValueByValue(value: Int) -> Int {
    return value + 5
}

updateValueByReference(value: &globalVariable)
// Giá trị của globalVariable sẽ là 15

let newValue = updateValueByValue(value: globalVariable)
// newValue sẽ có giá trị là 15, globalVariable không bị thay đổi

Trong ví dụ trên, chúng ta có một biến toàn cục “globalVariable”. Trong hàm “updateValueByReference”, chúng ta truyền biến theo tham chiếu bằng cách sử dụng từ khóa “inout” và áp dụng thay đổi trực tiếp vào biến. Trong khi đó, trong hàm “updateValueByValue”, chúng ta truyền biến theo giá trị.

Quy tắc đặt tên Biến

Trong Swift, quy tắc đặt tên biến rất quan trọng để làm cho mã nguồn dễ đọc, dễ bảo trì và dễ hiểu. Dưới đây là một số quy tắc quan trọng khi đặt tên biến trong Swift:

  1. Tên biến phải bắt đầu bằng một chữ cái hoặc dấu gạch dưới (_) và sau đó có thể chứa các chữ cái, số hoặc dấu gạch dưới.
  2. Tên biến không được bắt đầu bằng một số hoặc ký tự đặc biệt.
  3. Tên biến phải duy nhất trong phạm vi của nó. Không thể có hai biến có cùng tên trong cùng một phạm vi.
  4. Tên biến nên được đặt một cách mô tả và thể hiện ý nghĩa của biến. Điều này giúp làm cho mã nguồn dễ đọc và dễ hiểu.
  5. Swift là ngôn ngữ phân biệt chữ hoa chữ thường, vì vậy tên biến “MyVariable” và “myVariable” được coi là hai biến khác nhau.
  6. Tránh sử dụng các từ khóa của Swift (như if, else, var, let, class, func, etc.) làm tên biến.
  7. Theo quy ước, tên biến thường được đặt bằng chữ thường và sử dụng kiểu Snake Case, trong đó các từ được phân tách bằng dấu gạch dưới (ví dụ: my_variable_name).
  8. Đối với tên biến trong lớp hoặc cấu trúc, thường được đặt bằng chữ hoa chữ thường (Camel Case), với chữ cái đầu tiên của từ đầu tiên viết thường (ví dụ: myVariableName).

Dưới đây là một số ví dụ về việc đặt tên biến tuân theo quy tắc đặt tên trong Swift:

var userName: String
var numberOfApples: Int
var isUserLoggedIn: Bool
var maxSpeed: Double

Những quy tắc và quy ước này giúp làm cho mã nguồn trong Swift trở nên dễ đọc và dễ bảo trì, giúp bạn và đồng đội lập trình dễ dàng hiểu mã và tương tác với nó.

Xem thêm operator trong java

Hằng số (Constants) trong Swift

Hằng số (Constants) trong Swift là những vùng lưu trữ dữ liệu tương tự như biến số, nhưng với một sự khác biệt quan trọng: giá trị của hằng số không thay đổi sau khi đã được gán.

Khai báo hằng số

Để khai báo một hằng số trong Swift, bạn sử dụng từ khóa “let.” Hãy xem ví dụ dưới đây, chúng ta sẽ khai báo một hằng số “blogName” thay vì sử dụng “var.”

let blogName: String = "Tự học Swift 5"
var number: Int
blogName = "Cùng tự học Swift 5.0000"
number = 10

Nếu bạn chỉ cần thay đổi dòng đầu tiên từ “var” thành “let,” Xcode sẽ thông báo lỗi vì hằng số không thể thay đổi giá trị. Để khắc phục lỗi này, bạn cần sửa như sau:

let blogName: String = "Tự học Swift 5"
var number: Int
blogName = "Cùng tự học Swift 5.0000"
number = 10

Sử dụng hằng số

Khai báo và sử dụng hằng số trong Swift rất đơn giản. Không cần sử dụng các từ khóa phức tạp, và việc khai báo hằng số tương tự việc khai báo biến số.

Sử dụng hằng số trong Swift được khuyến khích. Nếu bạn biết rằng một giá trị không thay đổi hoặc bạn không có ý định thay đổi giá trị đó trong quá trình thực thi, hãy sử dụng hằng số. Sử dụng hằng số mang lại lợi ích về hiệu suất, nhưng quan trọng hơn, nó giúp đảm bảo tính an toàn trong chương trình. Bất kỳ biến số nào được khai báo là hằng số, dù nó có sử dụng ở đâu, đều sẽ luôn giữ nguyên giá trị của nó, và giá trị đó không bao giờ thay đổi.

Quy tắc đặt tên hằng số

Khi đặt tên hằng số trong Swift, bạn nên tuân theo một số quy tắc và quy ước tương tự như khi đặt tên biến. Dưới đây là quy tắc đặt tên hằng số trong Swift:

  1. Tên hằng số phải bắt đầu bằng một chữ cái hoặc dấu gạch dưới (_) và sau đó có thể chứa các chữ cái, số hoặc dấu gạch dưới.
  2. Tên hằng số không được bắt đầu bằng một số hoặc ký tự đặc biệt.
  3. Tên hằng số phải duy nhất trong phạm vi của nó. Không thể có hai hằng số có cùng tên trong cùng một phạm vi.
  4. Tên hằng số nên được đặt một cách mô tả và thể hiện ý nghĩa của hằng số.
  5. Swift là ngôn ngữ phân biệt chữ hoa chữ thường, vì vậy tên hằng số “MyConstant” và “myConstant” được coi là hai hằng số khác nhau.
  6. Tránh sử dụng các từ khóa của Swift (như if, else, var, let, class, func, etc.) làm tên hằng số.
  7. Theo quy ước, tên hằng số thường được đặt bằng chữ thường và sử dụng kiểu Snake Case, trong đó các từ được phân tách bằng dấu gạch dưới (ví dụ: my_constant_name).

Dưới đây là một số ví dụ về việc đặt tên hằng số tuân theo quy tắc đặt tên trong Swift:

let piValue: Double = 3.14159
let maxAttempts: Int = 3
let apiKey: String = "your_api_key"
let isDebugEnabled: Bool = true

Những quy tắc và quy ước này giúp làm cho mã nguồn trong Swift trở nên dễ đọc và dễ bảo trì, giúp bạn và đồng đội lập trình dễ dàng hiểu mã và tương tác với nó.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now