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
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.