LINUX.ORG.RU
ФорумTalks

Вышел MonoTouch 1.2


0

0

Итак, состоялся долгожданный выпуск MonoTouch версии 1.2, о чём Мигель де Икаса и объявил вчера. Почему долгожданный? Потому что наконец-то появилась поддержка отладки! Новый отладчик поддерживает отладку как на эмуляторе iPhone, так и прямо на самом iPhone/iPod. Отладчик интегрирован напрямую в MonoDevelop/OSX. Работа с ним осуществляется так же, как и с любым другим отладчиком.

Технология отладки

В основе лежит новый движок отладки Mono. Так как Apple не опубликовала информацию, необходимую для реализации на iPhone отладчика наподобие GDB или MDB (отладчик Mono), разработчики Mono не стали взламывать протокол, а придумали новый способ отладки приложений Mono. Mono для iPhone использует программный отладчик. Этот отладчик, в отличие от обычных, работает как некоторая управляющая сущность над процессом Mono - другими словами, программный отладчик является обычным отладчиком, встроенным прямо в процесс Mono. MonoDevelop обменивается информацией с этим отладчиком через свой компактный протокол, похожий на тот, что использовался в отладчиках Java. Новая библиотека Mono.Debugger.Soft.dll предоставляет API для работы с этим протоколом и позволяет производить удалённую отладку процесса Mono.

Точки останова

Для реализации точек останова в программном отладчике используются средства операционной системы. Но iPhone не позволяет изменять память без специальных привилегий. Поэтому для реализации точек останова статический компилятор Mono вставляет специальный код в каждом месте последовательности, где проверяются точки останова и одиночные шаги. Генерируемый в итоге таких отладочных сборок код получается больше, но он позволяет осуществить отладку на iPhone без доступа к закрытому API.

MonoDevelop и iPhone

Перед началом отладки MonoDevelop настраивает приложение для соединения с MonoDevelop при запуске и включает отладчик, который прослушивает несколько портов (один для отладочного протокола, другой для перенаправления стандартных потоков вывода и ошибок) и ждёт сигналов от приложения. При соединении отладчик получает сигнал и выполнение продолжается. При использовании симулятора связь осуществляется через локальный сокет, а при использовании самого устройства через TCP/IP по Wi-Fi. Достоинством этого способа является то, что можно распространять бинарные файлы для тестировщиков (используя Ad-Hoc модель) и производить отладку на устройстве пользователя по сети.

Но, вчерашний праздник был бы не полным, если бы всё ограничилось только отладчиком. Помимо этого, есть и другие приятные изменения:

  • генератор привязок C# для библиотек Objective-C;
  • потоки stdout/stderr теперь перенаправляются с устройства на MonoDevelop;
  • добавлены системный таймер и семафоры;
  • поддержка sqlite через библиотеку Mono.Data.Sqlite.dll;
  • исправленные ошибки и другие мелкие улучшения.

Как видно, MonoTouch становится действительно зрелой платформой для разработки приложений под iPhone. Теперь, с появлением отладчика, MonoTouch может предложить разработчикам весь спектр необходимых инструментов.

Полный список изменений.

Процесс отладки в картинках.

Блог Мигеля де Икасы (с картинками)

Перемещено maxcom из Коммерческое ПО

★★★★
Казалось бы, причём здесь линукс?

ЗЫ: моно не нужно, про говнофон даже говорить не хочется.

>В основе лежит новый движок отладки Mono. Так как Apple не опубликовала информацию, необходимую для реализации на iPhone отладчика наподобие GDB или MDB (отладчик Mono), разработчики Mono не стали взламывать протокол, а придумали новый способ отладки приложений Mono.


Ну сколько же можно кушать эти проприетарные кактусы?
Ttt ☆☆☆☆☆
()
>Почему долгожданный?
Я не ждал. ЧЯДНТ ? Это вам не 4-е кеды и 3-й гном.

>Как видно, MonoTouch становится действительно зрелой платформой для разработки приложений под iPhone

Вопрос: нафига нужен яфон если есть Nokia 5800, 5530 ?
unrealix
()
Ответ на: комментарий от Joe_Bishop
>кому нафиг нужен этот моно на айфоне? там ресурсов для этого поделия слишком мало.

