LINUX.ORG.RU

Mozilla Phones for Apps

 , , ,


2

2

В попытке подстегнуть разработку программ под свою операционную систему, компания Mozilla приняла решение раздавать телефоны Geeksphone Keos бесплатно для разработчиков ПО под нее.

Акция Phones for Apps напоминает похожие акции от Nokia в прошлом, которые позволили в свое время развить экосистему MeeGo/Maemo.

Для подачи заявки достаточно описать цель проекта и какие технологии будут использованы в процессе разработки.

Форма для заявки

>>> Официальный анонс Phones for Apps

Deleted

Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 3)
Ответ на: комментарий от MiniRoboDancer

Да кого там поперетягивать, посмотрите как нынче пишут на jQuery: там гуй и логика так сплетаются воедино, что не оторвёшь, проще переписать. Наверно, это не проблема js, но и легче от того, что это не его проблема не становится же.

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

кстати мне внезапно пришла мысль, что тебе нужно просто в прототип запихнуть твою метаинформацию и все.. и будет почти как в питоне.

special-k ★★★★
()
Ответ на: комментарий от Binary

Учитывая, что на целевом сайте он таки используется - возможно. Но я лично не вижу в нём необходимости. Для методов обхода элементов, например, можно и свои короткие обёртки написать, на худой конец, чисто для уменшения веса кода. jQuery при этом лишние тормоза создаёт - незаметные, конечно, но при частых запросах...

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

можно и свои короткие обёртки написать

Я уже говорил, на js приходится и так на каждый чих писать свои мелкие обёртки, лучше уж везде тянуть jquery и использовать нормальный $.each, чем велосипедить его каждый раз, например. Я не вижу ничего плохого в jquery, если не принимать его за панацею.

jQuery при этом лишние тормоза создаёт - незаметные, конечно, но при частых запросах

Согласен, обёртка над обёрткой, но ничего не поделаешь, это js. Опять же, при проблемах, профайлер решает эти вопросы.

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

Вся проблема в том, что jQuery - это далеко не только $.each... Ну, последние версии модульные, но всё равно весь ненужный мусор не выкинешь...

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

Я даже не объёме, я о грузности архитектуры либы в целом. Там почти всё делается через одно место (в буквальном смысле), а то, что не через него, то жуткий ООП...

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

Мне вот как раз jQuery не нравился недостаточным использованием ООП.. :)) Короче, моя позиция в том, что jQuery использовать можно, лишь бы с умом. А то вечно прибьют логику гвоздями к морде, да ещё и выбирают по нескольку раз одно и то же, а потом jquery виноват остаётся.

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

jquery бесполезная либа. Во-первых, постоянно сканирует входящие параметры регулярными выражениями, во-вторых содержит много лишней логики для простых задач, в частности для «декларативного» биндинга, в-третьих мне вообще не нравится идея сканирования дом дерева, но сейчас только так работают везде, не только в jquery. Т.о. присутствует несколько мест существенного неоправданного снижения производительности без какой-либо пользы. Как бы я ни ценил вклад Ехуды в руби проекты, jquery это бред.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

Уменьшение к-ва кода и велосипедов в оном. А также возможность использования готовых виджетов и плагинов, что, опять же, негативным образом сказывается на велосипедной промышленности.

Binary ★★★★★
()
Ответ на: комментарий от special-k

Слушай, мне ещё в тот раз надоело писать тебе одно и то же, так давай я хоть в этой теме не буду повторяться?

Binary ★★★★★
()
Ответ на: комментарий от special-k

Я никем не назывался. Ну например, реализация контекстных меню, куча всяких лайтбоксов, которые, впрочем, есть и на других фреймворках, но тем не менее, куча разных виджетов, типа chosen и иже с ними. Вот ещё есть jquery.transit, который представляет для CSS3 transitions интерфейс, совместимый с jquery.animate, чем делает возможным программировать транзишны, независимо от браузера. И это, прошу заметить, проблема совсем не только с IE. К тому же, таким образом можно делать фоллбек обратно на анимацию jquery.

