пока изучаю) для понимания работы с динамическими библиотеками и плагинной системой расширения собственного приложения.
Исходные данные задачи:
- GUI приложение построенное на классе QMainWindow. Включающая в себя QMDiAria и имеющее меню с одним пунктом "Выход";
- При загрузке приложения в случае обнаружения плагинов -> загружать;
- Плагин (на основе динамической библиотеки) имеющий класс QDockWidget с пользовательским интерфейсом (для примера просто надписи достаточно с кнопкой);
- Для работы с плагином должно подгружаться меню и добавляться в вызываемое приложение. Меню с пунктом "показать QDockWidget" слева метка в случае QDockWidget на экране и отсутствует метка в случае отсутствия QDockWidget на экране.
Собственно для понимания работы думаю мне этого будет достаточно.
Я уже примерно такое реализовал. При выполении приложения почти такой вид и функционал. На видео можете взглянуть. Но как написан код, то я б такому кодеру руки оторвал (((( Да еще и монолит. Может для простецкого приложения и так сойдет, но у меня мечта и цель написать серьезное приложение. Причем идея уже есть и давно. Поэтому это учебное приложение начал переписывать и заодно изучать, что к чему и как разбить приложение по функционалу для будующего расширения приложения при помощи плагинов.
Немного о себе для понимания, что я из себя представляю. Программирование для меня на данный момент - хобби. Максимум через четыре года я на пенсию (мне 36 лет). А гражданской професси нет. Программирование - это еще школьная мечта, но не поступил после школы. Сейчас работаю в пожарной охране, а ныне в МЧС. Занимаю нишу среднего начальствующего состава.
Для осуществления школьной мечты поступил в МТИ по профилю "Технологии разработки программного обеспечения". На 3 курсе. Обучаюсь по системе СДО. (поступил сюда - потому-что удобно. А знания какие я получу зависят от самого себя).
Из языков программирования в школе давали Basic (препод был слаб). Немного пробовал писать на VBA по работе и также на VisualFox Pro 9. На последнем даже написано приложение (коряво), но со своими задачами справляется. Работает с БД MySQL и помогает вести статистику по пожарам и загораниям. Все расчеты по статистике на основе собранных данных проводятся в СУБД.
Приложение на VFP 9 больше не развиваю, так как понял, что тупик в будущем.
Поэтому в свободное время несколько лет с одним товарищем изучал Си и С++. Спасибо ему огромное за его огромный труд. А теперь самообучение. Qt выбрал потому-что на мой взгляд эта библиотека мне поможет после ее изучения быстро и красиво строить приложения. Хотя кто мне помагал осваивать Си и С++ говорил обратить внимание на GTK+.
При изучении использую букварь Шлее Qt 5.3. Работаю в основном на Linux Kubuntu. Соответственно и программирую здесь же. Хотя на работе только Windows. Ну вкратце как-то так.
Какая именно помощь мне нужна?! Я если честно и сам не понимаю. При чтении книги запутался. Не могу понять как все ниточки связать. Поэтому по большей части помощь наверное практическая. Хотя может от меня различные наводящие вопросы - ответы на них и дадут возможность продвинуться вперед.
Флудить здесь в группе не хочется. Из предыдущей практики знаю, что будет каша еще больше. Так как у меня проблема объяснить доступно и выразить свои мысли логично. Поэтому буду очень признателен, если найдется такой человек в группе который поможет сдвинуться вперед. Мой часовой пояс мск+2. Удобно мне заниматься с кем-то в период с 20 мск по 22 мск. Остальное время совсем не предсказуемо.
Что-то подобное, только покрупнее у нас на работе реализовано😂
Обсуждают сегодня