Как стать автором
Обновить

Комментарии 58

Когда рассказал коллегам о возможности разработке на с# для iphone меня засмеяли из-за технологической не совместимости платформ и никакие доводы и технические детали уже не помогали. Теперь буду использовать видео как proof link.
заодно покажите им Unity для iPhone
unity3d.com/unity/features/iphone-publishing

в котором скрипты для игр пишутся на Mono, в том числе на C#
Немного дороговато, но и SDK от Apple достаточно стоит.
НЛО прилетело и опубликовало эту надпись здесь
может что-то путаю, но за что в таком случае 99$?
НЛО прилетело и опубликовало эту надпись здесь
Пасиб за поправку.
этот MonoTouch как PyQt — простая обвязка CocoaTouch на C#.

Писать проект под iPhone я бы на нем не стал, помимо привязки к самой Apple, получаем еще привязку к авторам MonoTouch чтобы они обновляли API вслед за Apple.

Просто ИМХО какой-то костыль, проку от которого не так уж и много, а проблем может принести достаточно.

Вот Unity совсем другое дело, они к Cocoa почти не привязаны
Unity — действительно совсем другое дело. Закрытые исходники, приличная стоимость «входа», и на сколько я знаю, оно вообще только для графических приложений (не интерфейсных).
ну Unity это неплохой игровой движек для айфона, причем стоит он не так уж и много — $400 для одиночного разработчика
Нет. Как простая обвязка может запускаться, если под iphone нет VM, в которой она работает?
а пойти на офф сайт и почитать это невыполнимая задача?
To satisfy these technical and legal requirements, MonoTouch is delivered as a static compiler that turns .NET executables and libraries into native applications. There is no JIT or interpreter shipped with your application, only native code.

This is built on top of Mono's Ahead of Time Compilation technology

MonoTouch allows developers to create C# and .NET based applications that run on the iPhone and can take advantage of the iPhone APIs as well as reusing both code and libraries that have been built for .NET as well as existing skills.


Я это читал. Mono's Ahead of Time Compilation мало смахивает на простую привязку и проводить аналогии с PyQt неуместно.
and can take advantage of the iPhone APIs as well as reusing both code and libraries that have been built for .NET

почему приводить аналогии неуместно? MonoTouch по смыслу такая же обвязка над Cocoa, как и PyQt над Qt.
Для моно есть AOT, для PyQt — GIT, разница не очень большая, но основной мой посыл был не в этом.
Ну как бы плюс прямой: не нужно изучать новый инструмент. Альтернатива — всегда хорошо.
Монодевелоп считаю для себя более предпочтительной IDE, чем XCode.
не нужно изучать новый инструмент
А все-равно придется
Монодевелоп считаю для себя более предпочтительной IDE, чем XCode.
Монодевелоп? под маком? Против XCode? Да не смешите меня
«MonoTouch requires a Mac and Apple's iPhone SDK to test on the emulator and deploy on the device. And you will need to be an Apple iPhone developer to deploy on the device.»

я правильно понял что для написания iPhone-софта на С# нам всё равно нужен мак? Ну и чтобы деплоить — $99 для Apple?
Не факт. Если не нужно тестить на симуляторе и деплоить — то может и не нужно.

Но вот то. что они путают термины «эмулятор» и «симулятор» что-то не говорит в их пользу…
НЛО прилетело и опубликовало эту надпись здесь
конечно нужен мак. И конечно нужно заплатить $99 за iPhone Developer Program(хотя если вам нужно исключительно тестировать, то есть некоторые решения, правда только с джеилбрейком)
Да, про $99 я как-то сдуру ляпнул, это индифферентно. А про мак жаль — я думал они АПИ портировали как собственно дотнет…
НЛО прилетело и опубликовало эту надпись здесь
вы правы, но ведь есть те люди которые пишут на C# под Windows Mobile. Вот им то MonoTouch пригодится как нельзя кстати. Все таки не надо изучать новый язык
Я думаю коммерческий продукт будет обновляться в ногу с iPhone SDK. По поводу кода, какой он генерирует, я бы не спешил со скороспелыми заявлениями. Устроим для начала тест-драйв. Я хоть и С/С++ программист, но для меня C# приятнее, нежели Obj C.
Обожэ, неужели я смогу писать для своего любимого гаджета на любимом языке?
Побежал качать.