А вы как делаете анимацию?

Ну и, всё-таки, обработку событий jquery кое-как упрощает, есть плагины для всяких свайп ивентов. Всё это можно и без jquery, конечно, но смысл велосипедить?

Binary ★★★★★
()
Ответ на: комментарий от special-k

Вот, кстати, случай из недавнего: событие onscroll прекрасно обрабатывалось в хроме, но фейлило в фаерфоксе, а $(this).scroll() работало нормально и там, и тут.

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

куча всяких лайтбоксов

position: fixed;
width: 100%;
height: 100%;

chosen

Технически календарь-таки сложнее) Если я пишу крупную систему, то смешно привязываться к jquery из-за такой мелочи.

А вы как делаете анимацию?

Да как-то никак касаемо UI.. вообще transition для этого. Но все должно непременно выпригивать?)

jquery.transit jquery.animate

Жесточайшее смешение логики и отображения.

$(this).scroll() работало нормально и там, и тут.

зато ты не разобрался почему у тебя не работало onscroll.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k
position: fixed;
width: 100%;
height: 100%;

Это даже не смешно.

Технически календарь-таки сложнее) Если я пишу крупную систему, то смешно привязываться к jquery из-за такой мелочи.

Есть примеры крупных систем, написанных тобой без jQuery? Контрпримеров то за глаза... И вообще:

Если я пишу крупную систему, то смешно привязываться к %anything% из-за такой мелочи.

Поправил. Не благодари.

К тому же, а за сколько ты напишешь chosen без jQuery? Ну вот так, навскидку оцени? За ТЗ возьмём этот: http://harvesthq.github.io/chosen/

Жесточайшее смешение логики и отображения.

Это веб, детка :) К тому же, разделять логику и отображение мешает тебе что? Или если js, то это сразу логика?

зато ты не разобрался почему у тебя не работало onscroll

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

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

Есть примеры крупных систем, написанных тобой без jQuery?

Зачем тебе?) Ну пройди по последней ссылке в профиле.. как вариант.

Поправил. Не благодари.

Правильно поправил)) суть именно такая.

Или если js, то это сразу логика?

Конечно)) С м.т.з. даже DOM это уже логика.

Ой спасибо, сейчас буду для каждого браузера выяснять.

Возможности jquery это одно, возможности конкретного браузера, это совсем-совсем другое.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

Возможности jquery это одно, возможности конкретного браузера, это совсем-совсем другое.

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

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

Зачем тебе?) Ну пройди по последней ссылке в профиле.. как вариант

Мнэээ. Пример нерелевантный, там почти всё на канвасе, тут бы и я jQuery отложил в сторону, знаешь ли.

Правильно поправил)) суть именно такая

Так что же ты ещё не в машинных кодах строчишь?

Конечно)) С м.т.з. даже DOM это уже логика

Наверно, стоит на сей забавной ноте и остановиться :))

Возможности jquery это одно, возможности конкретного браузера, это совсем-совсем другое

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

Я вообще не понял, что это значит? Но то, что ты любишь велоспорт, это, видимо, как оно есть.

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

там почти всё на канвасе

лол, там ровно 2 элемента на канвасе: поле и миникарта. И штук 50 (крупных) виждетов интерактивно реагирующих на информацию с сервера.

Кстати, оценишь chosen?

Ну неделя-две, наверно, только нафига мне эти ui..

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

только нафига мне эти ui

ах вот оно как, не надо вам ui. ну так а что тогда мы тут спорим?

ты вот подумай, скажу я заказчику, что буду две недели делать chosen, вместо того, чтобы прикрутить готовый за полчаса, знаешь, какая будет его реакция?

Binary ★★★★★
()
Ответ на: комментарий от special-k

