Những thủ thuật cần biết trong lập trình Swift (P9)

Share:

Tạo các chức năng trợ giúp toàn cần

Các biến và chức năng toàn cầu thường được coi như “một điều tồi tệ”, tuy nhiên trong thực tế thì cả hai đều có thể giúp chúng ta tạo ra những dòng code gọn gàng nhất. Điều tồi tệ thực sự có lẽ phải là Global State (câu lệnh toàn cầu). Các chức năng toàn cầu thường cần những câu lệnh toàn cầu để có thể hoạt động, vì thế bạn có thể dễ dàng nhận ra tại sao chúng lại được coi là tồi tệ. Sau đây là một số ví dụ của chức năng trợ giúp Grand Central Dispatch mà không hoạt động trong câu lệnh toàn cầu, nhiều hay ít các cú pháp dễ dàng. Sau đây, chúng ta sẽ thêm chức năng dispatch_after và đưa nó về theo dạng của Swift

Sau đây là một ví dụ cho bạn dễ hình dung một chức năng Wrapper mới có cấu trúc ra sao:

Và ví dụ một chức năng Unwrapped trông thế nào:

Wrapping các chức năng ngôn ngữ C với các cú pháp Swift có thể khiến những đoạn code của chúng ta dễ hiểu hơn. Hãy tìm hiểu những chức năng mà bạn yêu thích và triển khai ngay và luôn. Sự duy trì những chức năng đó trong tương lai sẽ khá là hay miễn là chúng ta vẫn giữ được trách nhiệm với việc đặt tên chính xác cho các phương thức. Nếu chúng ta thay đổi chữ ký phương thức ở trên thành delay(delay: Double, closure:()->()), nó có thể là một ví dụ của một tên phương thức không có trách nhiệm gì bởi vì dispatch_after đòi hỏi một tiến trình GCD, và cái tên đó sẽ không đem lại cho chúng ta bất kì một dấu hiệu nào của tiến trình ta đang sử dụng. Tuy nhiên, nếu như đoạn code đó đang hoạt động trong một quy ước đã được thiết lập sẵn trong việc tính toán tất cả các phương thức trong các chủ đề chính nếu không được nhân biết trong tên hay các comments, delay(delay: Double, closure: () -> ()) sẽ là một tên phương thức chính xác. Bất kể ta đặt tên gì cho các chứng năng trợ giúp thì mục đích của nó vẫn là tiết kiệm thời gian cho chúng ta bằng cách wrapping các đoạn code mẫu và khiến chúng dễ đọc hơn.

Share:

Leave a reply