Pull to refresh

Comments 44

Ребята нашли фатальный недостаток в MonoTouch и решили его исправить?
Хм. И всё-таки, я не понимаю, как можно портировать дотнет на айдевайсы. Просто, насколько я помню, лицензия запрещает грузить на эти девайсы что-то, кроме objectiveC. Насколько я понимаю, это будет платное приложение для закрытых корпоративных сетей, или просто версию для джейбрейкнутых телефонов?
Это не важно — managed-среды на устройствах с таким объемом памяти пугают бесперспективностью.
Dalvik — это managed среда :)
Я не могу сказать, что андроид — это идеал работы мобильного устройства.
но объемы памяти точно не мешают работать managed-среде на Android. даже на 256m можно жить, не говоря уж о 512 и выше.
Я бы все-таки рекомендовал на устройствах меньше чем с гигабайтом памяти ручное управление — это положительно сказывается на быстродействии. Особенно в том случае, если устройство поддерживает многозадачность.

Другой вопрос, что отсутствие ручного управления памятью (даже на уровне cocoa/ObjC с его autorelease pool) снижает требования к квалификации программиста, что в свою очередь снижает стоимость ПО.

Однако, я не покупаю себе андроид именно поэтому — при таких низких требованиях рынок наводняется второсортными поделками и разобраться в этой тонне мусора становится невозможно.
У вас очень странные представления о влиянии автоматического управления памятью на производительность и объём потребляемой памяти. В большинстве случаев, производительность не хуже. А при грамотной реализации сборщика мусора — может быть даже лучше, за счет отсутствия фрагментации памяти и других вещей.
Потребляется памяти, за счет организации графа объектов, немного больше, на сколько конкретно — это уже зависит от программиста. В среднем — на несколько процентов.
Объём физической памяти определяет какого рода приложения в состоянии выполнять устройство. Но уж никак не ограничивает платформы. Естественно, если речь идет о килобайтах RAM, то там уже не до сборщика мусора. Хотя, даже для подобных устройств существует .NET Micro Framework, и работает довольно неплохо.
К производительности в многозадачной ОС сборщик мусора отношения не имеет. Если вы имели в виду многопоточные приложения — то производительность — опять же дело реализации. В неуправляемом менеджере памяти тоже необходима межпоточная синхронизация.
По поводу второсортный поделок — ими полны все рынки, таковы сегодняшние реалии.
Но андроид действительно тормозит и садиться за один день.
А почему вы уверены, что дело в ОС? Как правило, виноваты фоновые службы и фоновые же приложения. Нужно внимательно смотреть, что запускается на старте системы.
К тому же, комментарий на столько общий… Какие приложения тормозят, каковы характеристики устройства, какая ёмкость аккумулятора, какой набор фоновых процессов? С таким же успехом, можно заявить, что всё что угодно тормозит и садится.
Ну наверное дело в том, что фоновые службы и реализация фоновых приложений это часть ОС? А наличие managed среды вынуждает увеличивать кол-во оперативной памяти, а она жрет питание всегда. А так же JVM (Dalvik) придает больший оверхед чем нативное приложение.
Извиняюсь — задел Enter.

По поводу памяти — советую для начала хотя бы поверхностно ознакомится с организацией виртуальной памяти. RAM всегда запитывается целиком, а размер таблицы страниц на энергопотребление уж точно не влияет.
Спасибо капитан. JVM требует больше памяти. Сферическая ситуация: айфон обходился с 256 мегабайтами и все было ок, андроиду этого не хватало. Так понятнее?
Размер оперативки тоже не показатель энергопотребления. Количество чипов и частота памяти — это да.
Аккумулятор может садится быстро по многим причинам. Может часто теряется сеть, может включился WiFi и/или 3G (а они энергопотребление увеличивают сильно).
Как я уже написал — если дело в софте, то крайние тут те, кто подготавливал сборку ОС для устройства. Они плохо оптимизировали энергопотребление.
>Размер оперативки тоже не показатель энергопотребления. Количество чипов и частота памяти — это да.

Опять же кол-во памяти косвенно, но все же намекает на кол-во чипов и их энергопотребление.

Вот мой айфон 2007 года, после 2 сибирских зим держит дольше чем новенький G2 (в gsm режиме) и Thunderbolt (в не 3/4G режим). Новый айфон 4 тоже дольше держит чем современные андроид-фоны.

