Có khá nhiều cách để lưu trữ dữ liệu local trong iOS app. UserDefaults, Keychain và Core Data là những cách phổ biến để persist data (những dữ liệu vẫn tồn tại trong app dù đã quit app và có thể sử dụng cho lần khởi động app tiếp theo). Vậy làm sao để chúng ta quyết định xem cách lưu trữ nào là phù hợp trong từng trường hợp? Chúng ta hãy cùng nhau tìm hiểu nhé! UserDefaults Theo tài liệu của...
Swift XcodeKhi bắt đầu học trên trường về Design Pattern chúng ta đều biết Singletons Pattern, một pattern rất dễ sử dụng, và được sử dụng rất nhiều khi phát triển một ứng dụng iOS. Hôm nay tôi sẽ giúp các bạn cách sử dụng Singleton an toàn hơn cách các bạn đang dùng Cách sử dụng Singletons Tư tưởng chính của singleton là đảm bảo chúng ta chỉ tạo ra một instance của type được cho trước. Singletons...
Swift iOS Xcode singletonTrong quá trình phát triển ứng dụng, chúng ta rất khó tránh khỏi việc tạo ra retain cycles kể cả với những lập trình viên giàu kinh nghiệm. Retain cycles không phải lúc nào cũng dễ dàng để phát hiện và có thể dẫn đến hàng giờ để debug. Tất nhiên có những công cụ tuyệt vời giúp chúng ta thực hiện debug dễ dàng hơn (như: memory graph debugger,...) nhưng quá trình debug vẫn khá là vất vả và mất...
Swift Xcode UniTestĐây là bài dịch từ trang medium.com. Mời các bạn xem bài gốc tại đây: https://medium.com/codex/xcodes-built-in-refactoring-tool-is-awesome-21492b236ab6 Các công cụ giúp tái cấu trúc mã có sẵn của Xcode có thể là một công cụ tiết kiệm thời gian tuyệt vời. Hơn nữa là các tính năng tái cấu trúc này cực kỳ đơn giản để học và làm thực hiện. Công cụ tái cấu trúc mã trong Xcode đã có được một thời...
Xcode Code refactoringLàm thế nào để đặt biến môi trường trong XCode. Các bạn sẽ hẳn rất quên thuộc đối với Preprocessor Directive. #if DEBUG print("print debug value", x) #endif Nhưng hôm này mình sẽ giới thiệu ProcessInfo để sử dụng trong dự án. Process Info The process information agent can return information such as arguments, environment variables, host name, and process name. The processInfo class method returns the shared agent for the...
Xcode environmentChào các bạn thân mến ! Tôi lại có chút thời gian để ngồi viết lách một chút về Swift UI. Kể từ khi Apple giới thiệu về nó, tôi không ngừng cảm thấy hứng thú. Tôi cố gắng nghiên cứu từ những cái cơ bản nhất để cố gắng tiếp cận được với nó. Ở phần trước tôi đã giới thiệu sơ qua về Swift UI còn ở phần này chúng ta có thể gọi là pactice một chút. Tôi sẽ giới thiệu về...
Swift SwiftUI Xcode