MonoTouch против Objective-C для разработки iPhone / iPod / iPad [закрыто]

25

Стоит ли изучать Objective-C для тех, кто имеет опыт работы в .Net и хочет заниматься разработкой для iPhone / iPod / iPad? MonoTouch - хорошая альтернатива? Каковы некоторые из компромиссов при использовании MonoTouch против кодирования в Objective-C?

ysolik
источник
1
Похоже, Apple делает это проще: apple.com/pr/library/2010/09/09statement.html
Джефф
2
Держись до релиза WP7 и развивайся там. ;)
Адам Лир
@ Джефф О, вот почему меня интересует опыт людей, использующих MonoTouch. Я кодировал в Objective-C, но предпочитаю C #.
ysolik
Если вы можете голосовать и считаете, что это полезный вопрос или у него есть полезные ответы ниже, пожалуйста, проголосуйте. Сайты StackExchange нуждаются в голосах, чтобы создать хорошее сообщество. Вы можете отдавать 30 голосов в день, не тратьте их впустую. Специально для пользователей с высокой репутацией и низким количеством подсчитанных голосов, пожалуйста, прочитайте это: meta.programmers.stackexchange.com/questions/393/…
Maniero
Я также заинтересован в проверке MonoTouch. К сожалению, у меня просто нет времени, чтобы освоить цель-c, и у меня есть магазин, полный экспертов по .NET. Я хотел бы иметь возможность использовать свои знания!
Nodey The Node Guy

Ответы:

17

MonoTouch - фантастическая альтернатива. Я использую его в течение почти одного года, и я не могу представить себе возвращение к цели-c. Основные характеристики: LINQ, LINQ to XML, LINQ, C #, LINQ, сборщик мусора, LINQ, MonoTouch.Dialog и многое другое.

Если серьезно, то ... в настоящее время большинство приложений всегда загружают данные из Интернета, и вам необходимо преобразовать их в объекты, сохранить их в списках, отсортировать и отфильтровать их, а также отправить их в базы данных. Это так просто сделать с C # и LINQ, что я не могу представить, чтобы люди делали это на других языках.

Стоимость в 400 долларов не является низкой, но вы, вероятно, сможете вернуть эти деньги примерно через 1 месяц без рекламы. И количество времени, которое МТ сэкономит вам, легко компенсируется. Также помните, что вам не нужно платить, пока приложение не будет готово к тестированию на устройстве, поэтому оно бесплатно для изучения.

С учетом сказанного, да, его все еще вполне стоит изучить Objective-C. Это сделает вас лучшим разработчиком для платформы, вы поймете, почему некоторые вещи такие, какие они есть, и так далее. Вы также сможете прочитать примеры Obj-C в Интернете и перевести их на C #.

Наконец, вот мое предложение: если вы хотите заняться разработкой для iOS, перейдите на MonoTouch. Потратьте несколько недель, используя его, а затем примите решение о переходе на Obj-C. Самое сложное в разработке iOS - это не язык Obj-C, а все новые фреймворки, которые вам придется выучить. Возможность изучить их на C # - ОГРОМНАЯ сделка, с самого начала вы будете намного продуктивнее. Сразу после того, как вы узнаете эти вещи, загляните в Obj-C: все будет уже знакомо, так что все будет легко понять.

Эдуардо Скос
источник
13

Я опытный разработчик C, C ++, Delphi & .NET, и недавно мне нужно было заняться разработкой приложений для iOS с помощью .NET. Изначально я был очень взволнован MonoTouch и залез в него, только чтобы обнаружить, что кривая обучения на самом деле была не языком, а скорее шаблонами проектирования.

Я также отметил, что поддержка сообщества для MonoTouch была намного меньше, чем для Xcode и Objective-C.

Мой совет, найдите время и изучите Objective-C. Прочитайте рекомендации Apple для разработчиков и узнайте, как это сделать правильно.

Крейг Николсон
источник
Мне нравится напоминание о том, что MonoTouch потребует хотя бы некоторого обучения, даже если вы опытный разработчик .NET. Я также смотрю на приложение для iOS, подключающееся к SQL Server / .net. Можете ли вы указать мне на что-нибудь, что работает для вас?
Джейсон С
3

Если вы просто хотите быстро что-то вытащить за дверь, я думаю, что однодневка - это то, что нужно.

Плохо: помните, что MonoTouch стоит 399 долларов за одного разработчика. Это означает, что если ваше приложение оценено в $ 0,99, то вам, по сути, нужно продать более 400 приложений, чтобы даже заработать деньги. Это не означает, что вы не получите полных 0,99 долл. США за каждую покупку приложения. Еще одна вещь, о которой стоит подумать: если вы хотите, чтобы другие разработчики присоединились к вашему проекту, подавляющее большинство разработчиков iPhone по-прежнему используют Objective-C, так что, вероятно, будет сложнее найти партнеров.

Хорошо: время разработки будет намного быстрее. Рано выходить на рынок, как правило, большое преимущество.

Нейтральный: вам все еще нужно изучить библиотеки iPhone, жизненный цикл приложения и все другие мелкие нюансы iPhone. Таким образом, даже если вам не нужно изучать Objective-C, вы все равно должны изучить основы. Так или иначе, ваше приложение может быть в равной степени потрясающим, так как это все еще iOS Framework в конце дня.

Райан Хейс
источник
Вы узнаете что-то новое, если только вы не создадите приложение для Windows, работающее на ipad.
Джефф
1

Я начинаю разрабатывать приложение, используя MonoTouch, и нахожу это хорошим опытом. MonoTouch склоняется к тому, чтобы быть продуктивным, а не изучать новые технологии. По общему мнению, Novell проделала большую работу, сделав iOS-функциональность доступной для разработчиков .NET, и теперь с недавним ослаблением лицензии Apple (теперь они позволяют приложениям для iPhone / iPad, разработанным сторонними инструментами), MonoTouch только набирает обороты , Если вы посмотрите тэг #monotouch twitter, вы даже увидите, как некоторые разработчики / разработчики ПОРТАТИВАЮТ свои приложения Obj-C на .Net, потому что это будет легче / быстрее поддерживать / развивать в долгосрочной перспективе. Да, и все правила Apple по-прежнему применимы, даже если вы работаете в .NET - на самом деле я нахожу их довольно полезными.

С MonoDroid вы, скорее всего, сможете повторно использовать основные библиотеки своего приложения в приложениях для iPhone и Android - насколько это круто ??

Вот довольно оптимистичное интервью с Уоллесом Маклуром, которое отражает немного из того, о чем я говорю:

http://adtmag.com/articles/2010/09/29/monotouch-qa-with-wallace-mcclure.aspx

Я бы сказал, пойти на это!

Марк Гибо
источник
0

Есть статья об опыте одного разработчика .NET в переносе его навыков на iOS.

В этой записи блога рассказывается о моем опыте обучения написанию программного обеспечения для iOS, проведшего много лет исключительно в мире разработки .NET. Он предоставляет предупреждения, предложения и советы для тех, кто заинтересован в изучении разработки под iOS. Пост заканчивается качественным сравнением программирования в WPF и iOS.

gbjbaanb
источник