Pull to refresh

Comments 25

Впечатляет, вы молодец.
Интересно, ведь получается, что Nokia закопала невероятно перспективную платформу. Глядя на ваш труд, видишь, что в запасе у платформы такой мощный пласт, что при должном бережном и внимательном обращении, разработчик мог добиться таких успехов, что заткнуть по функционалу и iOS, и Android, и Windows Phone было бы раз плюнуть. Была ведь у компании мощная ОСь, так нет, они её закопали, отказались от MeeGo, готовят эйтаназию для Symbian и отдают весь высокий ценовой сегмент Microsoft. Разве будут гаджеты под Windows Phone стоить сильно меньше n900? Сильно сомневаюсь. Да, Microsoft обещает дифференциацию устройств и выход в средний ценовой диапазон.
И, всё же, я по-прежнему не уверен, что существующие на рынке ОСи настолько сильно лучше и функциональнее Maemo, чтобы стоило её бросать. Я не учитываю извечный аргумент, что во всяких маркетах 100500 приложений.
Черт побери, это круто! Респект.

Есть ли уже какие то ощущения от работы? Сильно тормозит при загрузке/исполнении?
Пока что есть ощущение, что зря сидел до 4 утра. Стартует оно, как водится, не быстро, хэлловорд со скриншота запускается секунды три. В принципе, это даже меньше какого-нибудь вполне нативного filebox-а. Да и решается ahead-of-time-компиляцией. Во время выполнения же ведёт себя достаточно отзывчиво. Опять же отнюдь не хэлло-ворд у меня стартовал примерно столько же. А вот раму кушает немилосердно (14 метров, где это видано), но, думаю, там львиную долю занимает сам рантайм, большая часть которого потом уйдёт в swap.
Попробовал завести тестовый билд прожки с разрабатываемыми сейчас собственными контролами (мы устали от ключноватого GTK# и решили делать гуй полностью на Win Forms). Всё перенеслось на ура и без каких либо правок. Единственное, уж очень забавно обрабатывается BorderStyle=None у формы.
Оппа, а можно оффтопик? А что GTK# сильно глючный? Как раз чалится большая задача по написанию линух клиента, думал не делать на винформе а использовать GTK# (на сайте монопроекта ратуют за него типа и нативней выглядит (неважно) и шустрее работает (важно) www.mono-project.com/Gui_Toolkits). Я смотрел демку граф редактора на нем — вроде неплохо бегала.
Если есть пара минут — не опишете основные траблы с GTK#? Заранее спасибо.
Скажем так, он несколько неочевиден, да и возможности не особо широкие. Например, размеры рабочей области экрана средствами GTK не получить никак. При попытке использовать совместно с Winforms рискуете поймать SIGSEGV в самый неожиданный момент. Далее. Сказать, что местная рисовака неудобна, значит, ничего не сказать. По сравнению с System.Drawing просто земля и небо. В нашем проекте в итоге на неё плюнули, я соорудил враппер, перегоняющий данные из Bitmap и Pixbuf (вообще, у них там есть свой, но его нет на макоси со всеми вытекающими).

К тому же его обработчик XError благополучно тормозит всю программу без возможности адекватно (читай: игнорирую) на это отреагировать. Помимо этого я периодически ловил SIGSEGV при отладке. Ах да, со стектрейсами творится нечто невообразимое.

Отлаживать гткшный код в Monodevelop тоже несколько сложновато. В итоге, намучившись с GTK# мы приняли решение вернуться на виндоформы.

Кстати, с ними ситуация ещё более плачевная в том плане, что стандартные контролы лучше вообще не использовать, если только вы не хотите интерфейса в стиле Windows 95. Мы сейчас пишем свой набор контролов, которые гарантировано выглядят и работают везде одинаково. При написании интерфейса со своей шкуркой это всё-равно придётся в той или иной форме делать, так что лучше выделить такой вот слой. Зато весь гуёвый код можно писать прямо в студии, что тоже какой-никакой, а всё таки плюс.

А по поводу скорости — не верьте, одинаково получается.
Ох, бида бида, спасибо за консультацию. Странно выходит — Мигель пишет в своем блоге — однозначно пишите на GTK# типа лучший вариант для линуха… И вроде banshee на нем написан и f-spot, выглядят досаточно презентативно…
Писать свой слой контролов, блин это дополнительно и время и расходы. :(
Если вы пишете только для линукса, то тогда идеальное решение, но, возможно, придётся ещё разобраться с libX11 и прочими вещами. Мы же пытаемся максимально использовать единый код на все платформы.
нет, решение как минимум для винды и линуха. ЦА нашего ПО на маках сидит крайне редко. Насчет 100% кроссплатформенности и переносимости я как то скептически отношусь. Так что была идея изначально вынести всю бизнеслогику подальше от гуев и пилить два решения UI конкретно под каждую платформу.
Насчет 100% кроссплатформенности и переносимости я как то скептически отношусь
В Java же её как-то достигли, что мешает то же самое сделать на дотнете? Среда выполнения есть, чего нам ещё надо?

Например, openvpn-клиент со встроенным интерфейсом биллинга и плюшками удалось таким сделать практически без платформозависимых хаков. Единственное, на маке пришлось рисовать достаточно объёмную скриптовую обвязку для запуска демона.
В Java же её как-то достигли, что мешает то же самое сделать на дотнете? Среда выполнения есть, чего нам ещё надо?

В том то и дело что «как-то». Приложения смотрятся ненативно, еще жава по собственным ощущениям тормозит на UI.

Плюс еще рассматриваем вариант WPF на винде, а этого добра на Моно еще не будет долго. Перспектива рисовать свои контролы как то пугает… этож какой объем работы. Вобщем надо думать над решением куда податься.

Кстати, видели www.creativedocs.net? там вообще полностью без Winforms сделано и выглядит просто шикарно но сурсов нет кроме самых базовых.
смотрятся ненативно
Ну, знаете ли. Либо отличия внешнего вида, либо переносимость.
Ну да, вы правы.
Большое спасибо за консультацию :) была бы карма, плюсанул бы, очень интересный пост.
Плюс еще рассматриваем вариант WPF на винде, а этого добра на Моно еще не будет долго.

Перспектива рисовать свои контролы как то пугает… этож какой объем работы

А я вот сейчас занимаюсь портированием одного интерфейса c WPF на HTML :)
На форме останется только webBrowser и проксик котрый будет гонять данные и вызовы между HTML/JS и логикой.

