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 из Коммерческое ПО

★★★★

убожество на убожестве и убожеством погоняет

когда уже Мигеля с позором выгонят из всех связанных с OSS организаций?

PayableOnDeath
()

Моно не нуно.

anonymous
()

> разработчики Mono не стали взламывать протокол, а придумали новый способ отладки приложений Mono.

разработчики Mono не стали взламывать протокол, а придумали стройную систему костылей и подпорок. // FIXED

www_linux_org_ru ★★★★★
()

Рипарям привет:
- tomboy
http://qa.debian.org/popcon.php?package=tomboy

number of submitters = ~ 5500


- Gnome (gnome-session & gdm)
http://qa.debian.org/popcon.php?package=gdm
http://qa.debian.org/popcon.php?package=gnome-session

number of submitters = ~ 40000


- xfce (xfce4-panel)
http://qa.debian.org/popcon.php?package=xfce4-panel

number of submitters = ~ 6000

Т.е, ~14 % пользователей Gnome используют tomboy - сопоставимый по популярности с xfce4.

elipse ★★★
()
Ответ на: комментарий от elipse

Увлекаешься статистикой?)
Причем тут кол-во томбоеюзверей и xfce?
А если тогда сравнить, какой процент пользователей Гнома использует томбой?

pento ★★★★★
()
Ответ на: комментарий от PayableOnDeath

Ну покричи тогда , что "винада_не_нада" - полегчает может ...,
И да, это ведь любимое занятие красноглазиков . :))

elipse ★★★
()
Ответ на: комментарий от elipse

>Т.е, ~14 % пользователей Gnome используют tomboy - сопоставимый по популярности с xfce4.

tomboy ставится по умолчанию и не все знают как его удалить. А вот xfce устанавливают добровольно. На самом деле эта статистика означает следующее: 86% пользователей Gnome не ленятся его удалить.

legolegs ★★★★★
()
Ответ на: комментарий от legolegs

>86% пользователей Gnome не ленятся его удалить.

В смысле удалить tomboy.

legolegs ★★★★★
()
Ответ на: комментарий от elipse

Сорри за флуд... Ну нашел человек интересную новость - разместил. В общем, к технологиям опенсорс отношение имеет. Чего обгаживать-то. Если моно есть, значит оно кому-то надо. Мне не надо, тебе не надо, а Васе Пупкину надо.

anonymous
()
Ответ на: комментарий от elipse

>>Т.е, ~14 % пользователей Gnome используют tomboy - сопоставимый по популярности с xfce4.

Хорошо хоть из 12 Федоры его выпилили нах

is977
()
Ответ на: комментарий от anonymous

>>Мне не надо, тебе не надо, а Васе Пупкину надо.

Значит Вася Пупкин латентный ведузянтег и пассив

is977
()
Ответ на: комментарий от aJJ

>>Нужно устроить голосование. Тогда узнаем какому % лоровцев mono надо.

Мужиг2 зафигачит себе тысячи аккаунтов и те кому не надо останутся в меньшинстве

is977
()
Ответ на: комментарий от is977

Тебя тут следует огорчить - уже в федоре было принято решение о совместимости и приемлемости лицензии mono для основных репозиториев.

elipse ★★★
()
Ответ на: комментарий от mono

>вот бы появилась возможность хоть как-нибудь запустить эмулятор айфона в линуксе..
Ставится Макос в виртуальную машину.
Туда эмулятор iPhone.

grim ★★☆☆
()
Ответ на: комментарий от elipse

>>Тебя тут следует огорчить - уже в федоре было принято решение о совместимости и приемлемости лицензии mono для основных репозиториев.

Огорчить то ты меня можешь, но томбоя в ней уже нет по дефолту и этот факт радует. Теперь осталось выпилить F-spot и моно из поставки по дефолту.

is977
()
Ответ на: комментарий от elipse

ты всегда забавлял меня своими далекоидущими выводами, не экстрасенс случаем? а то уже знаешь, что я что-то буду кричать, а я и не собирался, всего-то намекнул на то, что есть ложь, наглая ложь и статистика

PayableOnDeath
()
Ответ на: комментарий от PayableOnDeath

>>хм, он у меня и не был установлен по дефолту, ЧЯДНТ?

Я не телепат что бы угадывать как ты ее инсталил. В 11 он еще ставился с гномом, в 12 его заменил gnote

is977
()

Вышел MonoTouch 1.2

Какое отношение имеет эта новость к Линукс?

e000xf000h
()
Ответ на: комментарий от grim

жестоко... у меня процессор SSE2 не поддерживает.

Лучше я на нормальном макбуке буду эмулятор запускать.

mono ★★★★★
()
Ответ на: комментарий от mono

MonoTouch, афаик, только под мак и закрыт по самое нехочу. Что делает эта новость на ЛОРе?

Потому что это очередное поделие от предателя FSF, а мы наверное должны быть в курсе того что «неуловимый Джо» затевает.

e000xf000h
()
Ответ на: комментарий от is977

> Огорчить то ты меня можешь, но томбоя в ней уже нет по дефолту

Я тебя огорчу еще раз - томбой в ней может быть не включен на дистрибутивный DVD, но туда также не включен например и tuxracer, tftp-server и k3b...

no-dashi ★★★★★
()
Ответ на: комментарий от is977

>Ставить кеды в гномебасед дистре это изврат

В федоре вообще-то нормальные кеды, а не кривой обмылок как в убунтах.

legolegs ★★★★★
()

Устриц не ел поэтому оценивать не буду. Но раз интенсивно развивается, то значит нужно.

В целом, концептуально, моно может стать как раз той самой базой для кросс-платформенной разработки без бубна (т.е. кодь хоть в линуксе хоть в винде а работает и выглядит одинаково везде без перекомпиляции).

Genuine ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.