Nếu bạn cần đăng nhập và di chuyển trên, sau đó bạn không cần phải sử dụng NSAssert.
Nói chung, các xác nhận được dự định sẽ được các nhà phát triển sử dụng để gỡ lỗi các bản dựng để ngừng thực thi ứng dụng ngay lập tức khi phát hiện thấy một lỗi nghiêm trọng. Theo mặc định, các dự án Xcode đặt NS_BLOCK_ASSERTIONS trong bản phát hành để NSAssert thực hiện các cuộc gọi biên dịch.
Đối với các vấn đề nhỏ chỉ cần đăng nhập vào bảng điều khiển, bạn chỉ nên sử dụng NSLog. (Bảng điều khiển trình gỡ lỗi thực sự hiển thị dữ liệu được gửi đến 'stdout', đây là nơi NSLog gửi kết quả của nó.)
Nếu bạn cần các phiên bản gỡ lỗi để xác nhận và phát hành các bản dựng, chỉ cần sử dụng cả hai. Có, điều đó có nghĩa là bạn có thể có cùng một mô tả xuất hiện hai lần trong mã, nhưng điều đó là tốt. Nó sẽ dễ dàng được hiểu bởi bất kỳ nhà phát triển nào. (Bạn có thể tạo chuỗi kết quả trước tiên, cấp dữ liệu cho cả NSAssert và NSLog nếu bạn muốn.)
Nếu bạn phải ghi đè hành vi của cuộc gọi NSAssert, bạn có 2 tùy chọn: 1- thay đổi định nghĩa macro của NSAssert, NSAssert1, NSAssert2, v.v. để thay đổi kết quả. 2- cung cấp đối tượng NSAssertionHandler của riêng bạn cho các chủ đề của bạn và bỏ qua việc ném các ngoại lệ.
Nguồn
2013-02-14 07:05:55