Но у меня спцифика софтины такая, что масса использовалась собственных контролов. Изначально было написано на WPF, когда он был еще бетой, в нем довольно удобно рисовать нестандартно выглядящие контролы, но сейчас бороться с WPF сил уже не осталось.
В этом плане показалось самым простым отрисовать GUI на html/css/jquery, и попробовать потом собрать под mono. Правда для этого придется заменить webBrowser(IE8) на что-нибудь хромиумное и переписать вызовы JS/c.sharp/JS

Опять же — monodevelop тоже на нем запилен…
Запилить можно хоть на чистой libX11, вопрос в удобстве и переносимости. Например, для запуска gtkшного софта на windows нужно выкачать 20 метров библиотек. Опять же соорудить бандл для мака с целью избежать установки 60 метров моно тоже проблематично. Так что мы сейчас будем писать на винформах.
Вы про производительность спрашивали. Как-то вот так. Достаточно шустро бегает, гуй отзывчив.
UFO just landed and posted this here
КДЕ, Квака теперь и С# что нас ожидает далее на N900?
Что люди только не делают, лишь бы не читать книжки по питону.
Это как-то поможет перенести тонны работающего кода на шарпе на N900? И вообще, не особо понятно, какой смысл менять платформу, если и так всё устраивает.
Завидую автору :)

Антон: Хочешь стих? — Я помню чудное мгновенье:
Передо мной явилась ты,
Как мимолетное виденье,
Как гений чистой красоты.
Лера: как красиво… ты такой милый, ради меня еще никто стихов не сочинял…
Антон: %) ну, я шокирован… знаешь, меня сегодня прет, я тебе сейчас столько стихов насочиняю )

© bash.org.ru
Возможно вопрос не по теме, но все же меня очень волнует. Можно ли что-то похожее провернуть на Nokia с Symbian на борту?
На S60 есть портированный Compact Framework, но он платный, вроде.
Sign up to leave a comment.

Articles