> А почему вы уверены, что дело в ОС? Как правило, виноваты фоновые службы и фоновые же приложения. Нужно внимательно смотреть, что запускается на старте системы.

Нет, спасибо. Я хочу купить телефон и пользоваться им, а не сидеть и настраивать его.

>К тому же, комментарий на столько общий… Какие приложения тормозят, каковы характеристики устройства, какая ёмкость аккумулятора, какой набор фоновых процессов? С таким же успехом, можно заявить, что всё что угодно тормозит и садится.

Любой андроид фон. Они или жутко тормозят или садятся за пару часов. Анекдот слышали? Андроид-фон невозможно потерять — она всегда на зарядке.
Хм, не думал, что всё так печально. Чего ж народ тогда так раскупает андроид-девайсы…
У меня меня под Windows Mobile относительно старый смартфон. С 3G и WiFi садится за день. Если принудительно врубить GSM, хватает на неделю.
С одной стороны — служба часть ОС, а с другой — нет. Службы часто устанавливаются со сторонними программами. Вы же можете написать службу, которая будет выделять всю доступную виртуальную память и крутить бесконечный пустой цикл на каждом процессоре. Если установите такую службу, тоже будете винить разработчиков ОС за плохую производительность?
Если устройство «тормозит» из коробки, то винить надо поставщиков устройства, за то, что не настроили ОС должным образом, что бы обеспечить приемлемую производительность.
Вы когда-нибудь писали программы на заказ? В смысле, действительно писать программу.

— Так, ребята, короче, концепт следующий, мы пишем программу для Дядя-и-ко, которая будет делать бла. Нам надо — управление базой данных персонала. Срок — два месяца. Заплатят бла-бла. Если не уложимся — тогда сосём байты лапы. На чём будем делать?
— На шарпах, конечно! Я к энтитифрейморку привык. Щас за денёк настрогаю бизнес-логику, пусть вэберы делают морду, а я тестировать буду.
— Решено!

— или так — - Короче, наша программа бла полягла на 300 клиентах. Её разработал Вася 10 лет назад на (Господи, прости что произношу это) Вижуал бейсике 6 с использованием ODBC и базой данных на MDF. Если за две недели не подымем новую версию — секир башка всем.
— А что эта программа бла делает?
— Ну, это что-то типа внутреннего чата. Только с полной историей.
— Я буду на шарпах писать. Я там к WCF недавно привык, напишу бизнес за пару дней, а потом привинтите морду ему.
— Не, у меня уже готова наработка бизнеса на яве. Надо только подточить баги, часа за четыре управлюсь. Осталось морду.
— А давай ты её в SOAP, а морду мы на ASP.NET присобачим.
— Давай. Решено.

Поверьте мне, не до памяти в такие моменты. И как показала практика, при таких программах до памяти дело не доходит. Зачастую, сервак редко жрёт больше гига. А вот когда количество пользователей/запросов переваливает за №, вот тогда память.
Мы говорим про мобильные устройства.
Ну так, та же хрень. Это я говорю только про разработку программ внутри компаний. Конечно, игровой рынок — это другое.

Зачастую, самым простым решением темы мобильников будет просто написать что-то на тех же шарпах на вэбе и всобачить на браузере.
Окей, как это относится к управляемым языкам на мобильной платформе?
А так, что теперь компания может написать шустрое приложеньеце для айпадов, которое будет показывать каталог их одежды в 3D. Или просто давать возможность работать с мультитачем (эти фишки привлекают клиентов). После этого, закупить оптом 50 айпадов и раздать менеджерам по продажам, а те будут красоваться перед клиентами.

Лично я бы подумал, что это бесполезные понты. НО. Не все люди так думают. Некоторые получают большие прухи с таких продаж, и покупают всё, что показывается на мультитач девайсах.

+ дополнительный имидж. Представьте себе консультанта в костюме, с апйадом, или чем-то подобным. Это намного лучше того, который ходит с чемоданчиком, в котором есть фотки товаров.
Девайсы с гигом оперативы уже не новость. Производительность смартфонов вплотную приблизилась к ПК начального уровня, к офисным железякам, и это только начало.

