Từ 1 tới 1 trên tổng số 1 kết quả

Đề tài: NSAssert bắt lỗi trong chương trình IOS

  1. #1
    Ngày gia nhập
    04 2011
    Bài viết
    127

    Cool NSAssert bắt lỗi trong chương trình IOS

    NSAssert là một lệnh giúp tránh việc chương trình bị lỗi mà không biết lý do nào để sửa.

    Đầu tiên, chúng ta cần hiểu NSAssert làm việc như thế nào?

    NSAssert đưa ra một điều kiện mà nếu chương trình không thoả mãn thì chương trình sẽ crash ngay lập tức (dừng ngay tại thời điểm đó). Thế tại sao bạn cần phải crash chương trình của mình, đó không phải là việc làm thừa thải quá ư?

    Thật ra là không hề thừa. Một khi chương trình không thoả mãn được điều kiện mà bạn đưa ra thì chính xác đã có lỗi rất nghiêm trọng trong khi bạn lập trình đó là khi bạn quên làm việc gì đó. Việc cho chương trình chạy tiếp không có ý nghĩa gì nữa, việc dừng chương trình là cần thiết trong thời điểm đó. Objective C đem lại cho lập trình viên rất nhiều lợi thế so với các ngôn ngữ khác, cụ thể là việc có thể lập trình với cả những đối tượng NULL (nil theo Objective C) vì vậy rất dễ dàng để bạn phạm lỗi và trong những trường hợp này Compiler sẽ trả về lỗi chương trình đầu nguồn vì theo nó lỗi không phụ thuộc vào việc bạn sử dụng nil object.

    Hãy tận dụng khả năng của lệnh này để tránh lỗi chương trình và tìm ra lỗi nhanh chóng và dễ dàng cho việc sử chữa.

    * Ví dụ cho việc sử dụng NSAssert:

    NSAssert(PlayingScene != nil, @"Playing Scene has not init yet");

    => Trong một số trường hợp, Objective C quá dễ dãi cho lập trình viên khi cho phép các đối tượng nil được phép sử dụng các function hay vì một lý do nào đó mà chương trình không kịp fill đầy đủ các yêu cầu thì cách hay nhất là crash để loại bỏ những trường hợp này.
    Đã được chỉnh sửa lần cuối bởi huygamer : 17-06-2014 lúc 04:10 PM.
    http://huygamer.wordpress.com/
    => Kinh nghiệm lập trình của huygamer
    https://itunes.apple.com/us/app/card...1239?ls=1&mt=8
    => Game Card Rush Halloween mới viết xong

Tags của đề tài này

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn