Hướng dẫn về style và quy ước code trong Swift(Phần cuối) - Cách mô tả các Type data, Access control, Control Flow, Manager memory...

Tiếp theo phần trước chúng ta sẽ tiếp tục tìm hiểu một số style và quy ước code của một số kiểu dữ liệu sau đây.


Kiểu tự suy luận(type inference)


Để khởi tạo một số mảng rỗng hay dictionary rỗng chúng ta thường khái báo như sau:


Một số cú pháp khai báo biến khác được ưa dùng.
Access control
Là nhưng từ khóa như: public, private, privatefile….
Thông thường để cho phép truy xuất toàn quyền vào một biến hay class nào đó chúng ta sẽ dùng open, public, internal.


Control Flow
Thường sử dụng for-in hơn là dùng for khi sử dụng vòng lặp.


Bắt lỗi(Error handling)
Giả sử bạn có hàm getNameOfUser và nó sẽ trả về kiểu String, tuy nhiên một ngày đẹp trời nào đó nó bị lỗi và không thể lấy được tên.Thông thường để dễ bắt lỗi chúng ta sẽ dùng String? Là kiểu trả về cho hàm, khi đó hàm có thể trả về nil và ta có thể kiểm tra điều này.


Ví dụ:
Thay vào đó chúng ta cũng có thể nên dùng try/ catch để bắt lỗi cũng được.


Chúng ta có thể tạo một struct quản lý lỗi như sau:


Và sử dụng nó:
Nhờ vậy mà khi có lỗi chúng ta sẽ dễ dàng biết được chi tiết lỗi hơn, khỏi sợ lỗi mà không rõ nguyên nhân.




Nên dùng kết hợp Switch với enum khi sử lý một vấn đề nào đó mà sẽ có nhiều trường hợp xảy ra. Vì enum hỗ trợ chúng ta cơ chế associated value khá hay bạn có thể tìm hiểu chi tiết ở bài này.
Ví dụ:


Khi dùng Switch chúng ta có thể dùng kèm theo với throw để bắt lỗi một cách dễ dàng hơn.
Ví dụ:
Quản lý bộ nhớ.
Chắc bạn cũng biết thế nào là retain cycle(Tham khảo bài này). Nó là một hiện tượng khá nguy hiểm trong Swift. Để tránh nó người ta thường sử dụng [weak self] và guard let strongSelf = self else { return } Có nghĩa là sẽ ưu tiên dùng  [weak self] hơn là [unowned self] Thông thường được dùng nhiều trong clouse.


Dấu ngoặc nhọn thường được sử dung như sau:
Khuyên dùng:

Khoảng cách của dấu : khi khai báo cái gì đó.



Không nên dùng ; sau khi kết thúc một dòng code nào đó.


Nếu trong một dòng có nhiều phần chúng ta nên dùng dấu ngoặc tròn để chia nhỏ các phần để dễ hiểu và code rõ ràng hơn.

let playerMark = (player == current ? "X" : "O")


Có một thu thuật như thế nào, chúng ta có thể bôi đen toàn bộ code trong 1 file và nhấn Control-I , Xcode sẽ tự format canh chỉnh indent cho dòng code của chúng ta một cách hợp lý nhất.


Một số ví dụ code tham khảo:
Ngoài các phần chúng ta đã tìm hiểu qua 2 phần trước chúng ta có thể tham khảo các tài liệu của Apple:

Phần cuối này chúng ta đã tìm hiểu chi tiết hơn và tập trung vào style,convention code trong quản lý bộ nhớ, các kiểu dữ liệu, cách đóng mở ngoặc nhọn, ngoặc tròn, ... và một số tài liệu tiếng anh của Apple cho các bạn nghiên cứu và tìm hiểu thêm… để góp phần nâng cao và hoàn thiện kỹ năng code của bạn khi phát triển ứng dụng iOS.

Hy vọng các bạn thích và học được nhiều kiến thức từ bài viết này. Mong các bạn chia sẽ nó để mọi người cùng học và cùng trao đổi. Mọi thắc mắc hay trao đổi về bài viết, các bạn có thể để lại bình luận bên dưới mình sẽ hỗ trợ sớm nhất.
Chân thành cảm ơn các bạn đã theo dõi.


Post a Comment

0 Comments