Dlaczego ARC zabrania połączeń z niezadeklarowanymi metodami?

Używając ręcznego zarządzania pamięcią, możemy napisać wywołanie do metody, która nie jest zadeklarowana w klasie. W tym przypadku otrzymujemy tylko ostrzeżenie. To właśnie podaje Wikipedia na temat jednej z najbardziej charakterystycznych cech Objective-C:

Model Objective-C programowania obiektowego opiera się na przekazywaniu komunikatów do instancji obiektów. W Objective-C nie nazywa się po prostu metody; jeden wysyła wiadomość. W przeciwieństwie do modelu programowania w stylu Simula używanego przez C ++. Różnica między tymi dwoma pojęciami polega na sposobie wykonywania kodu, do którego odwołuje się metoda lub nazwa komunikatu. W języku w stylu Simula nazwa metody jest w większości przypadków powiązana z sekcją kodu w klasie docelowej przez kompilator. W Smalltalk i Objective-C cel wiadomości jest rozwiązywany w czasie wykonywania, a sam obiekt odbierający interpretuje komunikat

Dlaczego więc jest błąd kompilacji w ARC? Jakie są powody, aby złamać tak potężną cechę języka? Co jest tak ważne w tym, czego nie wiem? Czy ktoś może to wyjaśnić? Dzięki

questionAnswers(2)

yourAnswerToTheQuestion