Подтвердить что ты не робот

Должен ли я изучать MacRuby или RubyCocoa

Я хочу изучить mac development с ruby, но я не уверен, к какому из них нужно идти. RubyCocoa был вокруг дольше, но я думаю, что MacRuby выбьет его в долгосрочной перспективе.

Любые предложения

4b9b3361

Ответ 1

Пойдите с MacRuby. Это будущее:)

Это новее, быстрее и гораздо лучше интегрировано. HotCocoa также потрясающий.

MacRuby - это Ruby VM, реализованная поверх Apple Technologies, в отличие от моста RubyCocoa. Например, Ruby String является NSString по своей природе, вместо того, чтобы быть привязанным к среде выполнения. Это гораздо более чистый, быстрый и надежный подход. Он также разработал и спонсировал Apple, что означает, что он может стать частью OS X в какой-то момент.

Также см. этот пост: Почему MacRuby имеет значение

Ответ 2

Так как Чак ответил вам, все изменилось довольно много, MacRuby теперь использует LLVM, позволяет компилировать AOT и довольно стабильно и намного быстрее, чем раньше. Рубиновая сторона вещей по-прежнему нуждается в некоторой работе, чтобы быть на 100% совместимой, но по мере того, как я пишу этот ответ, 0.5 все еще находится в стадии бета-тестирования, и вы должны быстро синхронизировать библиотеки ruby.

Ответ 3

RubyCocoa более зрелая и лучше тестируется. MacRuby проще и лучше разработан в целом. MacRuby также примерно так же стабилен, как стул для газонов, сидящий на пляже. Шутки в сторону. Это определенно тот, который вы хотите использовать в долгосрочной перспективе, но его пока нет. Они не такие разные, что вам придется "учиться" друг против друга. Они оба просто Ruby с доступом к API Cocoa. Это больше о знании API Cocoa, чем о чем-либо еще.

Я бы рекомендовал изучить Cocoa с помощью Objective-C. После того, как вы хорошо поймете основные концепции фреймворка (все они основаны на Objective-C), вы можете использовать Ruby, если хотите.

Обновление 2011

Вышеизложенное уже не относится к MacRuby. Он очень прочный и достаточно быстрый, чтобы делать большинство видов приложений Cocoa в чистом Ruby. Команда MacRuby также ушла с пути, чтобы быть совместимой практически со всеми системами, даже с C. Если вам нравится Ruby и вы хотите заниматься разработкой Mac, это определенно нужно учитывать. Нет причин выбирать RubyCocoa больше, если вам не нужна поддержка старых версий OS X или PowerPC (MacRuby строго соответствует Intel 10.5+). Оставшиеся оговорки:

  • Необходимость включения MacRuby.framework в ваши приложения ставит высокую нижнюю границу размера пакета (пара десятков MB для "Hello World" IIRC)

  • Несмотря на то, что он стабилен в целом, он по-прежнему является очень новым бета-программным обеспечением, поэтому в менее используемых углах библиотек есть несколько морщин (например, указатели имеют несколько причуд), а некоторые дизайнерские решения не окончательный (например, поддержка concurrency быстро развивается)

  • Документация по-прежнему находится в процессе разработки и отстает от быстро меняющегося языка. Многие статьи, которые вы найдете о MacRuby, говорят о том, что HotCocoa - это классный, удобный способ создавать приложения - это классный эксперимент, но теперь он отказывается от некоторых важных недостатков, которые делают его непригодным для крупномасштабной разработки приложений. Стандартная инструментальная цепочка Xcode - это поддерживаемый способ разработки MacRuby.

Я также по-прежнему рекомендую изучать Cocoa с помощью Objective-C только потому, что это основной язык фреймворка и, следовательно, путь наименьшего сопротивления.