Руководящие принципы использования уведомления
В то время как при использовании уведомлений, твердо придержитесь следующих руководящих принципов. Использование уведомлений, которые нарушают эти руководящие принципы, могло приводить к непредсказуемым результатам для вашего приложения.
§ Не полагаются на последовательность обращения к уведомлениям.
Вы можете считать commandWillStart () обстрелянным прежде commandEnded (), и beginInsert () обстрелянный прежде endInsert ().
Доверие на любые другие последовательности могло бы приводить к проблемам для вашего приложения, если последовательность изменена, когда новые уведомления представлены, или существующие перестроены.
§ Не полагаются на последовательность операций (функция вызывает) между уведомлениями.
Если Вы связываете ваше приложение с этим уровнем подробности, ваше приложение может терпеть неудачу в будущих выпусках.
Вместо доверия на последовательности, положитесь на уведомления, чтобы указать состояние системы. Например, когда Вы получаете erased (kTrue) уведомление на объекте A, это означает, что объект A стерт. Если Вы получаете erased() уведомление на сопровождаемом erased() уведомление на B, это означает только, что оба объекта A и B стерты. Система не будет гарантировать, что B будет всегда стираться после A.
§ Не используют никакие функции взаимодействия пользователя в вашей функции повторного вызова уведомления, типа acedCommand (), acedGetPoint (), acedGetKword (), или любого другого acedXXX () функция.
Подобные интерпретации обращаются к уведомлениям на реакторах базы данных, редактор реакторы, и операционные реакторы.