Не переживай там применены облачные вычисления. Пруф: http://prooflink.ru/
unrealix
()
Бедный Мигель. Человек потерявший всякую ценность для общества -- пропащий человек.
Neko
()
Кстати, раз новость в категории "OpenSource", а не "Коммерческое ПО", ткните носом в исходники.
supreme
()
> состоялся *долгожданный* выпуск

4.2

Я его не ждал, так что не надо расписываться за всех.

vadiml ★★★★★
()
Ответ на: комментарий от Neko
Себя пожалей. Мигель человек состоявшийсяЮ занимается интересным (по крайне мере ему) делом. А ты кто?
anonymous
()
Ответ на: комментарий от anonymous
>>Мигель человек состоявшийсяЮ занимается интересным (по крайне мере ему) делом. А ты кто?

Да уж, состоявшийся.. А я просто не ахтунг.

is977
()
Прикоснись к Моно!
Valeg ★★★
()
Ответ на: комментарий от is977
>Да уж, состоявшийся.. А я просто не ахтунг.

А толку?

Ты даже картинку для аватары толком вырезать не можешь...

anonymous
()
> mono
> долгожданный

> MuZHiK-2


нувыпоняли
ferhiord ★★
()
Ответ на: комментарий от Deleted

Увидел там только monotouch-1-0 с последней записью в чейнжлоге датированной сентябрём.

supreme
()
Ответ на: комментарий от Joe_Bishop
> кому нафиг нужен этот моно на айфоне? там ресурсов для этого поделия слишком мало.

Ты болен? MonoTouch генерирует нативный код для iPhone.

no-dashi ★★★★★
()
Ответ на: комментарий от anotheranonymous
> Professional $399
> Enterprise $999


Ты еще цены на RHEL зачитай :-)
no-dashi ★★★★★
()
А кто-нибудь вообще им пользуется?
anonymous
()
Ответ на: комментарий от is977
>>Да уж, состоявшийся.. А я просто не ахтунг.

Ты пока что состоявшийся тролль. Видимо, у тебя много свободного времени для этого.

anonymous
()
MonoTouch, афаик, только под мак и закрыт по самое нехочу. Что делает эта новость на ЛОРе?
mono ★★★★★
()
> Итак, состоялся долгожданный выпуск MonoTouch версии 1.2, о чём Мигель де Икаса и объявил вчера

ура, чемодан-вокзал-еблофон. моно go home

Urthang
()
вот бы появилась возможность хоть как-нибудь запустить эмулятор айфона в линуксе.. Или прошивку айфона через какой-нибудь Qemu.
mono ★★★★★
()
Дваждыанальное рабство - это реальность!
rudchenkos
()
>Генерируемый в итоге таких отладочных сборок код получается больше, но он позволяет осуществить отладку на iPhone без доступа к закрытому API.

это называется "дро%;ить в присядку"

зы: а мужик-2 оказывается фонат мигелюшки. после этой новости становится ясно почему, бгггг )))
black7
()

How is MonoTouch Licensed?

MonoTouch is a commercial product based on the open source Mono project and is licensed on a per-developer basis.

Закопайте вместе с автором новости.

Jeepston ★★★
()
>>Так как Apple не опубликовала информацию, необходимую для реализации на iPhone отладчика наподобие GDB или MDB (отладчик Mono), разработчики Mono не стали взламывать протокол, а придумали новый способ отладки приложений Mono.

Так как владелец гей-клуба не дал добро на прокладку велосипедной трассы через его территорию, разработчики Mono придумали объездные пути по пересеченной местности.

gkrellm
()
Мигель продолжает грызть свой Mono-кактус.
vold ★★★★★
()
Ответ на: комментарий от gkrellm
>>Так как владелец гей-клуба не дал добро на прокладку велосипедной трассы через его территорию, разработчики Mono придумали объездные пути по пересеченной местности.

Что странно, так как в принципе в основном для посетителей именно этого заведения велотрек и задумывался.

gkrellm
()
Я так и не услышал ответа, каким боком тема относится к линуксу или свободному ПО.
Ttt ☆☆☆☆☆
()
Поражаюсь упорству Мигеля...
По теме, моно не нужно.
pento ★★★★★
()
Надоел уже со своим МОНО хуже горькой редьки!!!
andre7
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.