LINUX.ORG.RU

Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

 ,


0

0

Qt – кросс-платформенный инструментарий разработчика прикладного программного обеспечения, широко используемый для создания графических интерфейсов. Он написан на C++ и предоставляет мощные расширения этого языка. Также доступны интерфейсы для других языков программирования, таких как Python (PyQt), Ruby (Korundum/QtRuby) и Perl (PerlQt). В первой статье цикла, посвященного программированию с использованием библиотек Qt, речь пойдет об объектной модели и основных инструментах разработчика. Материал рассчитан на программистов, знакомых с C++ и желающих изучить Qt 4 с самого начала. Он будет полезен в основном разработчикам прикладного ПО. Кроме того, компания Nokia активно продвигает Qt на рынок мобильных устройств, поэтому специалистам по встраиваемым системам также стоит присмотреться к возможностям этого инструментария (об использовании Qt на мобильных платформах речь пойдет в самом конце цикла). Мы будем использовать GNU/Linux, хотя выбор платформы мало влияет на ход разработки.

>>> Подробности

★★★

Проверено: maxcom ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Хорошая библиотека, но реализация слотов/сигналов, специально интересовался, смех курам. Старый знакомый всем метод:

foreach if !strcmp() break;

:-D Обосцака. В 4.5 не смотрел правда.

alx_me ★★☆ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Бегло просмотрел. В принципе не такой уж и плохой обзор.

eduard_pustobaev ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Ахтунг, они начали писать про Qt! А ведь когда то были неплохие статьи про GTK...

yoghurt ★★★★★ ()

Умный че?

Хорошая библиотека, но реализация слотов/сигналов, специально интересовался, смех курам. Старый знакомый всем метод: foreach if !strcmp() break;

На <100 слотов это заведомо быстрее, чем любая хэш-таблица.

ce_tamotko_za_uzori ()
Ответ на: Умный че? от ce_tamotko_za_uzori

Re: Умный че?

А троичное дерево?

А где выбор?

Но мне более интересно другое. Они адаптированы к C++ 14882 >= 2009? Или ждут пока петух клюнет?

alx_me ★★☆ ()
Ответ на: Умный че? от ce_tamotko_za_uzori

Re: Умный че?

> Умный че?

Да забыл, у вас что проблемы с армией, или мисьё прапорсчик?

alx_me ★★☆ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> и Perl (PerlQt)

Судя по официальному сайту, он уже давно мёртв. Увы.

anatolat ()
Ответ на: Re: Умный че? от alx_me

Re: Умный че?

Умный - делай бенчмарки пиши пропозал. У них в Qt есть и скип-листы, и хэш-таблицы, было б быстрее - заюзали б.

ce_tamotko_za_uzori ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Нельзя, вы, я думаю, угадаете почему. :-)

И будете правы если подумаете что я везде троичные деревья пхаю. Ибо более трёх call-ов на один поиск для меня раздражитель.

Типа такого использую:
  static const char* _InsertString( const char *__str,STreeNode** __node,const BASETYPE& __val,const char __delim='\0' )
  {
   unsigned char ch=CaseConvert(*__str);
   STreeNode* parent=*__node;

   for(;;)
   {
    if(!*__node) *__node = new STreeNode(parent,ch);
    else
    {
     if(ch != (*__node)->SplitValue())
     {
      parent=*__node;
      __node=&(*__node)->NextNEQ(ch);
      continue;
     }
    }

    ch=*++__str;
    if(!ch || ch==__delim)
    {
     (*__node)->SetValue(__val);
     break;
    }
    ch=CaseConvert(ch);
    parent=*__node;
    __node=&(*__node)->NextEQ();
   } /* for(;;) */

   return __str;
  } /* _InsertString */

alx_me ★★☆ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Если не поняли почему, поясняю Я не использую концепцию сигнал/слот. Раздражает. Усложняет связи в потоке многоуровневых событий. Если хотите не осилил. ;-)

alx_me ★★☆ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Теперь Qt стал официально рекомендованный тулкитом от межделмаша. Круто.

name_no ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> PerlQt

так оно же не живое совсем.

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

arsi ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Неплохая статейка, посмотрел. Жду вторую часть.

