Russian Qt Forum
Ноябрь 24, 2024, 09:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 ... 27 28 [29] 30 31 ... 88   Вниз
  Печать  
Автор Тема: Создаю библиотеку для работы с последовательными портами. [УШЕЛ ИЗ ПРОЕКТА].  (Прочитано 786228 раз)
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #420 : Июнь 16, 2011, 12:52 »

>>Списки чего?
http://www.prog.org.ru/index.php?topic=9537.msg124454#msg124454

>>Все это можно будет сделать внешними функциями.
В смысле в коде программы? Каждый себе обёрток на лепит и будет их повторно использовать + библиотека?

Бибилиотека должна быть полной/завершённой.
Записан

Юра.
asvil
Гость
« Ответ #421 : Июнь 16, 2011, 13:07 »

Цитировать
И нужны методы предоставляющие информацию для ГУИ (человеко-читаемые списки)

Голосую против.
Записан
b-s-a
Гость
« Ответ #422 : Июнь 16, 2011, 13:25 »

Цитировать
И нужны методы предоставляющие информацию для ГУИ (человеко-читаемые списки)
Я тоже против. Похожие классы Qt этого не делают (пример: QPrinterInfo).
Записан
b-s-a
Гость
« Ответ #423 : Июнь 16, 2011, 13:35 »

>>Все это можно будет сделать внешними функциями.
В смысле в коде программы?
В смысле "не методами". Т.е. в той же библиотеке, но внешние по отношению к классу функции.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #424 : Июнь 16, 2011, 13:38 »

b-s-a, приведи пример кода использования, можешь за основу взять мой код
Записан

Юра.
b-s-a
Гость
« Ответ #425 : Июнь 16, 2011, 14:02 »

Например:
Код
C++ (Qt)
QStringList names = namesFromPorts(SerialPort::availablePorts());
Но на названии функции я не настаиваю.
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #426 : Июнь 16, 2011, 14:15 »

Например:
Код
C++ (Qt)
QStringList names = namesFromPorts(SerialPort::availablePorts());
Но на названии функции я не настаиваю.
Не SerialPort::availablePorts(), а SerialPortInfo::availablePorts(), ИМХО, так лучше.
Мы же (я) условились убрать метод SerialPort::availablePorts().
Записан

ArchLinux x86_64 / Win10 64 bit
b-s-a
Гость
« Ответ #427 : Июнь 16, 2011, 14:20 »

Не SerialPort::availablePorts(), а SerialPortInfo::availablePorts(), ИМХО, так лучше.
Мы же (я) условились убрать метод SerialPort::availablePorts().
Точно. Я просто не глядя скопировал.  Строит глазки
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #428 : Июнь 16, 2011, 14:44 »

Для пользователей можно оставить текущую реализацию библиотеки и заниматься лишь её поддержкой.

Для новой (обсуждаемой на данный момент) реализации создать отдельную ветку. Ведь именно эту реализацию планируем включить в состав Qt. Во время разработки можно постепенно ориантировать пользователей именно на эту версию.

Иными словами, на данный момент не рубать "старую" версию, а лишь параллельно разрабатывать новую.
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
asvil
Гость
« Ответ #429 : Июнь 16, 2011, 15:12 »

А че тролли разве не только своей лаборатории доверяют? Прям так возьмут? Может сначала спросить? или я что-то пропустил...
Записан
b-s-a
Гость
« Ответ #430 : Июнь 16, 2011, 15:25 »

А че тролли разве не только своей лаборатории доверяют? Прям так возьмут? Может сначала спросить? или я что-то пропустил...
Не факт что возьмут. Их разработчик сказал, что Нокия не сильно заинтересована в последовательном порте и поддержку его осуществлять им влом.
С другой стороны, если все сделать грамотно и красиво, то шансы сильно возрастут.
А потом, есть еще проблемы с лицензированием. Библиотеку под лицензией GPL не возьмут 100%. Уверен на 99,99%, что LGPL не возьмут тоже. Я так понимаю, она должна быть под BSD-подобной лицензией или вообще Public Domain.
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #431 : Июнь 16, 2011, 15:47 »

К тому времени нокия развалится, Qt купит кто-нить другой, и шансы еще возрастают! Улыбающийся
Записан

ArchLinux x86_64 / Win10 64 bit
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #432 : Июнь 16, 2011, 16:24 »

Лицензия должна быть таже что и у участии в совершенствовании исходного кода. По сути автор должен уступить Нокии все права, т.к. Qt собственность Нокии и она кому хочет, тому и продаёт комерческую лицензию.
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #433 : Июнь 16, 2011, 16:29 »

Например:
Код
C++ (Qt)
QStringList names = namesFromPorts(SerialPort::availablePorts());
Но на названии функции я не настаиваю.
Впринципе нормально, только болтаемость функции в воздухе будет вносить в прикладной код некоторую неразбериху. Я предлагаю сделать пространство имён SerialDevice и внего совать всякие "свободные" функции.
А если ещё сделать функцию, которая вообще аргументов не прнимает, а сразу дёргает нужный статический член, то записи получатся проще:
Код
C++ (Qt)
QStringList names = SerialDevice::availablePortNames();
Записан

Юра.
b-s-a
Гость
« Ответ #434 : Июнь 16, 2011, 16:36 »

Лицензия должна быть таже что и у участии в совершенствовании исходного кода. По сути автор должен уступить Нокии все права, т.к. Qt собственность Нокии и она кому хочет, тому и продаёт комерческую лицензию.
Лицензия BSD это не запрещает.

Думаю, сейчас не стоит делить шкуру неубитого медведя  Подмигивающий

А по поводу имен портов ты посмотри класс QPrinterInfo. Там нет ничего похожего. В нашем случае, все будет еще круче - у нас будет куча вариантов именования портов (по description, по deviceName() и т.п.), и каждый программер будет выбирать наиболее подходящий именно ему. Поэтому, я бы вообще отказался бы от подобных функций. Тем более, что не сложно сделать:
Код
C++ (Qt)
foreach(const SerialPortInfo &info, SerialPortInfo::availablePorts())
  comboBox->addItem(info.name());
Записан
Страниц: 1 ... 27 28 [29] 30 31 ... 88   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.132 секунд. Запросов: 23.