Tạo Style cho UIView

Giới thiệu Có nhiều cách để làm đẹp hơn là làm bánh hay làm tình Đây là phần 2 của bài trước tuy nhiên nó chẳng liên quan gì đến phần đầu cả :D. Ở phần đầu tiên mình đã giới thiệu một cách đơn giản để ta reuse lại code sử dụng struct. Phần này phức tạp hơn, ý tưởng dựa trên việc sử dụng IBInspectable để định hìnhh style cho UIView, bạn vừa có thể tự tạo style trong code, đồng thời cũng có thể tùy biến thông qua UI.

Style view

Một phút cho quảng cáo Trong lập trình IOS nói riêng và mobile nói chung, kỹ năng code giao diện là phần rất quan trọng. Độ phức tạp của một task và thời gian thực hiện phụ thuộc nhiều vào UI bạn làm. UI đơn giản thì làm nhanh, UI khó thì làm lâu. Kĩ năng tạo giao diện cần được các thợ code mobile trau dồi, rèn luyện thật kĩ.

Xử lý callback hell với functional programming

Giới thiệu Callback là kĩ thuật được ưa chuộng trong lập trình hiện nay. Ngặt nỗi, nếu sử dụng không khéo rất dễ xảy ra callback hell. Dưới con mắt nghệ thuật, nó lai lái kim tự tháp, nhưng dưới con mắt coder, đặc biệt với những lập trình viên ưa-cái-đẹp thì nó chẳng khác gì một thảm họa. Bí kíp tránh callback hell không phải là không có. Nếu chính đạo dùng Promise thì tà đạo chơi functional programming.

Tổng hợp một số tip Swift

Tổng hợp một số tip Swift mà mình hay dùng Measurement Nếu bạn muốn qui đổi đơn vị một cách nhanh chóng mà không phải tự xây dựng hệ thống chuyển đổi riêng thì measurement là lựa chọn hợp lý. 1 2 3 4 5 6 typealias Duration = Measurement<UnitDuration> let s = Duration(value: 60.0, unit: .seconds) let m = Duration(value: 1.0, unit: .minutes) let twoMinutes = s + m twoMinutes.

Strong type và bài toán qui đổi tiền tệ

Strong type là gì? Tại sao lại cần? Strong type là cách ta định nghĩa ra một kiểu dữ liệu mới, từ những dữ liệu có sẵn nhưng mang tính định danh cao hơn. Ở các ngôn ngữ khác, ví dụ như haskell, người ta hay gọi đấy là Phantom types (kiểu bóng ma) Một ví dụ điển hình và đơn giản nhất: Ta có một struct Bank để gửi tiền