интерактивно реагирующих

      if (this.is_multiple) {
        this.container.html('<ul class="chzn-choices"><li class="search-field"><input type="text" value="' + this.default_text + '" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chzn-drop"><ul class="chzn-results"></ul></div>');
      } else {
        this.container.html('<a href="javascript:void(0)" class="chzn-single chzn-default" tabindex="-1"><span>' + this.default_text + '</span><div><b></b></div></a><div class="chzn-drop"><div class="chzn-search"><input type="text" autocomplete="off" /></div><ul class="chzn-results"></ul></div>');
      }

И вот такая методика работы с dom тут врял ли подойдет.

special-k ★★★★
()
Ответ на: комментарий от Binary

какая будет его реакция?

А ты скажи ему правду.. скажи, что нахрен не нужна ему вся эта хрень, весь этот интернет, что все эти долбанные формы ему нахрен не сдались, что это пустая трата времени и денег. И посмотри на его реакцию.

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

А на хлеб с маслом мне вышлешь? Я тогда прям щас напишу...

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

что им надо было сделать? Использовать шаблонизатор?

Им не знаю, мне нет.

А какой сейчас для js в моде? :)

о, вот тут Как ныне принято писать на js? хорошо все обсудили.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 2)
Ответ на: комментарий от special-k

Им не знаю, мне нет

Ну расскажи, твой код обфусцирован, не могу приобщиться к прекрасному.

Тред курить влом, там, наверно, будет масса разных мнений, к тому же, зачем мне разные, ты мне своё давай. А то меня тоже давно мучает вопрос, как же сделать Ъ представление в js.

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

Там используется DSL, обсервер, а так же несколько абстракций типа виджет, контроллер... Суть DSL в динамической генерации элементов в конечном счете с помощью createElement, т.о. не нужно сканирование дерева, плюс становятся доступными такие вещи как удаление/возвращение элемента в дом, в общем куда более обширные возможности, чем если ты работаешь с элементами как с текстом. Вплоть до того, что ты можешь обновить содержимое текстового узла..

Основную либу я планирую в скором времени открыть, как только исправлю в ней пару мест и приведу юнит тесты в более интерпрайзный вид.

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

Соответственно DSL имеет куда более приличный вид чем вышеупомянутый кусок кода. Позволяет одновременно навешивать события, и т.д.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

Интересно.

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

А так что мешает?

т.о. не нужно сканирование дерева

Я не очень понял, где тут связь. Ты имеешь ввиду, что контроллер хранит в себе созданный ранее элемент и потом может его использовать, не ища снова? Ну так и с jQuery так можно.

плюс становятся доступными такие вещи как удаление/возвращение элемента в дом

А это почему с jQuery нельзя?

В общем, жду либу в опенсорс.

Binary ★★★★★
()
Ответ на: комментарий от special-k

Ну про приличность судить рано, а вот с практической т.з. jQuery всё ещё у руля, с ним будет быстрее, т.к. твою DSL ещё никто в глаза не видел и виджетов к ней не понаписал.

На самом деле, меня тоже бесит HTML конкатенацией, но, честно, абсолютно было всё равно, что там внутри chosen'а, главное, что API нормальное и работает хорошо. В случае каких-то неразрешимых проблем, можно будет и переписать. Но пока смысла нет.

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

А так что мешает?