А потом, разве приложения Android работают не в managed среде?
Не лицензия, а Terms of Use. И не запрещает, а запрещала (во пока в бете была, в релизе этот пункт убрали). И не «как можно портировать», а уже портировали использовав Ahead of Time компиляцию, чтобы обойти ограничение на JIT. В AppStore уже есть приложения которые используют MonoTouch.
Облин. Может быть статью напишете. Нет, правда. Мне, как виндоразработчику вообще об этом нифига не известно было. А теперь — гляди-ка. Вот оно как.
Компиляцию в нативный код никто не отменял. Unity, например, поддерживает некоторое подмножество C# и нормально себя чувствует
Наверное это даже к лучшему, надеюсь Моно станет быстрее развиваться, и все от этого только выиграют.
Тоже хочется верить, но и под крылом Новелл Моно развивался очень хорошо, это и поддержка МС определенной информацией со спецификациями, это и монотач, моно под андроид(за год практически), плюс сегодня почти 100% совместимость с c# 4.0, асп.нет 4ый, включая второй mvc.

ЗЫЖ главное, чтобы деньги нашлись (
Меня больше интересует Moonlight, а он отстает очень сильно от своего большого брата )=
Меня всегда удивляло, в инвесторах современных, на какой-нибудь колор.ком, который скорее всего мертворожденное чудо — миллионы находят. А вот тут для уже состоявшегося и популярного проекта, с действующей моделью монетизации, еще неизвестно, сколько будут искать…
Ну наверно не просто так у них есть миллионы, а у нас пока нет? Монетизация-то хлипкая, microsoft'у что-то не понравится и всё, или привяжутся с какими-нибудь патентами, или выпустят сами. И где будет бизнес?
уже миллион раз говорили что не будут мешать развитию Моно, наоборот, МС активно помогает разработчикам предоставляя спецификации.
Да, ну давайте теперь и под андроид проекты не будем финансировать, а то злой Оракл засудит гугл за Далвик.

С монотачем и моно для андроида мс ничего сделать не сможет, так как спеки открыты. Есть отдельные компоненты, которые патентованы, такие как wpf(его в моно нет и не будет) или разные wf и т.п. Но не надо из МС делать дьявола, они максимально открыта к разработчикам для проприетарной ко и слово своё в целом держат.
Смысл МСу прикрывать лавочку?! При помощи Моно-ребят, можно сказать, они свои технологии продвигают на другие платформы. И в первую очередь они выращивают .NET-программистов, а уже потом программисты под iOS & Android.
Не понимаю. Я думал, что Microsoft посредством Attachmate купила Novell, чтобы контролировать платформу .net вне Windows, а тут получается, что они разгоняют их.

Зачем тогда им нужен был Novell?
Чтоб разогнать, разве не очивидно?

Ведь развитие моно для ай-девайсов даст новые удобные приложения для их конкурентов. Развитие моно для *никсов даст всякие приятные и полезные утилиты для не-виндовс.

Роспуск комманды моно фактически отличное решение проблемы, которая уже давно мозолит МС.

Эх, очень жаль. А ведь в моно есть очень полезные библиотеки — типа Cecil.
Глупости, развитие моно, дает путь к захвату альтернативных ОС, почему Столлман так яростно выступает против mono?)

Развитие Моно, никогда не мозолило МС, скорее наоборот, МС всячески этому способствует.
интересный способ способствовать — уволить основных разработчиков и распустить комманды…
Novell принадлежит не Microsoft, MS всего лишь выкупила пачку патентов принадлежащих Novell. К руководству и прочим колебаниям в компании MS отношения никакого не имеет.
Т.е. то, что практически сразу после покупки уволили сотрудников — чистое совпадение?
Можно было поступить гораздо эффективнее — закрыть все патентами, и тогда бы Mono вообще не появилась.

А открывать платформу, после чего разгонять тех, кто ее адаптирует для других ОС — это мудизм и маразм.
Нет, но Novell была куплена Attachmate Corp., а потом часть патентов была перепродана МС, патентов!. Управляет компанией Attachmate, и если их не интересует Моно, то роспуск отдела, вполне логичное продолжение смены руководства.
В опроснике про Линукс ни слова :(
Желаю им удачи. И чтобы MS патентно не затроллила.
Only those users with full accounts are able to leave comments. Log in, please.

Articles