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


25

Для когось із досвідом .Net та хочуть розвиватися для iPhone / iPod / iPad, чи варто вивчати Objective-C? Чи хороша альтернатива MonoTouch? Які є компроміси при використанні MonoTouch vs кодування в Objective-C?


1
Здається, що Apple робить це простіше: apple.com/pr/library/2010/09/09statement.html
JeffO

2
Тримайтеся до виходу WP7 і замість цього розвивайтесь. ;)
Адам Лір

@Jeff O, тому мене цікавить досвід людей, що розвиваються з 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 до XML, LINQ, C #, LINQ, сміттєзбірник, LINQ, MonoTouch.Dialog та багато іншого.

Хоча це серйозно ... на сьогоднішній день більшість додатків завжди завантажують дані з Інтернету, і вам потрібно буде перетворювати їх на об'єкти, зберігаючи їх у списках, сортуючи та фільтруючи їх та переміщуючи їх до баз даних. Цей матеріал настільки простий у виконанні C # та LINQ, що я не уявляю, як люди роблять це іншими мовами.

Вартість долара в 400 доларів не є низькою, але ви, ймовірно, можете повернути ці гроші за місяць або близько того, без реклами. А кількість часу, який МТ заощадить, легко компенсує. Також пам’ятайте, що вам не доведеться платити, поки програма не буде готова до тестування на пристрої, тому її безкоштовно навчатись.

З урахуванням сказаного, так, його все ще цілком гідно вивчити 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. Чи можете ви вказати мені на все, що працювало для вас?
Jason S

3

Якщо ви просто хочете швидко витягти щось із дверей, я вважаю, що дорога буде правильною.

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

Добре: час розробки буде набагато швидшим. Як правило, рано на ринок - це велика перевага.

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


Ви дізнаєтесь щось нове, якщо ваш підхід не буде створити додаток для Windows, яке працює на ipad.
JeffO

1

Я починаю розробляти додаток, використовуючи MonoTouch, і вважаю це гарним досвідом. З тенденцією до продуктивності, а не до вивчення нових технологій, MonoTouch чухає свербіж. Загальне відчуття полягає в тому, що Novell зробив велику роботу, зробивши функціонал iOS доступним для розробників .NET, а тепер, завдяки останнім розслабленням ліцензування Apple (вони тепер дозволяють додаткам iPhone / iPad, розробленим сторонніми інструментами), MonoTouch лише збирається набути позиції . Якщо ви переглянете тег #monotouch twitter, ви навіть побачите, що деякі розробники / devshops ПОРТУЮТЬ свої програми Obj-C на .Net, тому що це буде простіше / швидше підтримувати / розвиватися в довгостроковій перспективі. О, і всі рекомендації Apple все ще застосовуються, хоча ви працюєте в .NET - адже я вважаю їх досить корисними.

З МоноДроїдом теж ви, ймовірно, зможете повторно використовувати основні бібліотеки власного додатку через додаток iPhone І Android - наскільки це здорово ??

Ось досить прискіпливе інтерв'ю з Уоллес Маклуре, яке трохи захоплює те, про що я говорю:

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

Я б сказав, піди на це!


0

Існує стаття про один досвід розробки .NET розробки з переміщення його навичок на iOS.

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.