Ну нет в jquery, на сколько мне известно, методов для работы с текстовыми узлами.. и не принято.. html() - вот что используется, вон, «this.container.html(». А ты не будешь делать то, что не естественно.

А это почему с jQuery нельзя?

jquery оперирует всем через селекцию, обращение к элементу напрямую по сути хак.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от Binary

Но пока смысла нет.

Все зависит от задач, в определенный момент jquery начинает трещать в более-менее сложных проектах, таких как веб-карты например, нужны более универсальные парадигмы.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

Ну нет в jquery, на сколько мне известно, методов для работы с текстовыми узлами

омномном, а чем тебе text() не угодил?

jquery оперирует всем через селекцию, обращение к элементу напрямую по сути хак.

var el = $('span');
el.addClass('class');
el.text('hey, jquery is worth to know!');

не?

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

не?

Не. Совсем не производительный вариант. У каждого вызова свой оверхед, потому все используют html(). Да и не будешь ты так делать, на чуть сложном фрагменте.

text()

Ну и что общего с textNode..

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

У каждого вызова свой оверхед, потому все используют html()

Ты переходишь на что-то совсем уж несвязное.

Ну и что общего с textNode

Оно, блин, ставит textNode у эл-та, что тебе надо то конкретно можешь объяснить или будешь юлить?

Похоже, с jQuery у тебя происходит нечто подобное, что происходит с Python.

Binary ★★★★★
()
Ответ на: комментарий от special-k

Кстати, мне вот что иногда не нравится в jQuery: к дополнение ко всем свистопляскам с типами в js, там есть такая беда, что если селектор не выбрал ничего, а ты делаешь на эл-те какой-то метод, то он тихо не отработает, никак не ругнувшись. Почему так сделано всем ясно, но частенько это добавляет головняка при отладке. :)

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

Оно, блин, ставит textNode у эл-та

нееет))) оно делает следующее

text: function( value ) {
return jQuery.access( this, function( value ) {
return value === undefined ?
jQuery.text( this ) :
this.empty().append( ( this[ 0 ] && this[ 0 ].ownerDocument || document ).createTextNode( value ) );
}, null, value, arguments.length );
}

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

Это и есть «поставить textNode у узла». Ещё раз повторяю вопрос: а тебе чего от неё хочется? А то так и будем, как слепой с глухонемым.

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

Ты переходишь на что-то совсем уж несвязное.

Во-первых не производительно, во-вторых так не работают. В простых случаях используют innerHTML (ибо проще и быстрее), в сложных используют шаблонизаторы. И тот и другой вариант по сути непредусмотрен для jquery, потому как оно существует для сканирования страницы. Так что нахрена завязываться на jquery в том же chosen, мне не понятно. Наверняка существуют подобные вещи не привязанные ни к одному из тулкитов, ибо они просты. Там и анимации нет. В общем, не знаешь ты зачем нужно jquery.

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

Во-первых не производительно

Где ты видишь проблему производительности?

во-вторых так не работают

кто?

В простых случаях используют innerHTML (ибо проще и быстрее)

И вешают кучу уязвимостей, ага, слыхали. А чем оно быстрее? А почему проще?

в сложных используют шаблонизаторы

Согласен, но это иррелевантно теме.

И тот и другой вариант по сути непредусмотрен для jquery, потому как оно существует для сканирования страницы

Это тебе голоса в голове сказали? Или объясни, откуда такой вывод?

Так что нахрена завязываться на jquery в том же chosen, мне не понятно. Наверняка существуют подобные вещи не привязанные ни к одному из тулкитов, ибо они просты

Пример, пожалуйста, я с радостью избавлюсь от chosen'а, мне конкатенация, повторюсь, самому не нравится.

Там и анимации нет

Там она и не нужна.

В общем, не знаешь ты зачем нужно jquery.

Пока такое впечатление производишь тут ты. Может, всё же, объяснишь, что ты хотел от TextNode?

Binary ★★★★★
()
Ответ на: комментарий от special-k

например, в произвольный момент времени изменить nodeValue узла.

И что тебе не нравится в .text()? Его можно вызывать только на пасху, но не в пост?

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

А чем оно быстрее?

временем выполнения.

А почему проще?

одно действие создает всю структуру.

иррелевантно теме.

шаблонизаторы работают по тому же принципу, по сути '<a htef=' + v + '...' это и есть простой шаблон.

Пример, пожалуйста

вот уж сам ищи эту ерунду.

special-k ★★★★
()
Ответ на: комментарий от Binary

ты не можешь понять, что text() вызывается у обертки вокруг _елемента_, а nodeValue у конкретного текстового объекта абсолютно отвязано от элемента.

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

временем выполнения.