Только поясните пожалуйста, монотачу есть путь только в цидию, или компилируется приложение, которое пройдёт и в аппстор?
Он в конце про это говорит — компилируется все в нативный код, который спокойно может распространяться через AppStore. Джеилбрек не требуется.
Очень впечатлило. Было бы гораздо приятнее писать на C#, а не на Objective C. Никак не могу в себе перебороть неприятие синтаксиса последнего :(
Важный момент, не нашёл ответа в предыдущем посте. iPhone OS сборку мусора не поддерживает, а в MonoTouch эта функциональность заявлена. Интересно, как она реализована? Если нормально, то это ж принципиальное отличие от девелопмента на чистом Objective C.
Я уже писал выше, MonoTouch это обвязка CocoaTouch на C#, по идеологии точно такая же как и PyQt над Qt. В первом используется сборщик мусора Mono, во втором — Питона, они и сделяд за необходимостью удалять все объекты
НЛО прилетело и опубликовало эту надпись здесь
«К тому же на Mac OS X» — это не к тому же. Это наоборот очень даже предсказуемо. Более интересно можно ли это сделать не на Mac OS X, а на Windows или Linux.
можно, платформа Mono есть везде, только это будет не так удобно так Interface Builder и IPhone Simulator отсутствуют под другие ос.
нельзя
Официально публиковать приложения в AppStore разрешается только с MacOS насколько я знаю, и любая виртуализация MacOS является нелегальной.
Браво! Не могу дождаться момента, чтобы опробовать MonoTouch IDE.
>>> К тому же, все это делается в MacOS X.

в чем профит этого костыля, если с ним нельзя разрабатывать в Linux и Windows?
а еще орут что Mono — это свободно и кроссплатвормено…
Писать на C# лично мне намного приятнее, чем на Objective C.
А кому-то будет просто очень кстати спортировать свои .net приложения под айфон
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Оно использует компоненты iPhone SDK. Как только они появяться, что врядли, для других платформ — так сразу Моно Тач их станед поддерживать. А само Моно кроссплатформенно. ;)
я вот тоже сперва неподумав обрадовался что можно будет писать под линуксом, однако сейчас уразумел что не всё так радужно. Писать на шарпе это конечно клёво, но если для этого всё ещё нужен мак… Практически все преимущества тают аки январский снег июльским полуднем.
На линуксе писать можно, а вот тестировать в симуляторе — нужен мак.
Интересно, когда допилят можна будет поиграться. :)
Если ли прога для разработки приложений в Windows? простите за ламмерский вопрос!
Прога для разработки приложений в Windows есть. Какой вопрос, такой и ответ :)
спасибо за ответ! :) Если не сложно дайте пожалуйста их названия.
Так много гадостей хочется сказать про кросплатформенность и монополизм apple, но фанбои явно не поймут.

Есть чё похавать?
нет, иди в топик про оперу и тролли на тему «Uniteненужен»
НЛО прилетело и опубликовало эту надпись здесь
Пардон, а скачать где сабж? Очень хочется попробовать
Так ещё только селективный бетатест, AFAIK.
У меня приличный опыт разработки как на C#, так и на Objective C. Подтверждаю, что ни о каком легком портировании приложений с Windows Mobile на iphone речь не идёт — посмотрите сами, в ролике автор пользуется родным Interface Builder, все либы в C# называются «по-айфоновски» и т.д.

Короче говоря, действительно, больше похоже на развлечение, не более. В любом случае, для разработки под айфон необходимо учить iphone sdk — и никуда от этого не денешься :)
Бизнес-логика остается не измененной — меняется лишь вью слой, но это происходит при любом портировании.
чисто из интереса: а сколько WinMobile приложений(имеется ввиду более-менее серьезных) написано на CompactFramework? Просто я часто говорил с программерами под WinMobile, они юзать .Net сильно боялись, т.к. у большинства устройств мало памяти, и сама VM загрузит ее почти по полной?
Мало, весьма мало, но это дело времени.
Памяти сейчас на новые коммуникаторы ставят весьма достаточно, да и общая масса устройств обновляется раз в 2-3 года. Гораздо удобнее писать приложения с общей логикой под CF/MonoTouch, адаптируя визуализацию, проблема сейчас лишь в переносе старого нативного кода, коего куча, под фреймворк.
НЛО прилетело и опубликовало эту надпись здесь
Ничего не загружает, у меня 64МБ памяти в коммуникаторе. Работает сразу несколько .net приложений, без тормозов.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации