• Возможности и преимущества использования Objective-C?

    @vlm
    > 1. Почему Apple выбрала именно этот язык в качестве основного для своей платформы?

    Потому что Jobs в Apple второй раз пришёл из компании Next, в которой язык был основой платформы. А там он был основой платформы по причине того, что был лучше остальных (в середине-конце восьмидесятых). Джобс, пришедший в Apple, застал нереальный бардак в операционке (Mac OS 8, 9), которая на годы отставала от своих конкурентов (Windows, Linux), не имела нормальной многозадачности, etc. Поэтому он втащил туда половину софтверной составляющей компании Next, чтобы начинать писать операционку не с чистого листа. К моменту прихода Джобса в Apple (1997) C++ не был сильно лучше, чем Objective C (проблемы с ABI, проблемы с метапрограммированием, etc), поэтому даже тогда смысла менять шило на мыло не было.

    > 2. Какие элементы дизайна языка отражают дизайн самой платформы Cocoa?

    Простоту (single-inheritance) и документированность.

    > 3. Какие элементы дизайна Objective-C нравятся лично вам, оказываются очень полезными/незаменимыми в работе, и которых не хватает в каких-нибудь других языках, с которыми вы тоже работаете?

    Objective C является самым хорошим языком из семейства С для работе в команде. Явные имена аргументов увеличивают читаемость кода и снижают остроту необходимости и/или свежести документации. Single inheritance, no operator overloading, отсутствие метапрограммирования нивелируют разницу в стилях между членами команды (когда один не понимает другого). Упрощается ревью кода.
    Ответ написан
    Комментировать