Tìm hiểu về Automatic Reference Counting(ARC) Và quản lý bộ nhớ trong swift
Trước đây, trước khi ARC được Apple đưa vào Xcode, việc quản lý bộ nhớ là nỗi ác mộng thực sự với các lập trình viên. Lập trình viên chúng ta phải quản lý bộ nhớ một cách thủ công, mất nhiều thời gian vào việc viết code làm sao để vừa phải quản lý bộ nhớ tốt, vừa phải thực thi tốt việc chúng ta ...
Trước đây, trước khi ARC được Apple đưa vào Xcode, việc quản lý bộ nhớ là nỗi ác mộng thực sự với các lập trình viên. Lập trình viên chúng ta phải quản lý bộ nhớ một cách thủ công, mất nhiều thời gian vào việc viết code làm sao để vừa phải quản lý bộ nhớ tốt, vừa phải thực thi tốt việc chúng ta muốn làm.
Sau này, khi ARC được sử dụng, chúng ta đã bớt được rất nhiều công việc phải làm, việc quản lý bộ nhớ đã được xử lý tự động nhờ vào ARC. Tuy nhiên, Objective-C là một ngôn ngữ khá “cũ”, dù không phải lo quản lý bộ nhớ thủ công như trước, chúng ta vẫn phải cẩn thận với code của mình, việc để sảy ra tình trạng memory leaks rất dễ xảy ra với các lập trình viên mới.
Thật may, Swift - một ngôn ngữ bậc cao, mới được Apple giới thiệu trong vài năm trở lại đây để thay thế dần cho ngôn ngữ Objective-C đã cũ. Swift là ngôn ngữ mới, vì thế việc quản lý bộ nhớ trong Swift là rất tốt. Khi sử dụng Swift, chúng ta không cần phải lo nghĩ quá nhiều về memory leak như khi chúng ta sử dụng Objective-C. Tuy nhiên, memory leaks vẫn xảy ra trong Swift, mặc dù với tần suất ít hơn trong Objective-C.
Trong bài này, tôi sẽ giới thiệu đến các bạn về cách mà ARC hoạt động, về reference cycle( nguyên nhân gây ra memory leaks) và cách để chúng ta tránh reference cycle. Cách giới thiệu tốt nhất, không gì hơn là thông qua code