Baser 5 25 апреля, 2020 Опубликовано 25 апреля, 2020 · Жалоба В 24.04.2020 в 12:30, jcxz сказал: +4. Написать свой аналог 43 минуты назад, mantech сказал: Пожалуй самое правильное... Я бы сказал, что самое правильное для быстрого выполнения работы - это применение качественных сторонних библиотек, а самое правильное для самообразования - это взять библиотеку с исходным кодом, разобраться в ее построении и адаптировать под свои задачи. Писать графическую библиотеку с нуля можно только для целей ее дальнейших продаж, ибо это просто гигантский объем работы. Если вы работаете на кого-то, то вам никогда не дадут столько времени, если вы работаете на себя - то за время разработки просто помрете с голоду, или жена из дома выгонит В том-же Сеггере небось команда программистов эту библиотеку уже больше десяти лет пишет... Из своего опыта: понадобилось применить монохромную графику 128х64, посмотрел, что есть: выбрал Микрочиповскую демо библиотеку. Применяю из нее основу, уровень примитивов и несколько виджетов. Переписал много чего: драйвера нижнего уровня, поддержку фонтов, часть свойств виджетов, кучу ошибок исправил. Зато понял, что есть объектное программирование при взгляде на него из уровня Си (как оно реализуется) и собственно стал понимать, где действительно есть смысл применения Си++. А так все учебники по Си++ дают синтаксис, а смысл практического применения ускользает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 25 апреля, 2020 Опубликовано 25 апреля, 2020 · Жалоба 16 минут назад, Baser сказал: Писать графическую библиотеку с нуля можно только для целей ее дальнейших продаж, ибо это просто гигантский объем работы. Если вы работаете на кого-то, то вам никогда не дадут столько времени, если вы работаете на себя - то за время разработки просто помрете с голоду, или жена из дома выгонит Для библиотеки, рисующей простой юзер-интерфейс, достаточно операций рисования прямых, прямоугольников, вывода шрифта. На написание этого достаточно несколько дней. Можно ещё и с клиппингом. Всё остальное строится на этих примитивах. Это "гигантский объём"? Да - и если на работе не дают время на качественную реализацию задачи, а также на профессиональный рост, а заставляют колхозить как попало, главное побыстрее - такую работу лучше покинуть как можно быстрее. Имха. Так как потом, когда придётся что-то добавлять в полученный результат, такого чего не было в использованной "библиотеке", а хуже того - выловить баг который внезапно стал вылезать - на это времени придётся потратить в разы больше, чем если бы сразу сделать как надо. А то же начальник, который гнал вас, сам и скажет: "Сам дурак, раз не обосновал необходимости выделения нужного времени на разработку, а теперь все баги - твои". Да и как определить "качественность" библиотеки до её использования? На ней ведь не написано сколько в ней скрытых багов. 16 минут назад, Baser сказал: Из своего опыта: понадобилось применить монохромную графику 128х64, посмотрел, что есть: выбрал Микрочиповскую демо библиотеку. Применяю из нее основу, уровень примитивов и несколько виджетов. Переписал много чего: драйвера нижнего уровня, поддержку фонтов, часть свойств виджетов, кучу ошибок исправил. Ну вот - даже Вы не смогли найти "качественную". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 60 25 апреля, 2020 Опубликовано 25 апреля, 2020 · Жалоба Неужели теперь нужно ломать софт и для микроконтроллеров? Во, времена идут... Графлиба - не такой уж и сложный продукт. Ну я имею в виду для встраиваемых систем. Мы пошли тоже путём самостоятельного написания. Правда для этих целей выделили одного программиста, и он за месяц неспешно написал как саму либу, так и эмулятор для Win, чтобы можно было запускать интерфейс на компе, и смотреть на поведение будущего прибора. Думаю, что можно и меньше месяца. Но в нашей либе нужно было рисовать графики, и очень быстро, двигать их, зуммировать пальчиками на таче. Почти, как на айпаде))))) З.Ы. Хотя, всё относительно. Может быть кому-то и сложно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 34 25 апреля, 2020 Опубликовано 25 апреля, 2020 · Жалоба 2 часа назад, Baser сказал: Писать графическую библиотеку с нуля можно только для целей ее дальнейших продаж, ибо это просто гигантский объем работы. Далеко не всегда требуется полный функционал, как правило - это однооконная система с поддержкой нескольких виджетов - кнопки, текст, чекбоксы, реже - дропдаун(выпадающий выбор), едитбокс строки, картинки, скроллы, совсем редко полноэкранный просмотр текста, или полноэкранный мультистрочный редактор, кому-то бывает надо крутить всякие колеса, аля андроидные эмуляции всяких крутилок и стрелочных приборов, ИМХО, для меня это дурь ненусветная... Все это можно реализовывать постепенно, по мере надобности. Сам так же сделал, сначала первый самый простой этап, потом добавил более сложные виджеты (редакторы, и пр.) затем потребовалась многооконность, режим окна в верхнем слое(эмуляция клавиатуры, чего в том-же емвине нет вообще), потом доработал динамические виджеты(чтоб данные перерисовывались автоматически, при изменении переменной, а не по командам redraw) и т.п. Так что все вполне можно осилить, единственное, с чем была сложность - программа дизайнера для компа - чето не очень получалось мне написать что-то путное и время жалко было, поэтому использовал сначала дизайнер емвина(гуибилдер) потом, когда стало нехватать его возможностей и надоела глючность - стал использовать конструктор форм от визуал студии, пока устраивает Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться