Перейти к содержанию
    

 

В 24.04.2020 в 12:30, jcxz сказал:

+4. Написать свой аналог

43 минуты назад, mantech сказал:

Пожалуй самое правильное...

Я бы сказал, что самое правильное для быстрого выполнения работы - это применение качественных сторонних библиотек,
а самое правильное для самообразования - это взять библиотеку с исходным кодом, разобраться в ее построении и адаптировать под свои задачи.
Писать графическую библиотеку с нуля можно только для целей ее дальнейших продаж, ибо это просто гигантский объем работы. Если вы работаете на кого-то, то вам никогда не дадут столько времени, если вы работаете на себя - то за время разработки просто помрете с голоду, или жена из дома выгонит :biggrin:
В том-же Сеггере небось команда программистов эту библиотеку уже больше десяти лет пишет...

Из своего опыта: понадобилось применить монохромную графику 128х64, посмотрел, что есть: выбрал Микрочиповскую демо библиотеку. Применяю из нее основу, уровень примитивов и несколько виджетов. Переписал много чего: драйвера нижнего уровня, поддержку фонтов, часть свойств виджетов, кучу ошибок исправил. Зато понял, что есть объектное программирование при взгляде на него из уровня Си (как оно реализуется) и собственно стал понимать, где действительно есть смысл применения Си++. А так все учебники по Си++ дают синтаксис, а смысл практического применения ускользает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

16 минут назад, Baser сказал:

Писать графическую библиотеку с нуля можно только для целей ее дальнейших продаж, ибо это просто гигантский объем работы. Если вы работаете на кого-то, то вам никогда не дадут столько времени, если вы работаете на себя - то за время разработки просто помрете с голоду, или жена из дома выгонит :biggrin:

Для библиотеки, рисующей простой юзер-интерфейс, достаточно операций рисования прямых, прямоугольников, вывода шрифта. На написание этого достаточно несколько дней. Можно ещё и с клиппингом. Всё остальное строится на этих примитивах. Это "гигантский объём"?  :umnik2:

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

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

Да и как определить "качественность" библиотеки до её использования? На ней ведь не написано сколько в ней скрытых багов.

 

16 минут назад, Baser сказал:

Из своего опыта: понадобилось применить монохромную графику 128х64, посмотрел, что есть: выбрал Микрочиповскую демо библиотеку. Применяю из нее основу, уровень примитивов и несколько виджетов. Переписал много чего: драйвера нижнего уровня, поддержку фонтов, часть свойств виджетов, кучу ошибок исправил.

Ну вот - даже Вы не смогли найти "качественную". :wink:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Неужели теперь нужно ломать софт и для микроконтроллеров? Во, времена идут... Графлиба - не такой уж и сложный продукт. Ну я имею в виду для встраиваемых систем. Мы пошли тоже путём самостоятельного написания. Правда для этих целей выделили одного программиста, и он за месяц неспешно написал как саму либу, так и эмулятор для Win, чтобы можно было запускать интерфейс на компе, и смотреть на поведение будущего прибора. Думаю, что можно и меньше месяца. Но в нашей либе нужно было рисовать графики, и очень быстро, двигать их, зуммировать пальчиками на таче. Почти, как на айпаде)))))

 

З.Ы. Хотя, всё относительно. Может быть кому-то и сложно...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, Baser сказал:

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

Далеко не всегда требуется полный функционал, как правило - это однооконная система с поддержкой нескольких виджетов - кнопки, текст, чекбоксы, реже - дропдаун(выпадающий выбор), едитбокс строки, картинки, скроллы, совсем редко полноэкранный просмотр текста, или полноэкранный мультистрочный редактор, кому-то бывает надо крутить всякие колеса, аля андроидные эмуляции всяких крутилок и стрелочных приборов, ИМХО, для меня это дурь ненусветная:biggrin:...  Все это можно реализовывать постепенно, по мере надобности. Сам так же сделал, сначала первый самый простой этап, потом добавил более сложные виджеты (редакторы, и пр.) затем потребовалась многооконность, режим окна в верхнем слое(эмуляция клавиатуры, чего в том-же емвине нет вообще), потом доработал динамические виджеты(чтоб данные перерисовывались автоматически, при изменении переменной, а не по командам redraw) и т.п. Так что все вполне можно осилить, единственное, с чем была сложность - программа дизайнера для компа - чето не очень получалось мне написать что-то путное и время жалко было, поэтому использовал сначала дизайнер емвина(гуибилдер) потом, когда стало нехватать его возможностей и надоела глючность - стал использовать конструктор форм от визуал студии, пока устраивает :dirol:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...