The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Лидер сообщества Ubuntu представил стек для форсирования развития GUI приложений

03.02.2010 12:57

Джоно Бэкон (Jono Bacon), менеджер по взаимодействию с комьюнити компании Canonical, опубликовал в своем блоге заметку в которой предложил по аналогии с web-стеком LAMP (Linux, Apache, MySQL, PHP), сформировать базовый набор для быстрой и удобной разработки GUI-приложений, который по его мнению может существенно ускорить темпы развития GUI-программ для Linux и привлечь новых разработчиков. Стек нацелен в первую очередь на создание индивидуальными разработчиками небольших полезных приложений и организации процесса распространения таких программ.

Основные компоненты предлагаемого стека:

  • Язык программирования Python;
  • Графический тулкит GTK;
  • Десктоп окружение GNOME;
  • Мультимедиа фреймворк GStreamer;
  • Среда для быстрого проектирования элементов интерфейса Glade;
  • Библиотека для хранения данных DesktopCouch, представляет собой попытку интеграции возможностей хранилища CouchDB в десктоп-приложения (например, позволит организовать синхронизацию и репликацию данных между компьютерами).

Для разработчиков Ubuntu дополнительно предлагается использовать инструмент Quickly, позволяющий автоматизировать многие рутинные операции при работе с такими системами, как Launchpad, Bazaar и PPA (Personal Package Archives). Также рассказано о новом проекте Ground Control, представляющем собой интегрированный в файловый менеджер Ubuntu GUI интерфейс для упрощения процесса создания проектов, их сборки и синхронизации с Launchpad.

  1. Главная ссылка к новости (http://www.jonobacon.org/2010/...)
  2. OpenNews: Пять вещей которых не хватает в Ubuntu
  3. OpenNews: Книга "Art of Community" опубликована в свободном доступе
  4. OpenNews: Создан союз для продвижения Open Source в Америке
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/25276-gui
Ключевые слова: gui, ubuntu, python, linux
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (53) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 13:32, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +12 +/
    c++ / qt / kde / qt-phonon / qt-designer
     
     
  • 2.2, develop7 (ok), 13:36, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Допустим. А DesktopCouch, выходит, от лукавого?
     
     
  • 3.8, Frank (??), 13:57, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В общем-то да, как и реестр.
     
  • 2.10, мбды (?), 13:58, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +11 +/
    >c++ / qt / kde / qt-phonon / qt-designer
    >дык Python/Gtk/Sqlite -- давно уж какбы негласно является
    >Linux, Apache, MySQL, PHP

    Всяк кулик свое болото хвалит.

    > может существенно ускорить темпы развития GUI-программ для Linux и привлечь новых разработчиков

    на радость толпе вечнонедовольных темпами развития GUI нубов

    Только непонятно, что конкретно они понимают под развитием?
    Лучше бы немного попридержали, да понаводили бы порядку в том, что "понаразвивали".

     
     
  • 3.11, мбды (?), 14:06, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • –9 +/
    > стек для форсирования развития GUI приложений

    Ваще вау!
    Г..., пардон, GUI, отходы умственной деятельности теперь будут накапливаливаться уже "форсажем" через желоб, пардон, через стек.

     

  • 1.4, sdfsdfsdf (?), 13:38, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    дык Python/Gtk/Sqlite -- давно уж какбы негласно является
     
     
  • 2.61, User294 (ok), 14:45, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И где оно является? В целых полутора программах? К тому же питон тормоз хуже явы даже. Гномерам так сильно хочется уделать висту и дотнетовские поделки по тормознутости?
     

  • 1.6, Нарколог (?), 13:49, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Язык программирования Python;

    Бывшие дельфятники начнут его пихать куда надо и не надо.

    > Среда для быстрого проектирования элементов интерфейса Glade;

    Может допилят наконец, а то смотреть страшно.

    > Мультимедиа фреймворк GStreamer;

    А более адекватные xine, mplayer, vlc в пролете.

     
     
  • 2.7, J3QQ4 (?), 13:52, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    vlc больше не адекватен, новость на прошлой неделе была
     
     
  • 3.45, Аноним (-), 19:34, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >vlc больше не адекватен, новость на прошлой неделе была

    и чем же он неадекватен??

     
  • 2.9, sdfsdfsdf (?), 13:57, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • –8 +/
    >> Среда для быстрого проектирования элементов интерфейса Glade;
    > Может допилят наконец, а то смотреть страшно.

    наверняка это сказал тот -- кто привык чтобы сделать GUI-интерфейст -- сначало создать требуемые файлы, а потом [чтобы хоть чтото заработало] по десять раз перекомпилировать все эти исходные коды

    # p.s.: намёк на КуТэ'шника, и соответствующий геморой поторый приходится испытывать при "дизайне" GUI .. (в отличии от Glade, который хотябы создаёт СРАЗУ РАБОТАЮЩЩИЕ XML-файлы, а не промежуточные форматы которые ещё нада преобразовывать во чтото другое)

     
     
  • 3.12, pazke (?), 14:09, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Загляните вот сюда http://doc.trolltech.com/4.3/qtuitools.html и больше так не позорьтесь.
     
  • 3.30, Михаил Кривушин (?), 17:36, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Просто загружаете .ui. И да, в python тоже отлично работает.
     
  • 2.53, аноним (?), 21:00, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Бывшие дельфятники начнут его пихать куда надо и не надо.

    вы знаете, я бывший pascal-евиц, позже delphi-ятинец, и не люблю питона. это я к тому, что не нужно обобщать. да и вообще считаю perl своим языком, из скриптовых :)

     
  • 2.63, User294 (ok), 14:57, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Бывшие дельфятники начнут его пихать куда надо и не надо.

    +100. Для Nokia n8x0 и n900 какой-то умник написал ... реализацию античного шифрования DES (!!!) на питоне (!!!) - "для портабельности" :))). Пиндец! Древний не криптостойкий алгоритм реализован на тормозном питоне. Хотя за использование DES в 2010 году надо вообще на фонарях развешивать, чтоб неповадно было.

    >> Мультимедиа фреймворк GStreamer;
    >А более адекватные xine, mplayer, vlc в пролете.

    xine имхо довольно глючный. А мплеер и vlc не фреймворки а отдельные плееры. Что несколько мешает любителям сделать "как бы новый плеер" путем расстановки пары кнопок в окне.

     

  • 1.13, Basiley (ok), 14:12, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    так вот кто это "предложил", окзаывается !!
    спустя годы, после появления !
    копирасты из Каноникал - не дремлют.
    увы и ах.
     
  • 1.17, nataraj (ok), 14:38, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Как лихо автор подчеркнул сродство GTK и PHP... Я даже раньше не задумывался на эту тему...
     
     
  • 2.18, Зилибоба (ok), 14:44, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +6 +/
    >Как лихо автор подчеркнул сродство GTK и PHP... Я даже раньше не
    >задумывался на эту тему...

    в слове "сродство", опечатка. Вопрос только где: "сХодство" или "Уродство"... =)

     
     
  • 3.20, nataraj (ok), 14:59, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    да как не читай... смысл не особо меняется...
     

  • 1.19, mike lee (?), 14:55, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    менеджер по взаимодействию с комьюнити == лидер сообщества???
     
  • 1.21, anonymous (??), 15:05, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Такими темпами пора сваливать с Питона, скоро этот язык тоже станет ругательным...

    Сначала Django is the new PHP (зайдите на #django и почитайте какие там пишут вопросы! мне страшно), теперь вот дельфистов тянут.

    Напоминает старую шутку из «The Evolution of Python Programmer»:

    #Web designer
    def factorial(x):
        #-------------------------------------------------
        #--- Code snippet from The Math Vault          ---
        #--- Calculate factorial (C) Arthur Smith 1999 ---
        #-------------------------------------------------
        result = str(1)
        i = 1 #Thanks Adam
        while i <= x:
            #result = result * i  #It's faster to use *=
            #result = str(result * result + i)
               #result = int(result *= i) #??????
            result str(int(result) * i)
            #result = int(str(result) * i)
            i = i + 1
        return result
    print factorial(6)

     
     
  • 2.26, Unixoid_потому_что_кривые_руки_писали_этот_модуль (ok), 15:41, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Каким боком связаны рост популярности языка на доли процента и "пора сваливать" ? Тогда и с Linux пора уже сваливать, слишком популярная ОС, аж 0.7% в мировом масштабе :-)

    Вы бы лучше на пару вопросов ответили в тех конференциях, о которых так скверно отзываетесь, глядишь и было бы реальное дело :-)

     
     
  • 3.31, Михаил Кривушин (?), 17:40, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Каким боком связаны рост популярности языка на доли процента и "пора сваливать"
    >? Тогда и с Linux пора уже сваливать, слишком популярная ОС,
    >аж 0.7% в мировом масштабе :-)
    >
    >Вы бы лучше на пару вопросов ответили в тех конференциях, о которых
    >так скверно отзываетесь, глядишь и было бы реальное дело :-)

    Ну нет, отвечать никакого желания - толпы идиотов, неспособных прочесть документацию, пользоваться google, задают идиотские вопросы, не постаравшись найти ответ самостоятельно, а потом воют, что все уроды, и им попу не подтерли. На хрена кому это надо?

     
  • 3.51, anonymous (??), 20:31, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы бы лучше на пару вопросов ответили в тех конференциях, о которых так скверно отзываетесь, глядишь и было бы реальное дело :-)

    Ну, пока я там был и ждал что кто-нибудь сможет ответить на мой вопрос по кишкам джанги (это было до нескольких часов, потом надоело) я отвечал. Меня к такому правила хорошего тона обязывают, как минимум.

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

     

  • 1.24, eugeni (?), 15:24, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    "А я хочу программы , где есть выбор графического окружения.
    И без демонов , привязанных к какому-либо Desktop'у. "
     
     
  • 2.47, Аноним (-), 19:41, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >"А я хочу программы , где есть выбор графического окружения.
    >И без демонов , привязанных к какому-либо Desktop'у. "

    Да. Особенно этим KDE грешит. Даже kwrite требует kdebase-runtime. А неплохие проги там есть.

     

  • 1.25, eugeni (?), 15:26, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    выбор чего?

    GTK или QT

     
     
  • 2.36, pavlinux (ok), 18:24, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >выбор чего?
    >
    >GTK или QT

    switch (where_i_am())
      case
          QT_BASED:  dload(libmprogaQT.so);
                     break;
          GTK_BASED: dload(libmprogaGTK.so);
                     break;
          WINAPI_BASED: dload(libmprogaWIN.dll);
                     break;
          default:   dload(libmprogaCUI.dll);
                     break;
    }

      

     
     
  • 3.37, anonymous (??), 18:43, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    и оно будет везде одинаково и правильно работать, ага.
     
     
  • 4.39, pavlinux (ok), 18:58, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Приспичит - будет, а пока обычные смертные Java юзают, если надо что было везде одинаково.

    Задача была в использовании различных UI, без ущерба функционала.


     
  • 4.65, User294 (ok), 15:04, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >и оно будет везде одинаково и правильно работать, ага.

    Ну если под либой имелась в виду Qt - будет, да :). Вон какойнить кутим более-менее одинаково работает и в винде и в *никсах.

     
  • 3.41, Aleksey (??), 19:10, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    По идее wxWidgets делает нечто подобное (т.е. использует родные элементы платформы). Еще кто-нибудь напишет wxQt и будет совсем хорошо.
     
     
  • 4.50, Аноним (-), 20:24, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    а также wxGTK, wxSwing и wxMFC.чтоб уж совсем хорошо.
     
     
  • 5.57, Alatar (??), 08:03, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ась? Это к чему было? Может Вам стоит посмотреть, к каким фреймворкам и каким языкам у wx есть биндинги?
     
  • 4.54, Ян Злобин (?), 02:57, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >По идее wxWidgets делает нечто подобное

    Кому-то точно мануалы лень почитать - и GTK, и QT в разных осях давно работают, включая винду, и нормально выглядят.

     
  • 3.56, Alatar (??), 07:47, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Угу... есть такая система - wxWidgets называется... Только вот QT прикрутить они так и не осилили - больно уж геморно подстраиваться под всех одновременно.
     
     
  • 4.66, User294 (ok), 15:06, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Более того - если посмотреть на реальное разлапистое приложение на ней (aMule) и его историю - можно заметить что Wx снабжен некислым набором багов.
     

  • 1.28, Дмитрий Ю. Карпов (?), 16:28, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Для начала надо сменить схему работы приложения с экраном - чтобы при операциях с окном (перетаскивание, изменение размера) перерисовку делало не приложение, а система. Для этого надо описывать содержимое окна в достаточно абстрагированном виде типа того, как CGI-скрипт описывает HTML-страницу; ведь CGI-скрипт не обрабатывает ни скроллинг, ни изменение размера страницы.
     
     
  • 2.33, Cobold (??), 18:14, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    вставляйте в окно компоненту браузера и кормите её хтмлом, будет вам счастье.
     
  • 2.38, pavlinux (ok), 18:53, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Для начала надо сменить схему работы приложения с экраном - чтобы при
    >операциях с окном (перетаскивание, изменение размера) перерисовку делало не приложение, а
    >система.

    Предлагаю написать челобитную в Intel.
    Мол, нужаемси в процессорных инструкциях:

    ST_WIN_SZ   RAX, 0x03200258 ; 800x600
    SET_WIN_POS RBX, 0x00320032  ; координата x = 50, y = 50
    SET_WIN_ANGL CX, 0x2D  ; угол - 45гр. :)

    SCRL_INC
    SCRL_DEC

     
  • 2.44, СуперАноним (?), 19:27, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Рендеринг всех визуальных элементов нужно перенести на другой конец X11 протокола. Пусть это делается на стороне X сервера, тогда GUI станет однородным.
     
  • 2.58, Дмитрий Телегин (?), 08:57, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Для начала надо сменить схему работы приложения с экраном - чтобы при операциях с окном (перетаскивание, изменение размера) перерисовку делало не приложение, а система. Для этого надо описывать содержимое окна в достаточно абстрагированном виде типа того, как CGI-скрипт описывает HTML-страницу; ведь CGI-скрипт не обрабатывает ни скроллинг, ни изменение размера страницы.

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

     
     
  • 3.70, LolzN00b (?), 17:03, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот поэтому HTML-страницы после полноценных программ, умеющих рисовать самостоятельно, смотрятся ущербно. Приложение реагирует на события и перерисоввывает себя так как нужно и тогда когда нужно - по моему нормальный подход. Зачем отнимать у программы возможность себя нарисовать?

    И действительно. Для этого и придумали Web 2.0 :-)

     

  • 1.29, Аноним (-), 16:37, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну это выглядит очень заманчиво со всех сторон. По сравнению с делфи:
    а) Python - всегда можно переписать на си
    б) GTK - кроссплатформенный
    в) GNOME - мне нравится больше чем кеды :)
    г) gstreamer - идеология просто супер (сильно напоминает микроядерные операционки), реализацию допилят в скором времени
    д) glade - ну да немного глюковатый интерфейс, зато сохраняет в нормальных xml файлах, которые не привязаны к конкретной программе (можно менять интерфейс на лету).
    е) даже не знаю что это такое, но sqlite лучше.
     
  • 1.32, DFX (?), 18:12, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    направление хорошее, но с пунктами:

    "Графический тулкит GTK;
    Десктоп окружение GNOME;
    Мультимедиа фреймворк GStreamer;
    Среда для быстрого проектирования элементов интерфейса Glade;
    Библиотека для хранения данных DesktopCouch"

    не согласен ;)

    всё таки любая хорошая софтвина с gui должна иметь консольное ядро, dbus интерфейс и отдельные\plugin'ообразные gtk/gnome, qt/kde frontend'ы

    а сие вырождение напоминает зародышевые мысли о неком подобии интеграции всего и вся в кде. там и штука с базами и мультимедиа framework уже есть.

     
     
  • 2.67, User294 (ok), 16:09, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    у гнома есть gstreamer, это тоже мультимедиа фреймворк :).А так - достали уже супермонстров клепать.
     

  • 1.35, Cobold (??), 18:22, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    вижу два варианта

    1) политический ход, чтобы нокиа заплакала и отстегнула каниникалу немножко денег за s/gtk/qt/

    2) они только что узнали про существование kdevelop и что gtk + glade с ним рядом не валялся, вот и решили "догнать и перегнать".

    Это моё мнение конечно.

     
  • 1.42, Sunder (?), 19:11, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Угу писать на Python. Он бы ещё моно предложил. Держать в памяти по копии интерпретатора на каждую программу, спасибо - не надо.

    А за менюшки для гнома на Python я бы вообще убивал - тормозят, 50% загрузки 3 ГГц процессора.

    Вообщем такие "стандарты" надо сливать в унитаз ещё при рождении.

     
     
  • 2.68, User294 (ok), 16:10, 04/02/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Угу писать на Python. Он бы ещё моно предложил.

    Питон пожестче пожалуй даже - у него вообще JIT по дефолту нет. Посему тормозит питон весьма конкретно.

     

  • 1.43, Zenitur (?), 19:27, 03/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не стоит забывать, что Бэкон предлагает подобную концепцию не для всего Linux, нет. А только для графического рабочего стола Gnome и приложений GTK. Так что первый комментарий, видимо, был оставлен тем, кто немного не понял...
    Я всячески поддерживаю подобные инициативы! Многие задачи для меня встанут, может быть, один раз в жизни, и мне хочется решить их интуитивно понятным интерфейсом, хотя бы mc-подобного мне хватит за глаза! А изучать стосраничные мануалы только ради того, чтобы, например, переписать файл с мобильника... Это черезчур. KDE всегда обладал этой возможностью - да и для всего, что нужно пользователю, отличный GUI в нём реализован! А если подобное появится в Убунту, да ещё и внедритя во весь гном - это не может не радовать!
    Другое дело, что это предлагают сделать из Canonical. Их собственные GUI для настройки Убунту обладают редкостной глючностью и падучестью (хотя бы настройка клавиатуры - попробуйте без помощи мыши отмотать вниз выпадающие списки раскладок, или включить эмуляцию мыши без паденя иксов). Я бы не стал доверять их инициативе.
     
     
  • 2.46, pavlinux (ok), 19:38, 03/02/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я бы не стал доверять их инициативе.

    Ленивые руководители Убунты пытаются образумить ленивых юзеров Убунты,
    что б те, "заставили"(попоросили) ленивых программеров Убунты, ченить сделать...

     

  • 1.69, Аноним (-), 16:55, 04/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >выбор чего?
    >
    >GTK или QT

    switch (where_i_am())
      case
          QT_BASED:  dload(libmprogaQT.so);
                     break;
          GTK_BASED: dload(libmprogaGTK.so);
                     break;
          WINAPI_BASED: dload(libmprogaWIN.dll);
                     break;
          default:   dload(libmprogaCUI.dll);
                     break;
    }

    Вы хотите сказать , что это работает везде?

     
  • 1.72, Аноним (-), 14:22, 08/02/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Добрый день! На счет Python про то что он тормоз это вы господа зря! Математические функции у него очень быстрые а то что тормозит так это господа скорее всего реализация GUI-библиотек! Смотрите в корень проблемы а не по бокам а корень в чем в кривой реализации GUI-библиотек! Сам пишу на Python-е давненько мне нравится работает быстро без GUI!  
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру