11/10/2018, 21:20

Một số Tip để tăng skill cho iOS developer

Xin chào tất cả mọi người Swift là ngôn ngữ lập trình mới được phát triển bởi Apple Inc với mục đích hỗ trợ lập trình viên trong việc phát triển các ứng dụng chạy trên các hệ điều hành như iOS, OSX và watchOS. Swift được xây dựng dựa trên việc kế thừa các tính năng của 2 ngôn ngữ C và Objective-C. ...

Xin chào tất cả mọi người Swift là ngôn ngữ lập trình mới được phát triển bởi Apple Inc với mục đích hỗ trợ lập trình viên trong việc phát triển các ứng dụng chạy trên các hệ điều hành như iOS, OSX và watchOS. Swift được xây dựng dựa trên việc kế thừa các tính năng của 2 ngôn ngữ C và Objective-C.

Hôm nay mình xin phép chia sẻ một số Tip để có thể tăng skill code iOS-Swift.

Subscripts:

Class, struct và enum có thể define subscript. Subscripts dùng để truy cập nhanh các phần tử của collection,list hay sequence.Bạn có thể sử dụng subscripts để set và truy xuất dữ liệu với index luôn mà không cần phải gián tiếp qua phương thức khác. Ví dụ bạn truy cập các phần tử trong Array thông qua someArray[index] Sau đây là 2 ví dụ để mô tả dùng subscript để có thể rút gọn clear hơn:

Không sử dụng subscripts:

struct Matrix {
    let rows: Int, columns: Int
    var grid: [Double]
    init(rows: Int, columns: Int) {
        self.rows = rows
        self.columns = columns
        self.grid = Array(repeatElement(0.0, count: rows * columns))
    }
    
    func getValue(row: Int, column: Int) -> Double{
        return grid[(row * columns) + column]
    }
    
    mutating func setValue(row: Int, column: Int, value: Double){
        grid[(row * columns) + column] = value
    }
}

var matrix = Matrix(rows: 2, columns: 2)
matrix.setValue(row: 0, column: 0, value: 1.0)
matrix.setValue(row: 0, column: 1, value: 2.0)
matrix.setValue(row: 1, column: 0, value: 3.0)
matrix.setValue(row: 1, column: 1, value: 4.0)

print(matrix.getValue(row: 0, column: 0)) //prints "1.0"
print(matrix.getValue(row: 0, column: 1)) //prints "2.0"
print(matrix.getValue(row: 1, column: 0)) //prints "3.0"
print(matrix.getValue(row: 1, column: 1)) //prints "4.0"

Sử dụng subscript

struct Matrix {
    let rows: Int, columns: Int
    var grid: [Double]
    init(rows: Int, columns: Int) {
        self.rows = rows
        self.columns = columns
        self.grid = Array(repeatElement(0.0, count: rows * columns))
    }
    subscript(row: Int, column: Int) -> Double {
        get {
            return grid[(row * columns) + column]
        }
        set {
            grid[(row * columns) + column] = newValue
        }
    }
}

var matrix = Matrix(rows: 2, columns: 2)

matrix[0,0] = 1.0
matrix[0,1] = 2.0
matrix[1,0] = 3.0
matrix[1,1] = 4.0

print(matrix[0,0]) //prints "1.0"
print(matrix[0,1]) //prints "2.0"
print(matrix[1,0]) //prints "3.0"
print(matrix[1,1]) //prints "4.0"

Function vs Computed Property

Function (or

Bài liên quan

Một số Tip để tăng skill cho iOS developer

Xin chào tất cả mọi người Swift là ngôn ngữ lập trình mới được phát triển bởi Apple Inc với mục đích hỗ trợ lập trình viên trong việc phát triển các ứng dụng chạy trên các hệ điều hành như iOS, OSX và watchOS. Swift được xây dựng dựa trên việc kế thừa các tính năng của 2 ngôn ngữ C và Objective-C. ...

Trần Trung Dũng viết 21:20 ngày 11/10/2018

Một số tip tối ưu hóa thử nghiệm ứng dụng dành cho thiết bị di động iOS

Thử nghiệm ứng dụng dành cho thiết bị di động cho iOS là một phần thiết yếu của bất kỳ quá trình phát triển nào do cạnh tranh cao trên thị trường hiện nay. Trong bài viết này, chúng tôi sẽ cung cấp các mẹo thiết thực để tối ưu hóa quy trình thử nghiệm để làm cho nó hiệu quả hơn. 1. Bắt đầu từ ...

Trần Trung Dũng viết 15:33 ngày 20/09/2018

Một số cách để tăng tốc truy vấn sql

SQL Processing & Query Execution Để cải thiện hiệu năng của các truy vấn SQL, trước hết bạn cần biết điều gì xảy ra khi bạn thực thi một câu truy vấn SQL. Đầu tiên, câu truy vấn được đưa vào một cây phân tích cú pháp. Câu truy vấn được kiểm tra xem nó có phù hợp về mặt cú pháp và ngữ nghĩa ...

Hoàng Hải Đăng viết 09:46 ngày 19/09/2018

Code Thối (Code Smells) là gì và một vài tip để cho code của bạn thơm tho hơn

Code thối là cái gì vậy ? Code Smells (Mã xấu, hay "Code Thối nếu thích") là từ được dùng để chỉ phần code mà ta cảm thấy không ổn. Đây thường là đoạn code vi phạm những quy tắc trong lập trình. Giả sử bạn đang đọc một bài viết và bắt gặp một lỗi chính tả. Ngay lập tức, bạn có cảm giác ngờ ...

Bùi Văn Nam viết 18:01 ngày 07/09/2018

Một vài mẹo để tăng performance cho Rails

Như chúng ta đã biêt, đối với một website điều quan trọng nhất là để lại ấn tượng cho người dùng và cung cấp những thông tin mà người dùng quan tâm, và đối với các nhà phát triển web như chúng ta, chúng ta luôn luôn phải đối mặt với một bài toán muôn thủa Performance Performance quyết định rất ...

Trịnh Tiến Mạnh viết 17:51 ngày 12/08/2018
0