Ты уже начал откровенную чушь говорить. ПОЧЕМУ оно быстрее? С чего ты это придумал?

одно действие создает всю структуру

Нооорм. Создали всю структуру лихо, повесив дырок, малаццы!!! Так победим.

шаблонизаторы работают по тому же принципу, по сути '<a htef=' + v + '...' это и есть простой шаблон

У тебя упрощённое понимание. Но причём тут это?

вот уж сам ищи эту ерунду

Ну т.е. chosen остаётся в тренде :)

Binary ★★★★★
()
Ответ на: комментарий от special-k

ты не можешь понять, что text() вызывается у обертки вокруг _елемента_

А, так тебя коробит то, что textNode создаётся заново, вместо того, чтобы использовать тот textNode, который там уже есть? Спешу тебя утешить, это или также, или даже быстрее, чем проверять, есть ли там внутри textNode, доставать его из чайлдов...

а nodeValue у конкретного текстового объекта абсолютно отвязано от элемента.

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

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

А, так тебя коробит то, что textNode создаётся заново

это сложная функция, она много что делает.

чем проверять, есть ли там внутри textNode, доставать его из чайлдов...

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

но как это ускоряет наш многострадальный код?

ну вот как-то ускоряет и упрощает доступ, долго объяснять)

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

это сложная функция, она много что делает

Конкретнее?

верно, поэтому он просто есть, или его просто нет, это же сразу понятно, а с jquery ты сканишь, проверяешь, сканишь и тд

И как это тебе сразу понятно, без подсматривания в чайлды?

И что ты там сканируешь постоянно? Объясни, а?

вобщем, будешь писать что-нибудь сложное и интерактивное - поймешь)

Муахаха, ну куда уж мне, ей Богу! Ой, ну что Вы! :)

ну вот как-то ускоряет и упрощает доступ, долго объяснять)

Пока ускорением тут не пахло, а уж упрощением доступа — вдвойне.

Binary ★★★★★
()
Ответ на: комментарий от special-k

дополнительных действий

Всё createTextNode покоя не даёт, да? А сколько нужно создать таких нод, чтобы почувствовать ускорение, когда их не создаёшь, а меняешь nodeValue у существующего?

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

Пока ускорением тут не пахло, а уж упрощением доступа — вдвойне.

Ты же вообще не понимаешь о чем речь лол)

Всё createTextNode покоя не даёт, да?

Я тебе показал исходный код этой функции, она только создает ноду по-твоему чтоли.. ты вообще внутрь jquery смотрел хоть.. и др. либ.. Это все нормально для сканирования страницы после ее загрузки и простых скриптов, но не предназначено для предложенного тобой использования, там это все выглядит нелепо.

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

Ты же вообще не понимаешь о чем речь лол)

Куда мне.

Я тебе показал исходный код этой функции, она только создает ноду по-твоему чтоли..

Давай разбираться: что она делает ещё?

Binary ★★★★★
()
Ответ на: комментарий от special-k

Ты меня троллишь что ли? Какие именно вещи происходят в $().text()? Безо всяких иносказаний, прикрывающих то, что тебе нечего сказать.

Binary ★★★★★
()
Ответ на: комментарий от special-k

Всякие грязные вещи

Ну т.е. ты не в курсе, так бы сразу и сказал.

А твой тест делает не то, о чём мы говорили, продолжай насиловать журналистов дальше.

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

мы говорили

Мы ни о чем не говорили, ты просто цепляешься за слова, как будто в этом есть смысл. А 90% оверхед - вот он пожалуйста. Ты не можешь понять откуда он берется - пичаль. Учи матчасть, что здесь еще скажешь.

special-k ★★★★
()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от special-k

Мы ни о чем не говорили

Да у вас провалы в памяти.

Ты не можешь понять откуда он берется - пичаль

Расскажи, о гуру. А то ты только по отмазкам пока спец.

Учи матчасть, что здесь еще скажешь.

По теме сказать тебе давно нечего, я понял.

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