Irben ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

А просто купить Бланшета уже не модно?

unikoid ★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Понравилась статья. Буду иметь ввиду, если за Qt придётся сесть.

Но и вправду странно, что такие появляются на сайте межделмаша, а не нокии.

Stalin ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

О как!

Цитата из статьи:

>Существуют версии Qt для unix-подобных операционных систем с X Window System (например, X.Org (EN), Mac OS X и ОС Windows)

Я все проспал и винды перешли на иксы?

vega ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Ну реализации иксов для них есть, есть даже posix подсистема, так что с натяжечкой... =)

GAMer ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> Ну реализации иксов для них есть, есть даже posix подсистема, так что с натяжечкой... =)

кто-то сказал MS Windows OS X, или мне послышалось? о_О

arsi ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Хмм, кстати во смеху будет, если МС дотащит в SFU что надо из опёнка и таки решит пройти сертификацию на соответствие SUS =)

GAMer ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> и таки решит пройти сертификацию на соответствие SUS

и станет более Ъ^HUNIX, чем линукс/бздя? в этот день я стану первым котом-трезвенником, пройду кастрацию и уйду в синагогу…

arsi ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

>но реализация слотов/сигналов, специально интересовался, смех курам.

сделай лучше.

golodranez ★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Мне кажется это первая статья (даже цикл) МЕЖДЕЛМАШ, которую я прочитаю.

yurikoles ★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> и станет более Ъ^HUNIX, чем линукс/бздя? в этот день я стану первым котом-трезвенником, пройду кастрацию и уйду в синагогу…

Не зарекайся ;)

hobbit ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Маладцы! Чем больше народу попробует Qt - там больше будет плеваться на тему "Какое же всё-таки дерьмо собачье, эти ваши дотеты!!111" Более простой, логичный и самодостаточный тулкит для разработки практически любого ПРИКЛАДНОГО софта - сложно себе представить.

Klizmoid ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

О как вовремя, недавно заинтересовался этим тулкитом.

unisky ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Спасибо тебе железный человек за интересную статью.

ПС. IBM_dW откуда у тебя 3 комментария

О__о

Levinskij ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> Более простой, логичный и самодостаточный тулкит для разработки практически любого ПРИКЛАДНОГО софта - сложно себе представить.

Маркетолог - хорошая профессия! Не надо ее стесняться... У вас есть кто-нибудь, чтоб объяснил ?почему? и практически?

valich ★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Посмотри на как выглядит снаружи и изнутри qtdemo, почитай несколько глав Бланшетт и Саммерфилда, попробуй накатать свой helloworld, заглядывая в assistent, если что-то не до конца ясно... Ну а затем можно взглянуть хотя бы на GTK - смятение и ужас - вот гарантированные впечатления =)

GAMer ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Сравнивал Qt со свингом, мне свинговые листенеры больше понравились.
А так Qt очень даже неплох.

WatchCat ★★★★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

>
> Теперь Qt стал официально рекомендованный тулкитом от межделмаша. Круто.

>

С чего вы взяли? Просто нашелся автор который написал цикл статей о QT (в нем, кстати, планируется несколько статей). Будут желающие писать про Gtk -- опубликуем по Gtk. Это я Вам как редактор проекта заявляю )

sabbakka ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> Это я Вам как редактор проекта заявляю

Уважаемый редактор, исправьте опечатки в статье, пожалуйста...

> Слоты могут объявляться в разделе pulic slots

и ещё видел штуки три пока, читал - потерял.

name_no ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Спасибо за бдительность ) Передам корректору. А как вообще впечатления от материалов? Мы только начинаем работать с российскими авторами и реакция читателей очень интересна.

sabbakka ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Мне понравилось. Обязательно пишите анонсы следующих статей цикла сюда, на ЛОР.

name_no ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

Так на ЛОР вроде есть информер с новыми темами, на главной странице висит )

sabbakka ★★ ()

Re: Программирование с Qt : Часть 1. Введение. Инструменты разработчика и объектная модель

> Так на ЛОР вроде есть информер с новыми темами, на главной странице висит )

большая часть тем меня не интересует, поэтому на моей главной странице лора этот информер отсутствует ;-)

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

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